Acronym for the PPP over Ethernet protocol, defined in RFC:2516.

A simple protocol, designed to allow discovery of AccessConcentrators and end-point services they provide.

The five packet types used by PPPoE are:


PPPoE Active Discovery Initiation

PPPoE Active Discovery Offer
PPPoE Active Discovery Request
PPPoE Active Discovery Session-confirmation
PPPoE Active Discovery Terminate

Their definitions and use can be found in the RFC.

Once the discovery protocol has done the setup, the session protocol actually passes the PPP data between the AccessConcentrator and the client.

Roaring Penguin Software have a Free implementation of the protocol that works under Linux, NetBSD/FreeBSD, and Solaris. The Debian package is pppoe.

As of 2.4.something, the Linux kernel has kernel-mode PPPoE support. The Kernel PPPoE driver typically yields lower CPU load than the Roaring Penguin client.

See LinuxPPPoENotes for more details.