❗❓ MPLS MTU Problem , more than 1500 byte get packet fragmentation error

Hi friends.
I try to setup a MPLS / VPLS on a existing network to have a full 1500 byte on VPLS tunnels to make PPPoE centralize.
And I stuck in a problem on packet fragmentation that packets not going trough VPLS with more than 1500 byte . !!

I’ve checked all the things , and not resolved yet , anybody know ? :open_mouth: :confused:

Here is my check list :
R1 is 1036 , R2 is RB1100 .
Two routers are connected with a direct patch cord cable .
RouterOS version are 6.39.3 and firmwares are last .
VPLS is running between two routers and works , MTU IS 1508 and I try it by 1520 too .
Interface L2MTU on R1 is 1580 , R2 is 1598 .
I’ve changed L2MTU on both interfaces with 1600 too .
MPLS interface MTU is 1550 at first and I tried with 1590 too .
R1 Loopback = 172.16.0.1 , R2 = 172.16.0.2
interface address is = 172.16.1.0/30 . (R1=1 , R2=2) .

Problem is :
Maximum ping byte to 172.16.0.2 from R1 is 1500 and got error on even on 1501 .

NOTE :
I’ve setup this configs on LAB devices and works well .
If ping 172.16.1.2 (interface address) from R1 , maximum byte will be 1500.
If ping 172.16.0.2 (loopback address) from R1 ,maximum byte will be 1546 (when MPLS interface is 1550) and works well .

Make a symmetric MTU on both routers on all interface, f.e. L2MTU. Are they all symmetric?

Do I need this on all interfaces ? even not used by this Point to Point MPLS/VPLS ?

Of course only on which you using.

Now its same as 1580 L2MTU on all interfaces on both routers .
change back MPLS interface MTU to 1550 and VPLS L2MTU into 1508 .
… But still have the first problem

What exactly error do you have? Can you paste config export and screenshot?

Do you have somewhere enabled “use ip firewall for pppoe” at bridge interface?

Sorry for digging on this thread. Is this problem solved? I have the same problem on my network.

thanks

have you try this?

https://wiki.mikrotik.com/wiki/Transparently_Bridge_two_Networks_using_MPLS#MTU

Hola Chechito,

Yes, I have both routers with 1600 MPLS MTU

Gracias

Pings happen at Layer3 so make sure that ‘MTU’ is large enough
So even if you have i.e. 5000 L2MTU, if L3MTU is still 1500 (Just called MTU in mikrotik, and don’t forget the MRU as well on PPPoE) then you can only send 1500 byte pings
Increase MTU along the path to 1520 and you’ll be able to send 1520 byte pings - as long as you have enough L2MTU to support it, more is always OK but less is bad
L2MTU applies outside the normal IP connectivity. You need to increase L2MTU to account for things like VLAN’s, VPLS, MPLS, PPPoE etc but that doesn’t change L3MTU at all
To send a 1520 byte ping between 2 routers on flat ethernet you only need 1520 L3MTU and 1520 L2MTU (mikrotik does not count ethernet header and FCS, its actually 1538). But if you add a VLAN between the 2 routers now you need 1524 L2MTU to carry 1520 L3MTU.
If you used PPPoE on top of that VLAN and still want 1520 L3MTU then you need 1532 L2MTU (1520 L2 + 4 bytes for VLAN + 8 for PPPoE) but your L3MTU is still only 1520

I recommend only ever using 1500 L3MTU because that’s a global standard, you can’t send more than 1500 across the internet anyway.
But if you need to test if your packets are arriving you need to temporarily increase your L3MTU to something higher so you can send test pings. After you are sure its good, drop it back down to 1500