Вопрос

Это кажется почти волшебным.Что делает команда traceroute, чтобы отобразить весь путь к какому-либо другому узлу в Интернете?

Это было полезно?

Решение

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

Traceroute отправляет сообщения с превышением времени ICMP, (RFC 792), возвращается отправителю, когда это произойдет.При использовании небольших значений TTL срок действия пакетов быстро истекает, поэтому traceroute заставляет все маршрутизаторы вдоль пути следования пакета генерировать ICMP-сообщения, идентифицирующие маршрутизатор.

Например, TTL = 1 должен выдавать сообщение от первого маршрутизатора, TTL = 2 генерирует сообщение от второго маршрутизатора в пути и так далее...

Другие советы

traceroute устанавливает для поля TTL (Время работы) значение 1 и увеличивает его для каждого перехода.маршрутизаторы, получающие сообщение, уменьшают это значение, и когда оно достигает 0, они отвечают сообщением о том, что TTL достиг нуля.С помощью этого ответа клиент узнает, кто находится посередине.делайте это итеративно до тех пор, пока ваш пункт назначения и вы не получите маршрут (по крайней мере, один из них)

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top