В настоящее время я учусь в колледже на степень бакалавра в области сетевой инженерии, и один из моих профессоров объяснил в классе, что трассировка, показывающая, например, 15 прыжков, фактически абстрагирует путь, и в действительности задействовано еще много узлов. Это правда?
Это противоречит всему, что я могу найти на traceroute. Насколько мне известно, traceroute работает, отправляя пакеты ICMP (или UDP) определенному месту назначения с TTL от 0 -> n до тех пор, пока оно не будет достигнуто. Тестовые пакеты, которые отправляются по тайм-ауту в каждом месте по пути подряд, производят ICMP-ответ «превышено время» и, наконец, сообщение «Порт недоступен» при достижении пункта назначения.
Я понимаю недостатки трассировки - например, трафик трассировки может быть заблокирован определенными шлюзами, или TTL ответного пакета может быть установлен на оставшийся TTL зонда, в результате чего он никогда не возвращается отправителю.
Тем не менее, после долгих исследований я не могу найти что-либо, ссылающееся на traceroute, являющееся неточным в случае traceroute, который всегда возвращает один и тот же путь. Точно так же, ничто не указывает на наличие каких-либо «лишних» прыжков, о которых не сообщало traceroute (кроме * * * прыжков, для которых истекло время без ответа).
Я открыт для обсуждения, и мне искренне интересно узнать ответ на этот вопрос.
источник
Ответы:
Трассировка маршрута покажет вам, сколько переходов layer3 вы достигаете от A до B.
Однако вы могли бы пройти через сотни переключателей между ними. Вы также можете проходить через 10 ISP-маршрутизаторов, использующих vpn уровня 2, который отображается как один прыжок. Сеть MPLS может скрывать свои внутренние данные или показывать вам свои внутренние. Вы также можете иметь прозрачные брандмауэры на пути.
В любом случае, ваш Профессор прав, говоря, что вы не можете гарантировать, что каждое устройство на пути будет для вас считаться прыжком. Из-за вышеупомянутых моментов, которые я упомянул, вы можете пройти через 50 устройств, но для вас это может выглядеть как три.
Это не происходит все время, хотя. Если вы видите 15 прыжков, это может быть 15 прыжков.
Это базовый пример MPLS, настроенного в отношении TTL: http://www.juniper.net/techpubs/en_US/junos13.2/topics/reference/configuration-statement/no-propagate-ttl-edit-protocols -mpls.html
источник
Любое устройство, которое не уменьшает значение поля IP TTL, не будет отображаться в пути traceroute. Например, межсетевой экран Cisco ASA может быть настроен для уменьшения поля IP TTL для пакетов, проходящих через межсетевой экран ( установите значение параметраmentment-ttl ). По умолчанию TTL не уменьшается, таким образом скрывая (ну, в некоторой степени) межсетевой экран.
источник
Traceroute не будет показывать вам устройства, которые не уменьшают поля TTL дейтаграммы IP.
Он также не будет отображать устройства, которые уменьшают поле TTL, и потребляет пакет, если TTL достигает нуля, но игнорирует уведомление отправителя об этом событии через дейтаграмму ICMP. Это не совсем невидимо, хотя; вы можете сделать вывод о наличии этого пропущенного прыжка в traceroute, поскольку при использовании следующего более высокого значения TTL следующее устройство в цепочке отвечает, и мы знаем, что что-то между этим и предыдущим устройством уменьшает TTL, но не объявляет себя , Традиционная
traceroute
утилита печатает звездочки, когда не получает ответа; для этого типа хоста будет напечатан ряд звездочек.Также существует удаленная возможность того, что некоторые маршрутизаторы между ними выборочно подавляют эти сообщения ICMP в зависимости от их адреса источника, что делает некоторые части пути невидимыми, даже если они генерируют ответ.
источник