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.
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.
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.
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.
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.
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.
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.
Let me explain how to change the TTL value of a ping packet with an example. Have a look at the command below.
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:\Windows\system32>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.
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?
- 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. - 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.
- 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 routeIf 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:\Windows\system32>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