Creating a default route within a standard PPP link is not complex, but it is not obvious either. We are not running an IGP, so we cannot redistribute a static default route, nor can we do, say, "default-information originate". However, it is just a one-line command, you just need to know what you are looking for!
We start with a couple of routers.
The goal will be for R1 to have a default route in it's routing table, pointing to R2. We start with a basic config:
R1(config)#int s3/0 R1(config-if)#no shut R1(config-if)#encapsulation ppp R1(config-if)#ip add 10.1.1.1 255.255.255.0 R2(config)#int s3/0 R2(config-if)#encap ppp R2(config-if)#ip add 20.1.1.1 255.255.255.0 R2(config-if)#no shutNow we need R1 to have a default route. We do not have an IGP running between the two, so we cannot do any redistribution or anything like that. We need to look at R1 and see what options we have.
R1(config-if)#ppp ? accm Set initial Async Control Character Map accounting Set PPP network accounting method acfc Options for HDLC Address & Control Field Compression authentication Set PPP link authentication method authorization Set PPP network authorization method bcp Set BCP negotiation options bridge Enable PPP bridge translation caller Caller option when no CLID is available chap Set CHAP authentication parameters direction Override default PPP direction disconnect-cause Set disconnect-cause code dnis Authentication via DNIS before LCP eap Set EAP authentication parameters encrypt Enable PPP encryption ipcp Set IPCP negotiation options iphc Set IPCP Header Compression control options ipv6cp Set IPV6CP negotiation options lcp PPP LCP configuration link Set miscellaneous link parameters loopback PPP loopback options max-bad-auth Allow multiple authentication failures max-configure Number of conf-reqs sent before assuming peer is unable to R1(config-if)#We have one called "ipcp". This stands for Internet Protocol Control Protocol. IPCP looks after IP addressing on a PPP link. Within the options for "ppp ipcp" we have:
R1(config-if)#ppp ipcp ? accept-address Accept any non zero IP address from our peer address Additional ipcp address options dns Specify DNS negotiation options header-compression IPCP header compression option ignore-map Ignore dialer map when negotiating peer IP address mask Specify subnet mask negotiation options no-renegotiation Do not allow client to renegotiate IPCP predictive Predict peers IPCP requests/replies route Install default route thru negotiated peer IP address username Configure how usernames are handled wins Specify WINS negotiation options R1(config-if)#So, ppp ipcp route looks like a winner!
R1(config-if)#ppp ipcp route ? default Install default route thru negotiated peer IP address R1(config-if)#So the complete command will be:
R1(config-if)#ppp ipcp route defaultLet's see what this gets us!
R1(config-if)#do sh ip route | b Gateway Gateway of last resort is 20.1.1.1 to network 0.0.0.0 S* 0.0.0.0/0 [1/0] via 20.1.1.1 10.0.0.0/8 is variably subnetted, 2 subnets, 2 masks C 10.1.1.0/24 is directly connected, Serial3/0 L 10.1.1.1/32 is directly connected, Serial3/0 20.0.0.0/32 is subnetted, 1 subnets C 20.1.1.1 is directly connected, Serial3/0 R1(config-if)#Let's add a loopback interface to R2 and check that we have connectivity:
R2(config-if)#int lo0 R2(config-if)#ip add 2.2.2.2 255.255.255.255 R2(config-if)# R1(config-if)#do ping 2.2.2.2 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 2.2.2.2, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 92/113/148 ms R1(config-if)#Nice. A little one-liner and we have a default route between two disparate networks.