MTU Troubleshooting on Cisco IOS

Hello Qudama

Thanks for the topology, that was helpful! I am assuming that the PPPoE session is between the end user and the ASR, correct? And that in turn is encapsulated within an EoIP tunnel between the Mikrotik devices.

If that is the case, then we must take into account the overhead introduced by each technology involved. Here is a breakdown of these overheads:

  • Ethernet has a default MTU of 1500 bytes
  • PPPoE adds an 8 byte overhead, as I mentioned before.
  • The EoIP tunnel adds another 42 bytes of overhead, (14 from Ethernet, 20 from IP, and 8 from GRE)

Subtracting the PPPoE overhead from the Ethernet default MTU we get 1500 - 8 = 1492 bytes, which is typical if we’re just using PPPoE.

From that we subtract the overhead of the EoIP tunnel and we get 1492 - 42 = 1450 bytes.

So, to avoid fragmentation, the MTU of the ASR should be set to 1450 bytes. Depending upon the software used on the end device, you should be able to set the MTU on the end device to this value as well.

A very helpful tool that will aid you in troubleshooting is using the ping command with sweep ranges of sizes, to determine the largest MTU that can traverse a particular path.

I hope this has been helpful!

Laz