Lowering the interface MTU doesn't seem to do anything.

I can do ping -f -l 1472 walmart.com from my laptop and it returns a successful ping. GOOD.
I can do ping -f -l 1473 walmart.com from my laptop and it says packet needs to be fragmented. GOOD.

Then, I change the MTU on the LAN interface in Mikrotik from 1500 to 1300. I would expect both test above would fail with “needs to be fragmented” because the Mikrotik interface should only allow 1300 or below to pass. However, both tests above still have the exact same results. 1472 pings successfully.

Why is the 1472 ping working without fragmenting when the interface MTU is set to 1300?

The PMTUD result may be cached on your PC is one possibility.

Or, if the LAN is part of bridge or VLAN, MTU may be based on that value – although bridge should use lowest MTU of the ports.

I found that it actually works as expected if I change the WAN interface MTU instead of the LAN interface MTU. I don’t know why though.

On the LAN side, I changed the bridge and the individual interfaces, but that didn’t make any difference. There is no vlan.