Я пытаюсь понять, как работает tracert. При прослушивании пакетов с помощью Wireshark я заметил, что иногда tracert решает не разрешать имя хоста.
Вот некоторые примеры:
tracert http://www.google.com ----> 0 пакетов
tracert guuugle -----------------------> 0 пакетов
tracert w.guugle ----------------------> DNS-запрос

Я имею в виду, почему в первых двух примерах я не вижу пакетов? Как он может знать, что эти хосты не существуют? (DNS сбрасываются)

1 ответ1

0

Система не разрешит http://www.google.com , поскольку он знает , что это не является допустимым именем хоста. Это URL, и он имеет имя хоста в нем, но это не само по себе имя хоста. ОС знает об этом, потому что ни : ни / не допускаются в именах хостов (поэтому URL-адреса используют их в качестве разделителей!).

Во втором примере имя не содержит точек, поэтому многие системы рассматривают его как локальное имя и пробуют другие (не DNS) методы его разрешения в первую очередь. Хотя это не строгое правило - некоторые другие системы также пытаются разрешать однокомпонентные имена через DNS (хотя в конце они часто добавляют "локальный домен").

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