![Одинаковое количество переходов для разных пунктов назначения в traceroute](https://rvso.com/image/1540095/%D0%9E%D0%B4%D0%B8%D0%BD%D0%B0%D0%BA%D0%BE%D0%B2%D0%BE%D0%B5%20%D0%BA%D0%BE%D0%BB%D0%B8%D1%87%D0%B5%D1%81%D1%82%D0%B2%D0%BE%20%D0%BF%D0%B5%D1%80%D0%B5%D1%85%D0%BE%D0%B4%D0%BE%D0%B2%20%D0%B4%D0%BB%D1%8F%20%D1%80%D0%B0%D0%B7%D0%BD%D1%8B%D1%85%20%D0%BF%D1%83%D0%BD%D0%BA%D1%82%D0%BE%D0%B2%20%D0%BD%D0%B0%D0%B7%D0%BD%D0%B0%D1%87%D0%B5%D0%BD%D0%B8%D1%8F%20%D0%B2%20traceroute.png)
Когда я использую traceroute
(на самом деле tracert
команду для Windows) для разных адресов назначения, я всегда получаю одинаковое количество переходов.
Например: Для superuser.com
я получаю:
Tracing route to superuser.com [151.101.1.69]
over a maximum of 30 hops:
1 6 ms 1 ms 1 ms 192.168.0.1
2 2 ms 3 ms 3 ms 10.201.0.1
3 4 ms 2 ms 2 ms angeldropsltd.com [103.242.217.37]
4 8 ms 4 ms 4 ms 151.101.1.69
Trace complete.
Для microsoft.com
я получаю:
Tracing route to microsoft.com [23.100.122.175]
over a maximum of 30 hops:
1 3 ms 3 ms 1 ms 192.168.0.1
2 5 ms 2 ms 2 ms 10.201.0.1
3 4 ms 2 ms 2 ms angeldropsltd.com [103.242.217.37]
4 7 ms 4 ms 4 ms 23.100.122.175
Trace complete.
То же самое касается и всех других сайтов, которые я пробовал до сих пор.
Я хочу знать возможные причины, по которым это происходит. У меня есть некоторые краткие знания о том, как это traceroute
работает. Разные пункты назначения должны иметь разное количество переходов. Мой провайдер (AngelDrops) могут не иметь всех целевых серверовнапрямуюподключено. Я думаю, мой провайдер что-то тут делает. Так в чем же причины этого?
решение1
Я постараюсь объяснить это как можно подробнее. Но я не знаю, почему ваш провайдер это делает.
Во-первых, важно понять, как работает Traceroute. Traceroute работает, устанавливая значение TTL (Time To Live) в отправляемых IP-пакетах. Каждый переход, который делает ваш пакет по пути, уменьшает TTL на 1. Когда TTL достигает 0, если ваш пакет не достиг предполагаемого пункта назначения, то обратно отправляется сообщение ICMP Unreachable, содержащее IP-адрес последнего достигнутого маршрутизатора.
Итак, когда вы вводите tracert
команду, Windows отправляет серию пакетов ICMP с увеличивающимися значениями TTL. Первый пакет отправляется с TTL 1, следующий пакет с TTL 2 и т. д. Таким образом, каждый маршрутизатор на пути к месту назначения может быть обнаружен — если он отвечает ICMP unreachable. Если он просто отбрасывает пакет, вы получаете ответ * * * от tracert и никакой информации.
Итак, похоже, что здесь происходит то, что ваш интернет-провайдер (AngelDrops) не соблюдает настройку TTL. Вместо этого, похоже, они удаляют или фильтруют эту информацию из пакета, когда он достигает их. Из-за этого, как только пакет достигает AngelDrops, они пересылают его по назначению с гораздо более высоким значением TTL "по умолчанию". Это заставляет пакет проходить весь путь до своего назначения, и окончательный ответ, который вы видите, идет от назначения.
TTL в IP-пакете на самом деле предназначен для предотвращения возникновения сетевых петель, когда пакет продолжает бесконечно скакать внутри сети по кругу.
Надеюсь, это имеет смысл. Теперь, почему ваш провайдер так делает? Я не совсем уверен, но, возможно, они считают, что вмешательство в TTL представляет потенциальную угрозу безопасности их сети, и поэтому фильтруют ее. Соблюдение ваших данных TTL на самом деле не является необходимым для правильной работы сети.
Так как я ничего не знаю об этомAngelDrops, возможно, у этого провайдера есть что-то нестандартное, может быть, это беспроводной интернет, или VPN-сервис, или что-то в этом роде. Есть ряд возможных технических моментов, из-за которых у них все становится странным.
Судя по тому, что я вижу в вашем traceroute, похоже, что вы находитесь на каком-то общем интернет-сервисе. Вы не получаете настоящий публичный IP, так что вы, вероятно, находитесь за какой-то сетью NAT, где вы делите один и тот же публичный IP с несколькими пользователями. Это бы все объяснило.