3

Как гласит заголовок. Я пытался ping несколько серверов, в чьем существовании я не уверен. Всего 10 серверов. У двух из них истек timed out то время как остальные восемь не could not find host . 2 тайм-аута показывают IP-адрес, который тоже истекает при пинге. Я быстро просмотрел nslookup на этих серверах, и у них не было записей DNS. В чем разница между "не удалось найти хост" и «тайм-аут» при сбое проверки связи?

3 ответа3

7

Проверка связи с компьютером очень похожа на отправку письма. Допустим, я хочу отправить пинг на google.com . Первое, что мне нужно сделать, это выяснить, где находится google.com . Для почты вы бы использовали телефонную книгу - это переведет имя в адрес, понятный почтовой системе. Компьютеры используют так называемые серверы DNS (Domain Name System) - то же самое, что nslookup отображает при запросе определенного имени. Если ping не может найти данное имя в DNS, он возвращает Could not find host .

Хорошо, у нас есть IP-адрес, что теперь? Теперь мы должны направить его. IP-адрес очень похож на название улицы - он дает вам конкретное место, но не говорит вам, где находится эта улица (ну, вы могли бы хранить эту информацию в огромной таблице, но это было бы ОГРОМНО, а также в основном бесполезный. Зачем отслеживать координаты каждой дороги в каждой стране, когда вы отправляете почту только своей бабушке?). Существует дополнительная информация, чтобы решить эту проблему - почтовый индекс. Вы можете не знать, где находится улица, но вы знаете, что почтовая система в этом почтовом индексе будет работать, и, поскольку почтовые индексы несколько упорядочены (терпите меня), вы знаете, как получить этот почтовый индекс. В компьютерах это называется MAC-адресом. Компьютер всегда знает, к каким MAC-адресам он подключен напрямую и какие IP-адреса они знают, как маршрутизировать. Когда компьютеру или маршрутизатору необходимо отправить пакет, он определяет, какой MAC-адрес отвечает за обработку этого IP-адреса, а затем отправляет пакет в эту систему. Если нет системы, отвечающей за этот IP, он возвращает No route to destination . (Представьте себе, что вы пытаетесь отправить почту на ЛУНУ. Почтальон просто смешно смотрит на вас и отдает обратно.)

Теперь, если почта доходит до цели, они все равно должны отправить ответ. Обычно это быстро и просто, и вы можете просто измерить время между отправкой сообщения и получением ответа. Но иногда ответ теряется по почте. А может, бабушка спит и забыла проверить свою почту. В любом случае, вы не получите ответ, даже после ожидания целой недели! В конце концов ты просто сдаешься. Для компьютеров это время Request timed out.


Что касается вашего вопроса для компьютеров без записей DNS, большинство маршрутизаторов используют себя в качестве кэша DNS и добавляют поддельные записи DNS для компьютеров, которые запрашивают у них аренду DHCP, если компьютер отправляет имя хоста при запросе аренды DHCP. Вот почему иногда возможно пинговать имя хоста компьютера. Системы Windows также отслеживают имена NetBIOS (обычно это имена компьютеров Windows, которые подключены к одной подсети и у которых включено совместное использование) и будут пытаться преобразовать их в IP-адреса по запросу. Я не могу вспомнить, работает ли это с ping , но он не работает для nslookup , поскольку nslookup специально предназначен для проверки записей DNS, а не записей NetBIOS.

1

Ну, это имеет мало общего с моделью OSI и со схемой сети.

Ping Timed Out обычно означает, что что-то блокирует пинг от прохождения.

«Устройство не найдено» буквально означает, что Ping смог найти устройство и не смог его найти.

Пинг работает на первом уровне. Если сетевая карта включена и проверена, она будет найдена. Это все, что вы можете сделать, это проверяет, что устройство находится там физически. Если устройство не найдено, нет сетевой карты, где оно ищет.

Если время ожидания истекло, возможно, что-то вроде брандмауэра блокирует его. Пинг не удалось завершить, поэтому возможно, что что-то есть, но Пинг не может сказать.

1

Timed out означает, что IP-адрес другого компьютера известен, обычно он был найден через DNS, но вы не получили никаких ответов на отправленные вами запросы ping. Обычно это происходит из-за того, что другой компьютер настроен не отвечать на эхо-запросы или потому, что у него есть брандмауэр, который блокирует сообщения эхо-запросов ICMP.

Could not find host означает, что IP-адрес другого компьютера не может быть найден через DNS, поэтому не было возможности даже попытаться отправить эхо-запросы.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .