How can I figure out the largest MTU usable on my network?



There are a few things on your network that require extra encapsulation (headers) and therefore require devices to set their MTU to something lower than 1500. Setting the value to something very small will most likely "fix" the issue, but in turn, that will lead to performance loss. Here is how you can figure out the largest MTU possible on your network.


Here is what you will need

1. The IP address of a device on your network that will require your packets to be encapsulated. 

2. Make sure that no firewall is blocking PING packets larger than 64 bytes. A standard PING packet is 64 bytes in size so firewalls will allow that but for our test, we will need to use a larger PING packet



First step is to ping that device with a full 1500 byte packet. This will most likely result in a packet loss. If it doesn't, either your PING didn't need to go through all the encapsulating devices, or that your network does in fact support 1500 byte packets

For the example below, I will be figuring out the largest MTU possible between my PC and a device at


C:\>ping -n 1 -l 1500 -f


Pinging with 1500 bytes of data:

Packet needs to be fragmented but DF set.

Ping statistics for
    Packets: Sent = 1, Received = 0, Lost = 1 (100% loss)
100% packet loss means the PING packet never made it so 1500 is too high and we need to try something lower. 
This next command will test with 1200 bytes
C:\>ping -n 1 -l 1200 -f

Pinging with 1200 bytes of data:

Reply from bytes=1200 time=1ms TTL=255

Ping statistics for
    Packets: Sent = 1, Received = 1, Lost = 0 (0% loss)
Approximate round trip times in milli-seconds:
    Minimum = 1ms, Maximum = 1ms, Average = 1ms
No packet loss, this means an MTU of 1200 would work but it might be too low to be efficient.
This command will test with 1300 bytes
C:\>ping -n 1 -l 1300 -f

Pinging with 1300 bytes of data:

Packet needs to be fragmented but DF set.

Ping statistics for
    Packets: Sent = 1, Received = 0, Lost = 1 (100% loss)
The packet was lost, this means 1300 is too high. We now know that our largest possible MTU is between 1200 and 1300.
The next step (for this specific example) would be to test with 1210, 1220, 1230, 1240 and so on until the ping reports 100% packet loss. 
For this example, 1270 returned 0% packet loss and 1280 returned 100% packet loss. 
With that information, we can determine that the largest packet is between 1270 and 1279 bytes in size.
To get an even more precise number, we could test 1271, 1272 etc... until we see a packet loss.
In the end, 1272 showed 0% packet loss, and 1273 showed 100% packet loss.
That means an ICMP packet with 1272 bytes of payload is the biggest packet that can be forwarded without fragmentation.
1272 + 20 (IP overhead) + 8 (ICMP overhead) = 1300
 This means my MTU should be set to 1300


Additional Information
Bug Number
InQuira Doc IdFAQ662

Article Feedback

Did this Article solve your issue?
Additional Comments:
Previous MonthNext Month