Мне нужен инструмент, который работал бы так же, как ping
, но он показывает мне ответ на данный порт.
Я знаю о telnet
и nmap
, но они дают мне только один результат, а не постоянный цикл, с помощью которого я мог видеть изменения во времени.
есть что-нибудь подобное?
Утилита netcat сделает именно то, что вы ищете:
$ nc -lk 1234
Опция -l
запустит прослушивание netcat через порт. Опция -k
заставляет его продолжать прослушивать новые соединения.
Netcat должен быть установлен в вашей системе по умолчанию; это часть Ubuntu-минимальной. Если нет, вы можете установить его с помощью apt-get install netcat-openbsd
.
Я думаю, вы могли бы сделать это с netcat (команда: nc
)
Вы можете сделать, как в следующем примере (который можно найти в netcat manpage!):
$ echo "QUIT" | nc <yourhost> 22
SSH-2.0-OpenSSH_6.0p1 Debian-3ubuntu1
Protocol mismatch.
$ # prompt returned here
Вы можете указать время ожидания соединения / простоя с флагом -w
. (см. справочную страницу).
Этот пример соединяется с данным портом (здесь 22 / SSH), считываете с него и затем отправляете строку «QUIT». Обратите внимание, что строка «QUIT» является произвольной в зависимости от ожидаемого протокола: в приведенном выше примере это может быть любая строка - сервер SSH прервет соединение.