I wanted to check something about MTU size with PPPoE. Since PPP adds another 8 bytes, we should reduce our MTU to 1492 on our dialer interface. I wanted to actually test and do this, however I'm having issues with it. I have provided my configuration below, note that with this provider I have to use Eth0.101 as the VLAN tag in order for PPPoE to work, so just assume it's the physical WAN interface. FYI I'm using a Cisco 887VA with a FTTC connection, with PPPoE.
interface Dialer1 ip address negotiated ip mtu 1492 ip nat outside ip virtual-reassembly in encapsulation ppp ip tcp adjust-mss 1452 dialer pool 1 ppp authentication chap callin ppp chap hostname firstname.lastname@example.org ppp chap password 0 bt no cdp enable end ! interface Ethernet0.101 encapsulation dot1Q 101 ip mtu 1492 pppoe-client dial-pool-number 1 end
But now in the #debug ppp negotiation I see that for some reason my MRU being sent is STILL 1500, it's so annoying
Feb 10 22:46:15.060: %DIALER-6-BIND: Interface Vi2 bound to profile Di1 Feb 10 22:46:15.064: %LINK-3-UPDOWN: Interface Virtual-Access2, changed state to up Feb 10 22:46:15.064: Vi2 PPP: Sending cstate UP notification Feb 10 22:46:15.064: Vi2 PPP: Processing CstateUp message Feb 10 22:46:15.064: PPP: Alloc Context [8551EED0] Feb 10 22:46:15.064: ppp4 PPP: Phase is ESTABLISHING Feb 10 22:46:15.064: Vi2 PPP: Using dialer call direction Feb 10 22:46:15.064: Vi2 PPP: Treating connection as a callout Feb 10 22:46:15.064: Vi2 PPP: Session handle Session id Feb 10 22:46:15.064: Vi2 LCP: Event[OPEN] State[Initial to Starting] Feb 10 22:46:15.064: Vi2 PPP: No remote authentication for call-out Feb 10 22:46:15.064: Vi2 LCP: O CONFREQ [Starting] id 1 len 10 Feb 10 22:46:15.064: Vi2 LCP: MagicNumber 0x87665B00 (0x050687665B00) Feb 10 22:46:15.068: Vi2 LCP: Event[UP] State[Starting to REQsent] Feb 10 22:46:15.104: Vi2 LCP: I CONFREQ [REQsent] id 88 len 19 Feb 10 22:46:15.104: Vi2 LCP: MRU 1492 (0x010405D4) Feb 10 22:46:15.104: Vi2 LCP: AuthProto CHAP (0x0305C22305) Feb 10 22:46:15.104: Vi2 LCP: MagicNumber 0x7CCF52D6 (0x05067CCF52D6) Feb 10 22:46:15.104: Vi2 LCP: O CONFNAK [REQsent] id 88 len 8 Feb 10 22:46:15.104: Vi2 LCP: MRU 1500 (0x010405DC) Feb 10 22:46:15.104: Vi2 LCP: Event[Receive ConfReq-] State[REQsent to REQsent]
So on the I for the inbound PPP message we are seeing that the peer would like to use an MTU of 1492, but we NAK it and tell him we want to use 1500 on the O outound message. This just goes around in an endless loop until it does a ConfREJ I don't get why? So I checked the interfaces specifically to see the MTU settings, and they just ain't changed. See below. How can I fix this?
router#sh int di1 Dialer1 is up, line protocol is up (spoofing) Hardware is Unknown Internet address is 220.127.116.11/32 MTU 1500 bytes, BW 56 Kbit/sec, DLY 20000 usec, ! !output ommitted, basically I've skipped to the output at the bottom of this command. ! Bound to: Virtual-Access2 is up, line protocol is up Hardware is Virtual Access interface MTU 1500 bytes, BW 56 Kbit/sec, DLY 20000 usec
I've tried a #shut, no shut, and a reload. Still I can't get this to change. In the interim I did manage to figure out a command to make it work, but I'm not particularly happy that my #ip mtu command didn't work. The command I'm using to fix this currently is below. I just stumbled across it when trying to fix this issue. int di1 ppp mtu adaptive