Любые идеи, почему tracert (traceroute) на внешний хост вернется со следующим:
tracert 10.34.25.23
1 myborderouter.example3.com (10.52.2.41) 1.113 ms 1.103 ms 1.100 ms
2 ae0--931.maincorerouter.example2.com (10.102.65.44) 4.028 ms 4.046 ms 4.042 ms
3 gi0-1.mainrouter.example2.com (10.72.12.85) 6.653 ms 6.661 ms 6.645 ms
4 * * *
5 somebox.example.com (10.34.25.23) 7.361 ms 7.339 ms 8.723 ms
6 somebox.example.com (10.34.25.23) 11.047 ms 10.882 ms 10.802 ms
7 somebox.example.com (10.34.25.23) 8.318 ms 7.076 ms 7.016 ms
Когда * * * должно быть: 10.34.25.23 (Никаких других устройств между 10.72.12.85 и 10.34.25.23)
ping 10.34.25.23
PING 10.34.25.23 (10.34.25.23) 56(84) bytes of data.
64 bytes from 10.34.25.23: icmp_seq=1 ttl=122 time=8.21 ms
64 bytes from 10.34.25.23: icmp_seq=2 ttl=122 time=8.28 ms
64 bytes from 10.34.25.23: icmp_seq=3 ttl=122 time=7.73 ms
64 bytes from 10.34.25.23: icmp_seq=4 ttl=122 time=7.21 ms
**** Все адреса изменены, чтобы не отражать настоящие адреса. **
Потому что четвертый хост не полностью обрабатывает ICMP (вероятно, из-за соображений безопасности и / или неправильной конфигурации).
Traceroute основан на ответах «ICMP Time Exceeded», которые возвращаются, когда пакет ICMP превышает максимальное значение TTL, поэтому промежуточный маршрутизатор отбрасывает его; но маршрутизатор можно настроить так, чтобы он не уведомлял отправителя об истекшем ICMP-пакете, даже если он отвечает на эхо-запрос (который использует разные типы пакетов ICMP).
Больше информации здесь: http://en.wikipedia.org/wiki/Traceroute
Все ли мы понимаем, что ping и tracert принципиально одно и то же. Пинг - это запрос ICMP Echo с максимальным значением TTL для машины (если он каким-либо образом не переопределен).
Tracert использует тот же запрос ICMP, изменяя TTL {1,2,3,4, ... max}.
Если бы не тот факт, что пинг работал, я бы согласился, что была петля маршрутизации. Если бы была петля маршрутизации, эхо-запрос должен был завершиться неудачно.
@The OP - Ping 10.102.65.44, чтобы мы могли увидеть ваш TTL по умолчанию.