header1 logo1 logo2 header2
   Contact Us     PPPoE / Broadband Help     TR-069 FAQs     Search
low1 low2 low3 low4
All Aboard
Access Manager
Intel AnyPoint
Enternet DUN
Enternet MacIntosh
Friendly PPPoE
Linux PPPoE
MacIntosh PPPoE
XRouter MIH-130
NetGear RT311
Networking PPPoE
Offloading PPPoE
PPPoE Client
PPPoE Server
PPPoE Hardware
Netgear RT314
Broadjump SAM
Efficient Tango Manager
UMAX Ugate 3000
What is PPPoE?
Why PPPoE?
Windows PPPoE
Windows XP PPPoE
Windows Vista PPPoE
Search Optimization

There is a new mailing list for Linux users using a PPPoE service.Send an e-mail whose body consists of: "subscribe sympatico-linux you@your.email.com", (Replace "you@your.email.com" with your e-mail address, of course!), to: majordomo@list.achilles.net

1. Will there be a command-line version of the EnterNet client?


2. Is the EnterNet source code available?

Yes, your ISP should have the Efficient Networks (Formerly NTS) source code. For Sympatico users click here. There are currently five solutions for PPPoE. Efficient Networks (Formerly NTS) source code should be available from your ISP.
Luke Stras

Jamal Hadi Salim is doing the 2.2 kernal patch.

Michal Ostrowski - is only doing the 2.4 pppoe implementation kernel.
David F. Skoll - The emerging client of choice.
Keith Campbell

The EnterNet 100 Linux support is not open source, i.e. user may modify for his/her own use but do not have the rights to redistribute the modifications except back to Efficient Networks (Formerly NTS)

enternet100tar.gz is a binary image for Redhat version 5.2

enternet100src.gz is the source file for the PPPoE driver

Other support files such as libnet.tar.gz (the source file for the Internet library that PPPoE driver calls), libpcap-0.4.tar.gz (another library that PPPoE calls), and pty-redir-0.1.tar.gz (the pseudo terminal redirection tool that PPPoE uses), are freely available on the Internet

3. Which client do you recommend?

I've been asked why it appears David's client is the emerging client of choice. Here are the appearing reasons.

1) It comes with a manual page. Most of the other solutions are very poorly documented.
2) It's easy to set up. Someone with fairly good knowledge of Linux
networking can be up and running in 5 minutes.
3) It's very reliable.
4) It does not require a kernel patch. This means it uses more CPU than kernel-based solutions, but it also means you can upgrade the client and kernel independently and not use "unofficial" kernel patches.
5) It comes with a sample firewall script for protecting your machine.

As for the future, David is working on a graphical installation wizard which will make installation as easy as the typical Windows program.
Version 1.8 of rp-pppoe has been released.
Rp-pppoe is a user-mode client for the Point-to-Point Protocol over
Ethernet, a protocol used by many DSL Internet service providers. It runs with standard Linux kernels (2.0 or 2.2; no kernel modification required.)

David is pleased to announce the release of version 1.8 of his Linux PPPoE client.

Support for demand-dialing for users whose ISP's charge by time.
Improved signal-handling.
pppoe sends PADT frame upon connection termination.
Added "adsl-status" script.
Minor documentation updates and bug-fixes.

4. I'm having trouble with the Roaring Penguin client and Corel Linux.

Login to Corel® LINUX® as the root user.

