Назад | Перейти на главную страницу

Почему не работает traceroute

У меня есть вопросы о том, почему traceroute в некоторых условиях не работает. Хотя я понимаю, как это работает, я не могу понять некоторые вопросы. Подобно,

$traceroute www.google.com
 1  * * *
 2  * * *
......

Есть '*'. Когда я использую ICMP вместо UDP, я получил следующее:

$traceroute www.google.com -I
 1  * * *
 2  * * *
 3  222.42.254.130 (222.42.254.130)  7.980 ms  10.785 ms  4.920 ms
 4  222.42.254.129 (222.42.254.129)  4.363 ms  8.141 ms  5.849 ms
 5  bogon (10.2.1.1)  7.957 ms  7.787 ms  8.321 ms
 6  61.237.121.97 (61.237.121.97)  25.341 ms  24.895 ms  28.725 ms
 7  61.237.123.66 (61.237.123.66)  23.738 ms  24.172 ms  23.916 ms
 8  221.4.120.173 (221.4.120.173)  23.096 ms  24.539 ms  20.827 ms
 9  221.4.6.61 (221.4.6.61)  58.516 ms  60.035 ms  63.200 ms
10  120.80.0.73 (120.80.0.73)  60.991 ms  59.520 ms  59.853 ms
11  219.158.19.69 (219.158.19.69)  59.771 ms  59.192 ms  59.072 ms
12  219.158.22.249 (219.158.22.249)  89.185 ms  87.928 ms  89.582 ms
13  219.158.22.158 (219.158.22.158)  102.195 ms  103.409 ms  106.153 ms
14  219.158.35.114 (219.158.35.114)  218.816 ms  224.845 ms  218.470 ms
15  203.208.62.15 (203.208.62.15)  212.560 ms  208.640 ms *
16  chrome.google.com (203.208.46.1)  210.655 ms *  216.369 ms

Интересно, почему до сих пор неизвестны первый и второй прыжок. Я пытался установить скорость icmp с помощью -z 500, но это бесполезно. Итак, мои вопросы ниже:

  1. Почему я получил несколько прыжков при использовании ICMP?
  2. Как получить первые два хмеля?

Я искал это, но ничего бесполезного не нашел. Я подключаюсь к Интернету по маршруту без брандмауэра. Спасибо за помощь.

Первый переход - это ваш выход в Интернет, вы можете увидеть это с помощью netstat -rn.

Второй переход - это шлюз у вашего провайдера, если у вас есть что-то вроде Fritzbox, вы можете увидеть там ip-адрес.

Поскольку Traceroute основан на эхо-запросах ICMP, кажется, что первые два маршрута на вашем пути (возможно, ваши собственные межсетевые экраны) настроены на отбрасывание / блокирование эхо-запросов ICMP. Вот почему Traceroute не может увидеть фактический ответ от первых двух, но правильный ответ за его пределами.

Чтобы завершить обнаружение следующего перехода, вы можете использовать другой инструмент: hping. Как объяснялось в предыдущем ответе Франка, вероятно, существует брандмауэр или маршрутизатор, которые отбрасывают тип сообщения ICMP.

Например, вы можете использовать эту команду для первого следующего перехода:

hping www.google.com -p 86 -S -t 1

А также этот, чтобы увидеть второй:

hping www.google.com -p 86 -S -t 2