Как использовать ICMP для проверки доступности сайта?

765
psaw.mora

Если я хочу знать наверняка, что веб-сайт действительно заблокирован властями или сам сайт имитирует его, какой метод я могу использовать ..? Я имею в виду, что когда мы используем tracerего, просто используем ICMP ... Но возможно ли, что сайт заблокирован даже после успешного отслеживания? (например, блокировка портов TCP)

0
Блокировка DNS просто помешает вам разрешить IP-адрес сервера из его доменного имени. (Обновление: кажется, что комментарий, на который я ссылался, был удален, да ладно ...) Polynomial 12 лет назад 0

3 ответа на вопрос

2
Polynomial

Вы не можете использовать ICMP в одиночку, чтобы узнать, работает ли служба. Это просто еще один протокол, который машина принимает и имеет соответствующие демоны. Пинг покажет вам, что машина работает и принимает запросы ICMP ECHO, но не может сказать вам, что служба прослушивает порт TCP. Поскольку некоторые серверы не отвечают на запросы ICMP или не имеют брандмауэров, которые блокируют эти запросы, ICMP не всегда будет надежным.

Чтобы проверить, работает ли определенная служба, просто попытайтесь установить TCP-соединение с этой службой.

Чтобы проверить, заблокирован ли ваш маршрут к хосту, используйте VPN и попытайтесь получить доступ к сайту из другой страны. Вы также можете использовать тест вниз / вверх, например http://downforeveryoneorjustme.com/, чтобы проверить, работает ли демон HTTP и доступен ли он откуда-либо еще.

0
Ray

Самый быстрый способ узнать, работает ли сервер сайта, - это проверить связь с веб-адресом, если он возвращает IP-адрес, но время ожидания всех эхо-ответов истекло, что является хорошим показателем того, что сервер работает. Этот трюк работает во всех операционных системах.

Пример (из системы Unix / Linux):

user$:ping amazon.ca PING amazon.ca (72.21.206.110): 56 data bytes Request timeout for icmp_seq 0 Request timeout for icmp_seq 1 

Другой вариант, если вы запускаете систему Linux, это использовать инструмент под названием zenmap, который построен на основе nmap. Это сканер портов, поэтому если он сообщает, что порт 80 активен, то вы знаете, что веб-сервер работает. Использование сканера портов не является незаконным, просто будьте осторожны, поскольку некоторые интернет-провайдеры имеют в своем соглашении об обслуживании, что их клиенты не могут использовать такие инструменты, как сканеры портов.

0
Maxim Egorushkin

Вы можете использовать hping, который определяет, работает ли служба TCP, отправив запрос TCP SYN и ожидая ответа SYN / ACK. Он работает более надежно, чем пинг ICMP, потому что, по их словам, хост может блокировать ответы ICMP.