Download the newest pppd (2.3.11) and save it somewhere on your hard disk (we'll use /root in this example). Get it here.

Click the Console icon on the task bar (third icon from the bottom left on the task bar) to open a console session. Please allow each step to complete before typing the next command.
cd ~ <ENTER>
tar zxvf ppp_2.3.11.orig.tar.gz <ENTER>
cd ppp-2.3.11 <ENTER>
./configure <ENTER>
make <ENTER>
make install <ENTER>
/etc/init.d/ppp restart <ENTER>

Download the Roaring Penguin PPPoE client here

Install the client as follows. Again, open a console screen.
cd ~ <ENTER>
tar zxvf rp-pppoe-1.9.tar.gz <ENTER>
cd rp-pppoe-1.9 <ENTER>
./go <ENTER>

The installation script now will ask a series of questions to configure the connection. Customize your responses as needed.

Enter your PPPoE user name at the prompt (ie: myname@myisp.com)

For the "Interface" enter the ethernet interface connected to the xDSL modem (ie: eth0)

The next prompt will ask you if you wish to have the connection open up on demand or stay open permanently. If you want it to open on demand, enter the idle time in seconds. The connection will close after the specified idle time has expired. If you want the link to remain open permanently, enter 'no'.
NOTE: Demand-activated links do not interact well with dynamic IP addresses. You may have some problems with demand-activated links.

When prompted for your ISP's DNS IP address, enter the correct IP address in the space provided. If you just press enter, it will assume that you know what you are doing and not modify your DNS setup.

The next prompt is for the secondary DNS IP address. If you just press enter, it will assume there is only one DNS server.

Enter your PPPoE password when prompted and then enter it a second time to confirm.

Next, choose the firewall rules. Please note that these rules are very basic. You are strongly encouraged to use a more sophisticated firewall setup; however, these will provide basic security. If any servers are running on the machine, you must choose 'NONE' and set up a firewall by other means. Otherwise, the firewall rules will deny access to all standard servers like Web, e-mail, ftp, etc.
The firewall choices are:

0 - NONE: This script will not set any firewall rules. You are responsible for ensuring the security of your machine. You are STRONGLY recommended to use some kind of firewall rules.
1 - STANDALONE: Appropriate for a basic stand-alone web-surfing workstation
2 - MASQUERADE: Appropriate for a machine acting as an Internet gateway for a LAN

The #1 option is the option for most users.

Verify the selections on the summary screen and type "y" to continue.

To start the PPPoE client, type "adsl-start" and press enter. To stop the PPPoE client, type "adsl-stop".

5. Are non-x86-compatible processors covered?

The Linux client source is available. It was developed against the RedHat 5.2 distribution of Linux. As source code is provided, it should be a relatively simple matter to build Alpha, PowerPC, ARM or other implementations of the Linux client. Whether binaries will be deployed by Sympatico or your ISP is unknown. However, if they are not, check in the sympatico.highspeed newsgroup, as one or more of its members will likely be available to help (For Sympatico users). Or contact your ISP.

6. How is PPPoE implemented under Linux?

It basically uses PPPd VPN support with pty-redir to the PPPoE driver. ... Basically, it uses the Opensoft VPN driver and adds the four basic PPPoE commands, which are clearly defined in the PPPoE RFC. These PPPoE commands basically go out and find the other end of the PPP, after that, the normal PPPd takes over.

7. Does the client depend on libc5, glibc2.0 or glibc2.1?

The binaries are generated against RedHat 5.2, which uses glibc2.0. However, the source code will be available for recompilation on systems with either libc5 or glibc2.1.

8. How do I set up the Linux version?

The following instructions apply specifically to Red Hat Linux version 6.0 Kernel version 2.2.5. Some file locations may be different for your particular distribution of Linux. This information may also be applied to other *NIX operating systems.

a) Required Software

Tested installations of the EnterNet PPPoE client use version 2.2.5 of the Linux kernel, or higher. If you are using a 2.0.x or 2.1.x series kernel we recommend you upgrade before attempting to run EnterNet PPPoE.

You will also need to download the EnterNet PPPoE client for Linux

To compile the EnterNet PPPoE client, download the source and required libraries


Note: If it is not installed on your system, we recommend you use the latest version available of the PPP daemon. (2.3.8 at the time this document was written)

b) Installing the PPPoE client

Extract the contents of the file enternet100.bin.tar.gz, (using the command "tar -xzf enternet100.bin.tar.gz") which will appear in the directory pppoe.

Copy the binary file pppoe to a common binary directory, such as /usr/sbin. This file is required by the PPP Daemon to make a PPP connection through your Ethernet NIC.

c) Installing and configuring the PPP Daemon for PPPoE

Install the PPP Daemon package. You should have a binary called pppd accessible in a common binary directory. We suggest placing the file in /sbin or /usr/sbin, so that it can be invoked from an initialization script.
Add your ISP username and password to the PAP user list. Edit /etc/ppp/pap-secrets and add the following line, replacing your userid and your password. User ID and password are case sensitive.
"youruserid@whatever.ca (or com, etc)" * "yourpassword"
Configure the PPP Daemon (pppd) to use PPPoE by editing the file: /etc/ppp/options. A sample configuration is shown below.
pty "/usr/sbin/pppoe -I eth0"
name "your userid"
The first line tells pppd to redirect input and output through the PPPoE client (/usr/bin/pppoe). Be sure to specify the correct directory. Change, if necessary, eth0 to the Ethernet device that is attached to your ADSL Modem.
Change your userid in the second line to your ISP User ID. The User ID is case sensitive.

The remaining lines specify that pppd will obtain a dynamic IP address, not write log the password, add the PPPoE connection to the routing table as the default route, automatically reconnect if the PPPoE connection is terminated, and maintain a UUCP-style lock while pppd is running

d) Making It Work

Before PPPoE will work, you must have a working Ethernet NIC, configured for TCP/IP. Running the ifconfig command will give you a list of available TCP/IP devices. You should see at least two devices listed, one of which should be an Ethernet device (e.g.: eth0), and another of which should be the local loop back device. If you see different results, try the following command to bring the first available Ethernet device up:
ifconfig eth0 up
For more information on configuring Ethernet and TCP/IP devices, please refer to NET3-HOWTO, available with your Red Hat Linux distribution, or on any of the Linux Documentation Project web sites.
If your Ethernet device is enabled, and pppd is configured properly, you should be able to run pppd to establish a connection to the Internet. Running ifconfig should show details for a new device called ppp0. As well, ppp0 should be shown as a host as a default gateway when running route.

Important messages are logged to /var/log/messages. For more verbose logging, use the command pppd debug.

e) I keep getting the "Connection terminated" error

This usually happens immediately after attempting to log into the PPPoE server. It is usually caused by an incorrect domain name, User ID or Password in /etc/ppp/pap-secrets or /etc/ppp/options. Make sure that all three values are correct. User ID and Password are case sensitive.

9. Will Linux come with built in PPPoE support?

The Linux kernel 2.4.17 has PPPoE built in now.

Copyright © 2000, 2001, 2002, 2003 Carrick Solutions Limited