Using Linux with Earthlink DSL

Editor's Note (10/28/03): I finally bought a Broadband/DSL router. For $40 (what I paid), I get a DHCP server for my local network and a gateway to Earthlink that handles the PPPoE mess. I just had to connect from Windows (via http) and tell it my e-mail address and password. Now I can hook up multiple computers and make connections between them. Plus, I don't have to worry about re-installing/configuring PPPoE software with each OS upgrade. I love it!

Although Earthlink does not officially support Linux for its broadband DSL internet product, it is very easy to connect via Linux.

Overview

Earthlink uses what is known as PPP over Ethernet (PPPoE) to make the connection between your client machine and Earthlink's server machines. Hence, all client connections initiate via the PPP daemon. However, instead of being attached to a modem device, the PPP daemon is attached to a tty, a plain old character device. On the other end of this character device sits the PPPoE program. The PPPoE program receives communications from the PPP daemon and forwards them along through your ethernet card on to Earlink's servers. Similarly, communication from Earthlink goes through the ethernet card, to the PPPoE program, through the PPP daemon via the tty and on to you.

Software

The software that Earthlink provides you with as a Linux user is terrible. Don't even try to install it. Instead, get Roaring Penguin's PPPoE Software. Download the binary core software RPM and the binary GUI RPM (rp-pppoe and rp-pppoe-gui). Install both RPMs as root with the command "rpm -Uvh *.rpm"; RPM may ask you to upgrade your PPP software. Good places to get RPM packages are rpmfind.net and pbone.net.

After you have installed the pppoe package, run "tkpppoe" as root to configure the software. Follow the online manual instructions for configuring tkpppoe. Here are the values that I used:

Basic

NIC and DNS

Options

NOTE: The tkpppoe firewall filters priveleged ports (<1024). If you use ssh, you will need to configure it to use non-priveleged ports (add "UsePrivilegedPort no" to your "~/.ssh/config" file).

Advanced

Once you have configured, exit the program, switch back to your normal user and run "tkpppoe" again. If you chose the "allow use by non-root users," you will be able to start and stop the connection as you wish.

Why doesn't it work?!?!?

Discussion Group

If you're still having trouble at this point, you'd like to discuss more advanced aspects of Linux and Earthlink DSL or if you'd like to help others get their connections working, subscribe to the discussion group:

Your Own Host Name

Here's my quick and dirty description of how I set things up to get a static hostname.

Opinion

FYI, Earthlink seems to be a good Internet Service Provider. It took 2-3 weeks for the modem to arrive after I ordered service, but shortly after it arrived, I was surfing the Web in Windows. The connection speeds are good (50k+/sec is common; I've never experienced a significant outage). You have to pay if you want a static IP and you have to login to initiate the connection each time, but Earthlink works under Linux and the login can be easily made during OS startup.

Last modified: Sun Dec 4 18:49:38 2005