Что означает «истек срок действия при передаче» при попытке пинга?

55

Когда мы пытаемся пропинговать сервер в другом сегменте сети, мы получаем сообщение «TTL истек в пути». Когда мы запускаем tracert, 4 IP-адреса повторяются бесконечно:

14    60 ms    59 ms    60 ms  xxx.xxx.xxx.2
15    83 ms    81 ms    82 ms  xxx.xxx.xxx.128
16    75 ms    80 ms    81 ms  xxx.xxx.xxx.249
17    81 ms    78 ms    80 ms  xxx.xxx.xxx.250
18    82 ms    80 ms    77 ms  xxx.xxx.xxx.2
19   102 ms   101 ms   100 ms  xxx.xxx.xxx.128
20   101 ms   100 ms    98 ms  xxx.xxx.xxx.249
21    97 ms    98 ms    99 ms  xxx.xxx.xxx.250
...

Каковы основные шаги для устранения этой ошибки?

Leonardo
источник

Ответы:

32

Как указано во всех ответах выше, в маршрутизации есть цикл, который приводит к истечению TTL.

Проверьте маршрут на устройствах, IP-адреса которых повторяются. В Linux вы можете использовать

route -n 

как пользователь root, чтобы увидеть текущую таблицу маршрутизации. На окнах вы можете перейти к CMD и использовать команду

route print

чтобы увидеть текущую таблицу маршрутизации. На управляемых коммутаторах Cisco вы можете использовать команду

show ip route

Используя вышеуказанные команды на всех четырех повторяющихся IP-адресах, вы должны увидеть, какая таблица маршрутизации неверна. Одно из четырех задействованных устройств / хостов в идеале должно направлять трафик к пункту назначения, на который вы отправляете эхо-запросы, с использованием другого шлюза.

Саураб Баржатия
источник
18

У вас есть круговой маршрут в ваших сетевых конфигурациях, проверьте таблицы маршрутизации на соответствующих устройствах.

«TTL истек при передаче» относится к значению TTL пакета; каждый маршрутизатор, через который он проходит, понижает его на единицу, если он достигает 0, пакет возвращается отправителю. Это предотвращает бесконечные циклы, когда пакеты перемещаются по кругу навсегда.

Эрик
источник
5
Это не совсем точно, пакет не возвращается отправителю, а только сообщение icmp.
радиус
3
Хотя сам пакет не возвращается и сообщение ICMP (это сообщение с истекшим сроком действия TTL) отправляется обратно источнику, точка зрения о петле маршрута и объяснении декремента TTL верна.
Ник
13

IP-пакет имеет флаг TTL . Этот уменьшается на 1 каждый раз, когда пакет маршрутизируется. Когда значение становится равным 0, маршрутизатор отбрасывает пакет и отправляет ICMP-сообщение, превышающее время жизни при передаче .
Это сделано для предотвращения бесконечной маршрутизации пакетов в случае проблем с маршрутизацией в сетях. Это ваш случай, у вас есть петля маршрутизации, так что пакет никогда не достигает пункта назначения и, наконец, отбрасывается одним из маршрутизаторов, потому что TTL достигает 0.

радиус
источник
1

При проверке таблиц маршрутизации четырех маршрутизаторов сфокусируйтесь на маске сети маршрутов и на том, может ли маршрутизатор выполнить маршрутизацию " classless".

На старых Ciscos вам нужно явно включить это, иначе они будут маршрутизировать целые классные сети вместо ваших подсетей. Например, настройка 10.20.30.0/24приведет к такому маршруту 10.0.0.0/8.

Пера
источник
0

Вы не упоминаете протокол, но я обнаружил, что чрезмерное использование статических маршрутов приводит к ошибке довольно часто. Использование протокола динамической маршрутизации должно решить эту проблему без особых усилий со стороны администраторов.

Я бы просто сказал начать с первого уровня. Проверяет, включен ли маршрутизатор и работает ли порт, связывающий его с сетью. Затем сопоставьте ваш маршрут от источника ICMP к маршрутизатору назначения, изучая таблицу маршрутизации при каждом переходе по пути.

HeavyObjectLifter
источник
0

Когда pinging привел к краткому графику Expired In Transit ... - ISP ==> Router ==> Switch ==> на ПК

Если провайдер видит свое устройство, возможно, вам придется перезагрузить swich. Если это работает, то все готово. Если нет, то вам может потребоваться перезагрузить маршрутизатор.

Я получил то же сообщение об ошибке. Я перезагрузил коммутатор и все вернулось.

Удачи.


источник
0

Хорошо, так что я буду общаться со всеми остальными. У вас есть цикл маршрутизации, о чем свидетельствует тот факт, что ICMP Echo Request продолжает цикл между теми же 4 маршрутизаторами. Проверьте таблицы маршрутизации на маршрутизаторах, начиная с маршрутизатора в xxx250.

joeqwerty
источник
-4

Я получил TTL expired in transitсообщение, и проблема заключалась в ошибочной записи в DHCP.

Кто-то добавил то же имя хоста на DHCP-сервере со статическим IP-адресом (10.xx11), в то время как хост также арендовал новый динамический IP-адрес (10.xx22).

Pinging host.example.com [10.x.x.22] with 32 bytes of data:
Reply from 10.x.x.11: TTL expired in transit.
Reply from 10.x.x.11: TTL expired in transit.
Reply from 10.x.x.11: TTL expired in transit.
Reply from 10.x.x.11: TTL expired in transit.

Ping statistics for 10.x.x.22:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Али
источник
2
нет, это звучит как целый беспорядок совершенно не связанных с этим проблем ...
Крис S