Здравствуйте, intweb, Вы писали:
I>Ребята подскажите кто знает Пожалуйста:
I>Почему "роутеры" в данном случае 8-14 не отсылают ответ ICMP type 11 ???
I>и так бывает часто и на других хостах
I>
I>Трассировка маршрута к ya.ru [213.180.204.8]
I>с максимальным числом прыжков 30:
I> 1 96 ms 92 ms 92 ms as3-FE0-0-VL99-Kemerovo.kuzbass.n
I> 2 88 ms 91 ms 91 ms gt-URM-FE1-0-VL99-Kemerovo.kuzbas
I> 3 87 ms 88 ms 88 ms gt-MTS-FE-0-0-VL99-Kemerovo.kuzba
I> 4 90 ms 87 ms 87 ms kemerovo-car0-ge0-1-2.rt-comm.ru
I> 5 144 ms 190 ms 142 ms msk-dsr0-ge1-0-0-0.rt-comm.ru [21
I> 6 146 ms 144 ms 140 ms Yandex.Moscow.rt-comm.ru [213.24.
I> 7 145 ms 145 ms 151 ms c3-vlan3.yandex.net [213.180.192.
I> 8 * * * Превышен интервал ожидания для за
I> 9 * * * Превышен интервал ожидания для за
I> 10 * * * Превышен интервал ожидания для за
I> 11 * * * Превышен интервал ожидания для за
I> 12 * * * Превышен интервал ожидания для за
I> 13 * * * Превышен интервал ожидания для за
I> 14 * * * Превышен интервал ожидания для за
I> 15 148 ms 145 ms 144 ms ya.ru [213.180.204.8]
Во-первых, проверим Ваши исходные данные.
dg@homesun:~$ traceroute -I ya.ru
traceroute to ya.ru (213.180.204.8), 30 hops max, 40 byte packets
1 ppp15-1.pppoe.mtu-net.ru (81.195.15.1) 14.381 ms 15.276 ms 13.928 ms
2 195.34.53.53 (195.34.53.53) 15.688 ms 15.194 ms 31.423 ms
3 195.34.53.53 (195.34.53.53) 14.373 ms 14.271 ms 36.120 ms
4 M9-cr01-A197-cr01.core.mtu.ru (195.34.53.10) 15.590 ms 14.780 ms 15.933 ms
5 ix2-m9.yandex.net (193.232.244.93) 18.796 ms 19.156 ms 16.544 ms
6 c3-vlan3.yandex.net (213.180.192.171) 20.014 ms 16.824 ms 17.911 ms
7 * * *
8 * * *
9 * * *
10 * * *
11 * * *
12 ya.ru (213.180.204.8) 17.764 ms ! 17.646 ms ! 20.290 ms !
Ваш результат воспроизвелся. Но есть одно существенное отличие — у Вас "потерянных" роутеров 7, а у меня всего 5. Интересное кино. Вечер перестает быть томным!
В чем же может быть дело? Не могут же яндексовские админы перетусовывать роутеры в своей сети по нескольку раз в день — они милые ребята, но им не настолько нефиг делать
Попробуем попингать этот странный ya.ru. Но попингать не просто так, а с помощью моей любимой утилиты hping.
dg@homesun:~$ sudo hping2 -1 --ttl 12 ya.ru
HPING ya.ru (sppp0 213.180.204.8): icmp mode set, 28 headers + 0 data bytes
len=46 ip=213.180.204.8 ttl=1 DF id=25078 icmp_seq=0 rtt=17.8 ms
len=46 ip=213.180.204.8 ttl=1 DF id=25079 icmp_seq=1 rtt=16.5 ms
len=46 ip=213.180.204.8 ttl=1 DF id=25080 icmp_seq=2 rtt=16.4 ms
^C
--- ya.ru hping statistic ---
3 packets tramitted, 3 packets received, 0% packet loss
round-trip min/avg/max = 16.4/16.9/17.8 ms
Все здорово? Все здорово, но только одно настораживает. У возвращающихся ответов ttl — единица. Это значит, что отвечающий хост подгадал ttl ровно настолько, чтобы пакеты дошли до нас. Вот шайтан!
Поэкспериментируем еще.
dg@homesun:~$ sudo hping2 -1 --ttl 13 ya.ru
HPING ya.ru (sppp0 213.180.204.8): icmp mode set, 28 headers + 0 data bytes
len=46 ip=213.180.204.8 ttl=2 DF id=25082 icmp_seq=0 rtt=18.8 ms
len=46 ip=213.180.204.8 ttl=2 DF id=25083 icmp_seq=1 rtt=19.5 ms
^C
--- ya.ru hping statistic ---
2 packets tramitted, 2 packets received, 0% packet loss
round-trip min/avg/max = 18.8/19.2/19.5 ms
dg@homesun:~$ sudo hping2 -1 --ttl 14 ya.ru
HPING ya.ru (sppp0 213.180.204.8): icmp mode set, 28 headers + 0 data bytes
len=46 ip=213.180.204.8 ttl=3 DF id=25084 icmp_seq=0 rtt=18.2 ms
len=46 ip=213.180.204.8 ttl=3 DF id=25085 icmp_seq=1 rtt=20.0 ms
^C
--- ya.ru hping statistic ---
2 packets tramitted, 2 packets received, 0% packet loss
round-trip min/avg/max = 18.2/19.1/20.0 ms
dg@homesun:~$ sudo hping2 -1 --ttl 15 ya.ru
HPING ya.ru (sppp0 213.180.204.8): icmp mode set, 28 headers + 0 data bytes
len=46 ip=213.180.204.8 ttl=4 DF id=25086 icmp_seq=0 rtt=19.1 ms
len=46 ip=213.180.204.8 ttl=4 DF id=25087 icmp_seq=1 rtt=18.3 ms
^C
--- ya.ru hping statistic ---
2 packets tramitted, 2 packets received, 0% packet loss
round-trip min/avg/max = 18.3/18.7/19.1 ms
И что мы видим? Мы видим, что отвечающий хост ставит у ответов разный ttl в зависимости от того, какой ttl ставим мы. Весьма необычное зрелище! Так мало кто себя ведет.
Поскольку отвечающий хост не знает сколько хопов до нас, он вынужден ориентироваться на ttl принимамого пакета и устанавливать ttl ответа в зависимости от него. Как нетрудно подсчитать, он отсылает ответ ровно с тем ttl, с каким получил запрос.
Действительно. Между мной и ya.ru всего 6 реальных хопов, т.е. когда я посылаю пакет с ttl=7, отвечающий видит мой пакет с ttl=1 и посылает ответ с ttl=1, который до меня, естественно, не доходит — ведь до меня 6 реальных хопов. Я посылаю пакет с ttl=8, отвечающий видит его с ttl=2, посылает ответ с ttl=2 и ответ снова до меня не доходит. И так далее, пока, наконец, дело не дойдет до ttl=12. Тогда отвечающий увидит запрос с ttl=6, ответит с ttl=6 и этого хватит, чтобы ответ до меня доехал.
Это все объясняет — странное свойство отвечающего хоста заимствовать ttl для ответа из ttl запроса визуально удлинняет трассу в два раза. Именно поэтому у меня и Вам число фантомных роутеров не совпадает.
Остается вопрос, что же это за система, которая ведет себя столь необычным образом? Не знаю. Думаю, что это какой-нибудь хитрый load balancer.