| PPPoE Support |
| ------------- |
| |
| Michal Ostrowski |
| 8 August 2001 |
| |
| for ppp-2.4.2 |
| |
| 1. Introduction |
| --------------- |
| |
| This document describes the support for PPP over Ethernet (PPPoE) |
| included with this packages. It is assumed that the reader is |
| familiar with Linux PPP (as it pertains to tty/modem-based |
| connections). In particular, users of PPP in the Linux 2.2 series |
| kernels should ensure they are familiar with the changes to the PPP |
| implementation in the 2.4 series kernels before attempting to use |
| PPPoE features. |
| |
| If you are not familiar with PPP, I recommend looking at other |
| packages which include end-user configuration tools, such as Roaring |
| Penguin (http://www.roaringpenguin.com/pppoe) |
| |
| PPPoE is a protocol typically used by *DSL providers to manage IP |
| addresses and authenticate users. Essentially, PPPoE provides for a |
| PPP connection to be established not over a physical serial-line or |
| modem, but over a logical connection between two unique MAC-addresses |
| on an ethernet network. Once the PPPoE layer discovers the end-points |
| to be used in the link and negotiates it, frames may be sent to and |
| received from the PPPoE layer just as if the link was a serial line |
| (or that is how it's supposed to be). |
| |
| With this in mind, the goal of the implementation of PPPoE support in |
| Linux is to allow users to simply specify that the device they intend |
| to use for the PPP connection is an ethernet device (i.e. "eth0") and |
| the rest of the system should function as usual. |
| |
| 2. Using PPPoE |
| -------------- |
| |
| This section is a quick guide for getting PPPoE working, to allow one |
| to connect to their ISP who is providing PPPoE based services. |
| |
| 1. Enable "Prompt for development and/or incomplete code/drivers" and |
| "PPP over Ethernet" in your kernel configuration. If you choose to |
| use the PPP over Ethernet driver as a module adding "alias |
| net-pf-24 pppoe" to /etc/modules.conf will enable auto-loading |
| of the modules. |
| |
| 2. Compile and install your kernel. |
| |
| 3. Install the ppp package. |
| |
| 4. Add the following line to /etc/ppp/options: |
| |
| plugin rp-pppoe.so |
| |
| The effect of this line is simply to make "eth0", "eth1", |
| ....,"ethx" all valid device names for pppd (just like ttyS0, |
| ttyS1). |
| |
| 5. Add the necessary authentication options to your pppd |
| configuration (i.e. PAP/CHAP information). If you wish to |
| maintain seperate configurations for different devices you may |
| place configuration options in device-specific configuration |
| files: /etc/ppp/options.devname (devname=ttyS0, ttyS1, eth0, eth1 |
| or any other valid device name). |
| |
| 6. Invoke pppd with the appropriate device name: e.g. "pppd eth0" |
| |
| |
| Do not include any compression or flow control options in your PPPoE |
| configuration. They will be ignored. |
| |
| Again, here it is assumed that the reader is familiar with the general |
| process of configuring PPP. The steps outlined here refer only to the |
| steps and configuration options which are PPPoE specific, and it is |
| assumed that the reader will also configure other aspects of the system |
| (e.g. PAP authentication parameters). |
| |
| 3. Advanced Functionality |
| -------------------------- |
| |
| For more advanced functionality (such as providing PPPoE services) and |
| user configuration tools, look to the Roaring Penguin PPPoE software |
| package (http://www.roaringpenguin.com/pppoe). |
| |
| 4. Credits |
| ----------- |
| |
| The PPPoE plugin included in this package is a component of the |
| Roaring Penguin PPPoE package, included in this package courtesy of |
| Roaring Penguin Software. (http://www.roaringpenguin.com). |
| |