LinuxCommandLibrary

pppoe-discovery

Discover PPPoE servers

SYNOPSIS

pppoe-discovery [-I <interface>] [-s <service>] [-C <AC_name>] [-S <service_name_list>] [-t <timeout>] [-L <num_padi>] [-V] [-D]

PARAMETERS

-I
    Specifies the Ethernet network interface to use for discovery, e.g., eth0 or enp0s3. If omitted, it typically defaults to 'eth0'.

-s
    Searches for Access Concentrators (ACs) offering a specific service. Only ACs providing this exact service name will respond.

-C
    Searches for a specific Access Concentrator by its advertised name. Only the AC with this name will respond.

-S
    Specifies a comma-separated list of service names to look for. ACs offering any of these services will respond.

-t
    Sets the timeout in seconds to wait for PADO responses after sending PADI packets. The default is usually 10 seconds.

-L
    Specifies the maximum number of PADI (PPPoE Active Discovery Initiation) packets to send before giving up. The default is typically 1.

-V
    Displays the version number of the pppoe-discovery utility and exits.

-D
    Enables debugging output, providing more verbose information about the discovery process.

DESCRIPTION

pppoe-discovery is a utility included in the rp-pppoe client package, designed to perform the discovery phase of the Point-to-Point Protocol over Ethernet (PPPoE). This initial phase is crucial for establishing a PPPoE connection.

The command works by sending PADI (PPPoE Active Discovery Initiation) broadcast packets on a specified Ethernet interface. PPPoE Access Concentrators (ACs) on the network that receive these PADI packets respond with PADO (PPPoE Active Discovery Offer) packets.

These PADO packets contain information about the AC, such as its name and the services it offers. pppoe-discovery collects and displays this information, allowing users to identify available ACs and choose a specific service or AC for their PPPoE connection. It's often used to verify network connectivity to an AC or to determine the correct AC name and service name required by PPPoE clients like pppd. It does not establish the PPPoE session itself, but rather provides the necessary details for subsequent connection attempts.

CAVEATS

pppoe-discovery typically requires root privileges to send and receive raw Ethernet packets. It only performs the discovery phase and does not establish a PPPoE connection; for that, other tools like pppd are required. It operates at the Ethernet layer, meaning a working Ethernet interface and physical connection are necessary.

HISTORY

pppoe-discovery is a component of the rp-pppoe (Roaring Penguin PPPoE) client package, which was primarily developed by Paul P. R. Rowland. This package has been a long-standing and widely used solution for PPPoE client functionality on Linux and other Unix-like systems, enabling internet connectivity through DSL and other PPPoE-based services since the early 2000s. The pppoe-discovery utility specifically was designed to simplify the initial setup and troubleshooting of PPPoE connections by automating the process of finding available Access Concentrators.

SEE ALSO

pppoe(8), pppd(8)

Copied to clipboard