Что означает сообщение «TTL истек при передаче» при попытке пинга?

Что означает сообщение «TTL истек при передаче» при попытке пинга?

Мы получаем сообщение «TTL expired in transit», когда пытаемся пинговать сервер в другом сегменте сети. Когда мы запускаем 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
...

Каковы основные шаги по устранению этой ошибки?

решение1

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

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

route -n 

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

route print

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

show ip route

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

решение2

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

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

решение3

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

решение4

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

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

Связанный контент