Вероятная причина разницы заключается в том, что по умолчанию Window tracert
использует ICMP, тогда как Linux по traceroute
умолчанию использует UDP. Использование -I
опции для traceroute должно привести к тем же результатам, что и tracert
:
traceroute -w 10 -I google.it
Из traceroute
документации:
В современной сетевой среде традиционные методы traceroute не всегда могут быть применимы из-за широкого использования брандмауэров. Такие брандмауэры фильтруют «маловероятные» порты UDP или даже эхо-сигналы ICMP. Для решения этой проблемы реализованы некоторые дополнительные методы трассировки (включая tcp), см. СПИСОК ДОСТУПНЫХ МЕТОДОВ ниже. Такие методы пытаются использовать определенный протокол и порт источника / назначения, чтобы обойти брандмауэры (которые будут рассматриваться брандмауэрами как начало разрешенного типа сетевого сеанса).
СПИСОК ДОСТУПНЫХ МЕТОДОВ
В общем, конкретный метод traceroute может быть выбран по имени -M, но большинство методов имеют свои простые переключатели cmdline (их можно увидеть после имени метода, если оно есть).
дефолт
Традиционный, древний метод трассировки. Используется по умолчанию.
Зондовые пакеты - это дейтаграммы udp с так называемыми «маловероятными» портами назначения. «Невероятный» порт первого зонда - 33434, затем для каждого следующего зонда он увеличивается на единицу. Поскольку предполагается, что порты не используются, хост назначения обычно возвращает «icmp unreach port» в качестве окончательного ответа. (Никто не знает, что происходит, когда какое-то приложение прослушивает такие порты).