This is an example of configuring PPPoE in a back-to-back scenario. The objective here is to simulate a PPPoE server (typically found on the ISP end)
In this example, we're using 2 routers connected back-to-back on their Fa0/0 ports. Here're the parameters being simulated
1. Authentication using Chap/Pap (Username: cisco, password: sisco)
2. Client being authenticated by the server (one way authentication)
3. IP address being negotiated using IPCP
Here's the relevant configuration needed on the client router
no ip address
no ip redirects
no ip unreachables
no ip proxy-arp
ip tcp adjust-mss 1452
pppoe-client dial-pool-number 1
ip address negotiated
dialer pool 1
no cdp enable
ppp authentication pap chap callin
ppp pap sent-username cisco password sisco
ppp chap hostname cisco
ppp chap password sisco
ip route 0.0.0.0 0.0.0.0 Dialer1
Here's the relevant configuration needed on the Server
username cisco password sisco
bba-group pppoe global
ip address 10.252.102.49 255.255.255.240
ip rip advertise 4
pppoe enable group global
ip unnumbered FastEthernet0/0
peer default ip address pool pppoepool
ppp authentication pap chap
ip local pool pppoepool 10.10.10.1 10.10.10.200
Here's how the flow will be
1. Client negotiates PPPoE using PADo, PADi and PADr with the server, both client and server move into PPP-->LCP phase
2. Client/Server negotiate authentication, other parameters
3. Server asks the client for a username/password (using pap, as pap is configured before chap)
4. Client sends out a username/password configured in it's dialer
5. Server authenticates this username/password against its global username/password list (alternatively a AAA/Radius server)
6. Client and Server both move on to IPCP phase
7. Client sends an ip address of 0.0.0.0 (asking for an ip address from the Server)
8. Server hands out an IP address from its pool (in this case pppoepool)
9. Client/Server finish IPCP phase and the link comes up
At this time, the link should be up and able to pass traffic
A very good article. Thanks for contributing.
WTB some debug commands for the 1 - 9 stages
but it's a nice article, even old, still should work, gonna try it for sure, cause i need to play with pppoe a bit .
What is best pratice for configuring ip address in server interface, physical interface or virtual-template.
Is it documented anywhere?
Thanks for this grean info.
Thanks, worked fine, I did add NAT and DHCP
be sure to use the "IP NAT OUTSIDE" on the dialer 1 interface, and overload statement on the NAT command
Hello darrinmcland, where do you apply the IP NAT OUTSIDE on the fast Ethernet interface or dialer interface? I just a bit confuse on to where to apply NAT.
the outside interface is dialer.
so the outside statements goes there,
the accesslists also go here on the dialer.
dialer is your "wan".
Isn't that supposed to be ip mtu 1492 instead of simply mtu?
Have you got the PPPoE DDR working?
After I add "dial-on-demand", it does not working any more.
----------config as follow-----------------
interface GigabitEthernet3 no ip address negotiation auto pppoe enable group global pppoe-client dial-pool-number 1 dial-on-demand!
interface Dialer1 mtu 1492 ip address negotiated encapsulation ppp load-interval 30 dialer pool 1 dialer idle-timeout 60 either dialer hold-queue 10 dialer-group 1 ppp chap hostname cisco ppp chap password 0 cisco
dialer-list 1 protocol ip permit
tried to ping other site ip address, but G3 interface not come up with IP address.
If I removed "dial-on-demand". The link come up working fine.