Как проверить, работает ли удаленный порт с использованием dnstools.com (например, сквозь файрволл/прокси)

cpo(){ [[ $# -lt 2 ]] && echo 'need IP and port' && return 2; [[ `wget -q "http://dnstools.com/?count=3&checkp=on&portNum=$2&target=$1&submit=Go\!" -O - |grep -ic "Connected successfully to port $2"` -gt 0 ]] && return 0 || return 1; }


Функция «cpo» используется для проверки доступности удаленного порта с использованием веб-сервиса dnstools.com. Для работы функции необходимо передать два аргумента: IP-адрес и номер порта.

Функция проверяет наличие переданных аргументов и выводит сообщение «need ip and port», если один или оба аргумента отсутствуют. Если оба аргумента присутствуют, функция выполняет следующее действие:

1. Отправляет GET-запрос на следующую URL-адресу с заданными параметрами: «http://dnstools.com/?count=3&checkp=on&portnum=$2&target=$1&submit=go\!»
2. Перенаправляет вывод команды wget в стандартный поток ошибок с использованием опции «-o -«.
3. Использует команду grep для поиска фразы «connected successfully to port $2» в выводе команды wget.
4. Считает количество совпадений (в данном случае, количество успешных подключений к порту $2).
5. Если количество успешных подключений больше нуля, функция возвращает 0 (успех), иначе возвращает 1 (неудача).

Данная команда полезна для проверки доступности удаленного порта через фаерволл или прокси сервер с использованием веб-сервиса dnstools.com. Таким образом, можно определить, работает ли соединение на заданном порту и проблема ли в доступности порта. Альтернативным способом может быть использование других веб-сервисов или инструментов, предназначенных для проверки доступности портов.

Ответить

Ваш адрес email не будет опубликован. Обязательные поля помечены *