PPPoE stands for Point-to-Point Protocol over Ethernet, a network protocol for encapsulating Point-to-Point Protocol (PPP) frames inside Ethernet frames. PPPoE is a networking protocol that also offers essential networking features, like authentication, encryption and compression. Because of that, PPPoE is one of the most preferred means of delivering Internet access. It is used mainly with DSL services where individual users connect to a DSL modem over Ethernet. Ethernet networks are packet-based and have no capacity for a connection or circuit. They also lack basic security features to protect against IP and MAC conflicts and rogue DHCP servers. All mainstream broadband routers support PPPoE as an internet connection mode. Some internet providers may even supply their customers a broadband modem with the necessary PPPoE support already configured. PPPoE relies on two widely accepted standards: PPP and Ethernet. PPPoE is a specification for connecting the users on an Ethernet to the Internet through a common broadband medium, such as a single DSL line, wireless device or cable modem. All the users over the Ethernet share a common connection, so the Ethernet principles supporting multiple users in a LAN combine with the principles of PPP, which apply to serial connections.
With PPPoE, users virtually "dial" from one machine to another over an Ethernet network, establish a point-to-point connection and then data packets are securely transported through the connection
The following are the steps in brief for configuring a router for PPPoE operation:
Basic Layer 1 commands:
1. Configure dialer interface using the interface dialer <number> command
ex. Interface dialer
2. Configure the physical interface using the pppoe-client dial-poo-number <number> command.
ex: pppoe-client dial-pool-number 1
Basic layer 2 commands:
1. Configure ppp using encapsulation ppp command
ex. encapsulation ppp
2. Configure PPPoE on the Ethernet interface using pppoe enable command.
ex. pppoe enable
Basic layer 3 commands:
1. Configure IP on the dialer interface using ip address negotiated command.
ex. ip address negotiated
2. Disable IP on the Ethernet interface using no ip address command. Ex. no ip address
PPPoE uses one extra eight bytes long header which eats into the payload. PPPoE does not have this header so it has less overhead and each packet can carry more useful data (8 bytes more) which results in slight (around one percent) speed improvement.
Given below are some of the important commands that you need to configure while enabling PPPoE on an Ethernet interface at the client side.
1. encapsulation ppp Sets the datalink protocol to PPP
2. dialer pool 1 Used to reference a dialer pool
3. pppoe-client dial-pool-number 1 Adds the interface to a pool available to dialer interfaces
4. pppoe enable Enables PPPoE feature on the interface
Important show commands that are used for troubleshooting PPPoE connectivity are given below:
show interfaces tunnel <number> - Displays the status of a tunnel interface.
show interfaces dialer <number> - Displays the status of a dialer interface.
show interfaces virtual-access <number> - Displays the status of a virtual-access interface.
show interfaces virtual-access <number> configuration - Displays the configuration that IOS builds for the given virtual-access interface.
show pppoe session - Displays status out on each of the PPPoE sessions.