I had an OSPF issue in a lab exercise yesterday concerning OSPF and MTU. One of my routers was not forming an adjacency on the Ethernet. On debugging, I found that it was due to an MTU mismatch.
Here is the situation. I had three devices on an OSPF broadcast network:
1. Router R1, a 2620, running a dot1q trunk into the switch. The trunk was carrying two VLANs, 20 and 30, and the router was bridging them with with IRB. The MTU on the BVI interface was 1500. This router was the OSPF DR.
2. Router R7, a 2520, connected to an access port on VLAN 30. This had an MTU of 1500 on its E0 interface.
3. Switch CAT1, a 3550, running an SVI on VLAN 20. This had an MTU of 1504 on the VLAN 20 interface.
I found that CAT1 would not exchange databases with R1 or R7 because of the mismatch in MTU.
I tried changing the MTU on R1 BVI 1, to 1504. This was successful in that R1 could now exchange databasees with CAT1, but now R7 could not talk to either of the others.
I tried changing the MTU on R7, but you cannot do that on a 2500.
I changed R1 back to MTU 1500, and tried changing CAT1, but I could not. Whatever I did, the MTU stayed stubbornly at 1504. I rebooted. I set the MTU of the underlying layer 2 VLAN to 1500, but the SVI stayed at 1504.
In the end, I set ip ospf mtu-ignore on the interfaces in R1 and R7, and that worked. But I have two questions:
1. What do I have to do to change the MTU on the 3550 SVI? The answer key from my training provider shows the MTU as 1500, apparently by default. I must be doing something different.
2. If I solve this problem with ip ospf mtu-ignore, is there not a danger that the exchange of databases will still not work because CAT1 will generate LSA packets that are too large for R1 and R7?
Surprisingly, this seems to happen in 3550 only (not sure if anyone experience this in other model). At first I thought it's a bug, but here's some light to it http://www.cisco.com/en/US/docs/switches/lan/catalyst3550/software/release/12.1_13_ea1/configuration/guide/swtunnel.html#wp1010370