Столкнулся вот с такой проблемой.
Pinging yahoo.com with 32 bytes of data:
Reply from 10.2.131.38: TTL expired in transit.
Reply from 10.2.131.34: TTL expired in transit.
Reply from 10.2.131.38: TTL expired in transit.
Reply from 10.2.131.38: TTL expired in transit.
Ping statistics for yahoo.com:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 0ms, Average = 0ms
Команда tracert показывает следующие.
Tracing route to yahoo.com over a maximum of 30 hops
1 <1 ms <1 ms <1 ms [10.2.128.81]
2 2 ms <1 ms 1 ms [10.2.130.10]
3 1 ms 2 ms 1 ms [10.2.131.33]
4 3 ms 1 ms 2 ms [10.2.131.38]
5 3 ms 3 ms 3 ms [10.2.131.33]
6 2 ms 3 ms 2 ms [10.2.131.38]
7 4 ms 3 ms 5 ms [10.2.131.33]
8 4 ms 3 ms 5 ms [10.2.131.38]
9 4 ms 6 ms 5 ms [10.2.131.33]
10 5 ms 208 ms 114 ms [10.2.131.34]
11 10 ms 3 ms 8 ms [10.2.131.33]
12 229 ms 11 ms 268 ms [10.2.131.38]
13 7 ms 7 ms 5 ms [10.2.131.37]
14 244 ms 259 ms 8 ms [10.2.131.38]
15 7 ms 5 ms 6 ms [10.2.131.33]
16 7 ms 10 ms 7 ms [10.2.131.38]
17 9 ms 7 ms 7 ms [10.2.131.33]
18 7 ms 8 ms 7 ms [10.2.131.34]
19 12 ms 9 ms 10 ms [10.2.131.37]
20 9 ms 9 ms 9 ms [10.2.131.38]
21 13 ms 9 ms 10 ms [10.2.131.33]
22 10 ms 9 ms 9 ms [10.2.131.38]
23 12 ms 12 ms 8 ms [10.2.131.33]
24 10 ms 12 ms 11 ms [10.2.131.38]
25 10 ms 12 ms 12 ms [10.2.131.33]
26 12 ms 12 ms 14 ms [10.2.131.38]
27 11 ms 15 ms 12 ms [10.2.131.37]
28 14 ms 13 ms 13 ms [10.2.131.34]
29 14 ms 16 ms 13 ms [10.2.131.33]
30 15 ms 15 ms 14 ms [10.2.131.38]
Trace complete.
Подскажите что это за глюк и как это исправить?
TTL Expired in Transit is one of the common ping error messages you may receive in network troubleshooting. This tutorial explains the meaning of this error message TTL Expired in Transit and how to solve it.
Let us check the meaning of this error message first.
Meaning of TTL Expired in Transit
In simple words, TTL Expired in Transit tells the Time To Live value set for the ping packets is too low while traveling through the network before reaching the destination.
To understand it, we need to know the variable TTL.
TTL =Time To Live
In other words, the TTL value decides the life span of a packet.
The TTL value set on a packet will reduce by one when that packet passes through each hop in the network.
In a computer network, the term hop refers to a router.
For example, if the Time To Live value set on a packet is 3, it will pass through 3 hops. At the third hope, the TTL value reduces to become zero.
So, what happens when TTL expires? The packet will not travel to the next hop.
If a router sees the TTL value as zero, it will drop the packet.
This procedure helps to avoid the infinite looping of packets. It is the primary use of the TTL variable. However, if the TTL value becomes zero before reaching the destination, it will result in this error.
Let us check the reasons for receiving the ping reply TTL Expired in Transit.
Possible Reasons for TTL Expired in Transit
- Infinite loop due to the incorrect routing table entries
- TTL Value of a packet is set very low.
Finding the exact reason behind this error is a must to fix it. The step-by-step solution provided below in this article will help you solve this issue.
How to Solve TTL Expired in Transit?
The first solution will clear the current routing tables on your network devices and get a fresh routing table. If it does not work, you need to edit the routing table entries based on the Tracert test result.
- Power Cycle the Local Network
- Disconnect your PC/Laptop from the network. If your device is using WiFi, disconnect it. If it is a wired connection, disconnect the Ethernet/USB cable.
- Restart your computer/laptop.
- Power off the router.
- Power off the modem and wait for two minutes.
- Power on the modem and wait for the Power and Network lights to steady.
- Power on the router and wait for the Power and Network lights to steady.
- Reconnect your device (SmartPhone/Laptop/PC) to the network.
Now ping the destination address again and check whether the issue persists. If the ping fetches the same error, you should follow the steps below.
- Use the Tracert to Check the actual location of the error.
The first step is to perform a tracert test and check the actual location of the error.
- On Windows Platform
Open the command prompt on your Windows computer. Type tracert www.corenetworkz.com and press the enter button.
- On Linux Platform
Open the Linux terminal and type traceroute www.corenetworkz.com, and press enter key.
If you are not sure about the working of this command, you may visit the link below.
- On Windows Platform
- Check the Routing Table for an infinite loop.
In most scenarios, the reason behind receiving the TTL Expired in Transit is a misconfigured router and a routing loop.
We need to correct the router configuration and make sure that there is no routing loop.
We can check the routing table on a computer by using the command prompt command provided below.
route print
This command will show the routing table stored on your PC.
If you receive TTL Expired in Transit error on Cisco devices, you need to use a different command to fix it.
The command to display the routing table in the Cisco router is:
show ip route
If you have Juniper devices on your network, use the show route table command.
You need to delete the wrong entry in the routing table to resolve TTL Expired in Transit error.
To delete a wrong entry on the routing table, use the route delete command.
- Increase the Time To Live value of a packet.
Make sure the Time To Live value set for the packet is reasonable.
You can increase the TTL value of a packet by using the ping parameter -i.
Let me explain how to change the TTL value of a ping packet with an example. Have a look at the command below.
ping corenetworkz.com -i 3
You can see the reply on the Command Prompt when I set the TTL value 3.
You can see how the reply changed when I changed the TTL value from 3 to 30.
Let me show you the result when I ping the Google with modified TTL value.
C:Windowssystem32>ping google.com -i 3
Pinging google.com [2404:6800:4007:804::200e] with 32 bytes of data:
Reply from 2404:6800:4007:804::200e: TTL expired in transit.
Reply from 2404:6800:4007:804::200e: TTL expired in transit.
Reply from 2404:6800:4007:804::200e: TTL expired in transit.
Reply from 2404:6800:4007:804::200e: TTL expired in transit.
Ping statistics for 2404:6800:4007:804::200e:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss)
I hope this tutorial helped you to identify and rectify the ping reply TTL Expired in Transit error. Allow me to introduce other similar ICMP error messages.
- Destination Host Unreachable
- Destination Net Unreachable
- Request Timed Out
- Error 678: The Remote Computer Did Not Respond
Что означает «истек срок действия при передаче» при попытке пинга?
Когда мы пытаемся пропинговать сервер в другом сегменте сети, мы получаем сообщение «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
...
Каковы основные шаги для устранения этой ошибки?
Ответы:
Как указано во всех ответах выше, в маршрутизации есть цикл, который приводит к истечению TTL.
Проверьте маршрут на устройствах, IP-адреса которых повторяются. В Linux вы можете использовать
route -n
как пользователь root, чтобы увидеть текущую таблицу маршрутизации. На окнах вы можете перейти к CMD и использовать команду
route print
чтобы увидеть текущую таблицу маршрутизации. На управляемых коммутаторах Cisco вы можете использовать команду
show ip route
Используя вышеуказанные команды на всех четырех повторяющихся IP-адресах, вы должны увидеть, какая таблица маршрутизации неверна. Одно из четырех задействованных устройств / хостов в идеале должно направлять трафик к пункту назначения, на который вы отправляете эхо-запросы, с использованием другого шлюза.
У вас есть круговой маршрут в ваших сетевых конфигурациях, проверьте таблицы маршрутизации на соответствующих устройствах.
«TTL истек при передаче» относится к значению TTL пакета; каждый маршрутизатор, через который он проходит, понижает его на единицу, если он достигает 0, пакет возвращается отправителю. Это предотвращает бесконечные циклы, когда пакеты перемещаются по кругу навсегда.
IP-пакет имеет флаг TTL . Этот уменьшается на 1 каждый раз, когда пакет маршрутизируется. Когда значение становится равным 0, маршрутизатор отбрасывает пакет и отправляет ICMP-сообщение, превышающее время жизни при передаче .
Это сделано для предотвращения бесконечной маршрутизации пакетов в случае проблем с маршрутизацией в сетях. Это ваш случай, у вас есть петля маршрутизации, так что пакет никогда не достигает пункта назначения и, наконец, отбрасывается одним из маршрутизаторов, потому что TTL достигает 0.
При проверке таблиц маршрутизации четырех маршрутизаторов сфокусируйтесь на маске сети маршрутов и на том, может ли маршрутизатор выполнить маршрутизацию ” classless
“.
На старых Ciscos вам нужно явно включить это, иначе они будут маршрутизировать целые классные сети вместо ваших подсетей. Например, настройка 10.20.30.0/24
приведет к такому маршруту 10.0.0.0/8
.
Вы не упоминаете протокол, но я обнаружил, что чрезмерное использование статических маршрутов приводит к ошибке довольно часто. Использование протокола динамической маршрутизации должно решить эту проблему без особых усилий со стороны администраторов.
Я бы просто сказал начать с первого уровня. Проверяет, включен ли маршрутизатор и работает ли порт, связывающий его с сетью. Затем сопоставьте ваш маршрут от источника ICMP к маршрутизатору назначения, изучая таблицу маршрутизации при каждом переходе по пути.
Когда pinging привел к краткому графику Expired In Transit … – ISP ==> Router ==> Switch ==> на ПК
Если провайдер видит свое устройство, возможно, вам придется перезагрузить swich. Если это работает, то все готово. Если нет, то вам может потребоваться перезагрузить маршрутизатор.
Я получил то же сообщение об ошибке. Я перезагрузил коммутатор и все вернулось.
Удачи.
Хорошо, так что я буду общаться со всеми остальными. У вас есть цикл маршрутизации, о чем свидетельствует тот факт, что ICMP Echo Request продолжает цикл между теми же 4 маршрутизаторами. Проверьте таблицы маршрутизации на маршрутизаторах, начиная с маршрутизатора в xxx250.
Я получил 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),
We get the message “TTL expired in transit” when we try to ping to a server in a different network segment. When we run tracert, 4 ip addresses repeat themselves indefinitely:
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
...
What are the basic steps for troubleshooting this error?
chmeee
7,3403 gold badges29 silver badges43 bronze badges
asked Jul 13, 2009 at 5:23
As stated in all answers above there is loop in routing that is causing TTL to expire.
Check route on the devices whose IP addresses are repeating. On Linux you can use
route -n
as root user to see current routing table. On windows you can go to cmd and use command
route print
to see current routing table. On cisco manageable switches you can use command
show ip route
Using above commands on all the four IPs that are repeating you should see which routing table is wrong. One of the four devices / hosts involved should ideally route traffic to destination you are pinging using some other gateway.
answered Jul 13, 2009 at 8:42
0
You’ve got a circular route in your networking configurations, check your routing tables on the involved devices.
“TTL expired in transit” is related to the TTL value of the packet; every router it passes through lowers it by one. If it hits 0, the packet is dropped and an ICMP message (the ‘expired in transit’ message) is sent to the sender. It prevents infinite loops, where packets travel in circles forever.
answered Jul 13, 2009 at 5:26
EricEric
5933 silver badges8 bronze badges
2
IP packet has a TTL flag. This one is decreased by 1 each time the packet is routed. When the value become 0 the router drop the packet and send an ICMP message Time-to-live exceeded in transit.
This is done to prevent packets to be routed infinitely when there is routing problem on networks. This is your case here, you have a routing loop so that the packet never reach is destination and is finally dropped by one of the router because the TTL reach 0.
answered Jul 13, 2009 at 5:29
radiusradius
9,62324 silver badges45 bronze badges
While checking the routing tables of the four routers, focus on the network mask of the routes and if the router ist able to route “classless
“.
On older Ciscos you need to explicitly enable this, otherwise they will route whole classful networks instead of your subnets. E.g. configuring 10.20.30.0/24
will result in a route like 10.0.0.0/8
.
answered Jul 13, 2009 at 8:02
PEraPEra
2,86517 silver badges14 bronze badges
You make no mention of protocol, but I find that the overuse of static routes leads to the error quite often. Using a dynamic routing protocol should solve this with little effort from the administrators.
I would simply say to start at layer-1. Makes sure the router is on, and that the port linking it to the network is up up. Then map your route from your ICMP source to the destination router, examining the routing table at each hop along the path.
answered Jul 13, 2009 at 9:42
When pinging resulted in Expired In Transit…
short diagram –
ISP ==> Router ==> Switch ==> to PCs
If ISP can see their device then you may need to reboot the swich. If it works then you are all set. If not, then you may need to reboot the router.
I got the same error message. I rebooted the switch and everything came back up.
Good luck.
answered Sep 2, 2009 at 20:53
OK, so I’ll chime in with everyone else. You have a routing loop as evidenced by the fact that the ICMP Echo Request keeps looping between the same 4 routers. Check the routing tables on the routers, starting with the router at x.x.x.250.
answered Sep 2, 2009 at 20:58
joeqwertyjoeqwerty
109k6 gold badges80 silver badges171 bronze badges
I received a TTL expired in transit
message and the problem was an erroneous entry in DHCP.
Someone had added the same host name in the DHCP server with a static IP address(10.x.x.11), while the host had also leased a new dynamic IP address (10.x.x.22).
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),
Ladadadada
26.2k7 gold badges59 silver badges90 bronze badges
answered Sep 5, 2013 at 14:16
1
Когда мы пытаемся пропинговать сервер в другом сегменте сети, мы получаем сообщение “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
...
Каковы основные шаги для устранения этой ошибки?
2009-07-13 05:23
8
ответов
Решение
Как указано во всех ответах выше, в маршрутизации есть цикл, который приводит к истечению TTL.
Проверьте маршрут на устройствах, IP-адреса которых повторяются. В Linux вы можете использовать
route -n
как пользователь root, чтобы увидеть текущую таблицу маршрутизации. На окнах вы можете перейти к CMD и использовать команду
route print
чтобы увидеть текущую таблицу маршрутизации. На управляемых коммутаторах Cisco вы можете использовать команду
show ip route
Используя вышеуказанные команды на всех четырех повторяющихся IP-адресах, вы должны увидеть, какая таблица маршрутизации неверна. Одно из четырех задействованных устройств / хостов в идеале должно направлять трафик к пункту назначения, на который вы отправляете эхо-запросы, с использованием другого шлюза.
2009-07-13 08:42
У вас есть круговой маршрут в ваших сетевых конфигурациях, проверьте таблицы маршрутизации на соответствующих устройствах.
“TTL истек при передаче” относится к значению TTL пакета; каждый маршрутизатор, через который он проходит, понижает его на единицу, если он достигает 0, пакет возвращается отправителю. Это предотвращает бесконечные циклы, когда пакеты перемещаются по кругу навсегда.
Eric
13 июл ’09 в 05:26
2009-07-13 05:26
2009-07-13 05:26
IP-пакет имеет TTL- флаг. Этот уменьшается на 1 каждый раз, когда пакет маршрутизируется. Когда значение становится равным 0, маршрутизатор отбрасывает пакет и отправляет ICMP-сообщение, превышающее время жизни при передаче.
Это сделано для предотвращения бесконечной маршрутизации пакетов в случае проблем с маршрутизацией в сетях. Это ваш случай, у вас есть петля маршрутизации, так что пакет никогда не достигает пункта назначения и, наконец, отбрасывается одним из маршрутизаторов, поскольку TTL достигает 0.
radius
13 июл ’09 в 05:29
2009-07-13 05:29
2009-07-13 05:29
При проверке таблиц маршрутизации четырех маршрутизаторов сфокусируйтесь на маске сети маршрутов и на том, может ли маршрутизатор маршрутизировать. “classless
“.
На старых Ciscos вам нужно явно включить это, иначе они будут маршрутизировать целые классные сети вместо ваших подсетей. Например, настройка 10.20.30.0/24
приведет к маршруту как 10.0.0.0/8
,
PEra
13 июл ’09 в 08:02
2009-07-13 08:02
2009-07-13 08:02
Когда pinging привел к краткому графику Expired In Transit… –
ISP ==> Router ==> Switch ==> на ПК
Если провайдер видит свое устройство, возможно, вам придется перезагрузить swich. Если это работает, то все готово. Если нет, то вам может потребоваться перезагрузить маршрутизатор.
Я получил то же сообщение об ошибке. Я перезагрузил коммутатор и все вернулось.
Удачи.
03 сен ’09 в 00:53
2009-09-03 00:53
2009-09-03 00:53
Хорошо, так что я буду общаться со всеми остальными. У вас есть цикл маршрутизации, о чем свидетельствует тот факт, что ICMP Echo Request продолжает цикл между теми же 4 маршрутизаторами. Проверьте таблицы маршрутизации на маршрутизаторах, начиная с маршрутизатора в xxx250.
joeqwerty
03 сен ’09 в 00:58
2009-09-03 00:58
2009-09-03 00:58
Вы не упоминаете протокол, но я обнаружил, что чрезмерное использование статических маршрутов приводит к ошибке довольно часто. Использование протокола динамической маршрутизации должно решить эту проблему без особых усилий со стороны администраторов.
Я бы просто сказал начать с первого уровня. Проверяет, включен ли маршрутизатор и работает ли порт, связывающий его с сетью. Затем сопоставьте ваш маршрут от источника ICMP к маршрутизатору назначения, изучая таблицу маршрутизации при каждом переходе по пути.
2009-07-13 13:42
Я получил 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),
Ali
05 сен ’13 в 14:16
2013-09-05 14:16
2013-09-05 14:16