Home
Main website
Display Sidebar
Hide Ads
Recent Changes
View Source:
LinuxPPPoA
Edit
PageHistory
Diff
Info
LikePages
[PPPoA] is an Acronym for [PPP] over [ATM], a protocol which is commonly used for [ADSLModems] such as World-Net's [AccessRunner|AccessRunnerADSLModem] and D-Link AHL110. __PPPoA is supported out of the box on Debian Sarge (pppd 2.4.3), so this page is largely unnecessary now.__ As of 2.4.1 howver, the default PPP distribution for linux did not come with PPPoA support, and neither did the Debian package in Woody. However there are patches floating around to add this functionality. The patches provided below are originally from the current [SUSE] version of ppp which ships with PPPoA support. I have extracted these patches and verified that they work with both the standard ppp-2.4.1 distribution and the debian woody ppp-2.4.1 source package. Before we start with all the configuration you should be aware of the fact that you need to connect your ADSL modem directly to your Linux box (eg via USB or as internal PCI card) - it is __not__ possible to have it connected via [Ethernet]. !! Kernel Options You'll need a kernel that has ATM support compiled in. Make sure the following options are enabled: <verbatim> -Code maturity level options [*] Prompt for development and/or incomplete code/drivers -Networking options [*] Asynchronous Transfer Mode (ATM) (EXPERIMENTAL) [*] Classical IP over ATM (NEW) <*> LAN Emulation (LANE) support (NEW) <*> RFC1483/2684 Bridged protocols (NEW) </verbatim> You'll also need standard PPP support in your kernel, for obvious reasons: <verbatim> -Network Device Support <M> PPP (point-to-point protocol) support [*] PPP multilink support (EXPERIMENTAL) [*] PPP filtering <M> PPP support for async serial ports <M> PPP support for sync tty ports <M> PPP Deflate compression <M> PPP BSD-Compress compression <M> PPP over Ethernet (EXPERIMENTAL) <M> PPP over ATM (EXPERIMENTAL) (NEW) </verbatim> And recompile your kernel. ''Note - at least one person had trouble with pppoa not working which was apparently solved by compiling atm and ppp over atm support into the kernel instead of as modules ''. - The problem with using modules for pppoa is that if you use too many you get a large dependency tree, this is the problem mentioned above. It is entirely possible to run pppoa (and other ppp related code) as modules provided that you are aware of the dependencies and ensure that the modules are loaded in the correct order.%%% ''modprobe should surely handle this itself, as it understands module dependencies. Can you elaborate on the correct module load order? --DanielLawson''%%% ''I've not yet seen modprobe do it correctly (i've never spent the time trying), i am not sure what the correct order is and it is dependent on what parts you have as modules and what parts are built in, specifically I think that pppoa requires pppoe to add some hooks but as they are not strictly dependent on each other the information that modprobe requires is not present. --MattBrown''%%% ''There are problems with Kernel Oops when you try doing all this with Kernel version 2.4.22 - this is supposed to be fixed in the 'pre' patches for 2.4.23, but 2.4.21 works fine. --WarrenBoyd''%%% ''There are problems with Kernel Errors leading to stalled pppd with latest 2.4.X and 2.6.0 when using ipv6 on ppp with ipv6 ipsec enabled. Deactivate ipv6 privacy extensions in your kernel for pppd to reconnect correctly. dmesg error is unregister_netdevice: waiting for ppp0 to become free. Usage count = 1. --~TheMadHatter'' !! Precompiled .deb If you are impatient and just want to get PPPoA up and running on your system without compiling from source the following debs may work for you. Grab whichever one is appropriate for your version of debian. If you dont run debian woody or sarge, you have to compile from source. Woody: http://www.wlug.org.nz/archive/LinuxPPPoA/ppp_2.4.1.uus-4pppoa_i386.deb Skip ahead to the Configuring PPPoA section. !! Compiling from Source #You will need the following 3 patches ** http://www.wlug.org.nz/archive/LinuxPPPoA/028_pppoe.diff ** http://www.wlug.org.nz/archive/LinuxPPPoA/029_pwfd.diff ** http://www.wlug.org.nz/archive/LinuxPPPoA/030_pppoatm.diff **As you can see the PPPoA patch relies on PPPoE (PPP over Ethernet) and another small patch. The PPPoE patch is required as it add's some generic hooks in to PPP that the PPPoA module uses. The pwfd patch is required because I am lazy... Basically the pppoatm patch expects it to be there and I couldn't be bothered hacking the patches to work without it.. #You will also need to have the atm-tools and atm-dev packages installed ** apt-get install atm-tools atm-dev ** OR http://www.sf.net/projects/linux-atm/ ! Compiling from the Standard ppp distribution # Obtain ppp-2.4.1 # Download the 3 patches from above # Extract ppp-2.4.1 and change into the directory # patch -p1 < 028_pppoe.diff # patch -p1 < 029_pwfd.diff # patch -p1 < 030_pppoatm.diff # ./configure # make # make install ! Compiling from the Debian Source # apt-get install atm-dev (its needed, but not listed in the builddepends for the .deb) # apt-get source ppp # copy the 3 patch files to ppp-2.4.1.uus/debian/patches # cd ppp-2.4.1.uus/ # debian/rules unpatch # debian/rules patch # dpkg-buildpackage # cd .. # dpkg -i ppp_2.4.1.uus-4_i386.deb __Notes on compiling from Debian source__ *I found it necessary to edit pppd/plugins/Makefile and to add -lresolv to the link options for pppoatm.so. *The above procedure does not work for ppp_2.4.1.uus-5, which has been changed sufficiently that the patches do not apply. - [mailto:olly@lfix.co.uk] !! Configuring PPPoA This step is much the same as it would be for compiling PPP normally, if you are unfamiliar with PPP it might be an idea to read a HOWTO or something. I have ppp configured so that it is easy to switch between my normal dsl provider (World-Net) and JSGames. I will show you how to set this up. Create configuration files in /etc/ppp/peers for your dsl provider and JSGames. The most important line to have in each file is plugin /usr/lib/pppd/2.4.1/pppoatm.so 0.100 This tells pppd to load the PPPoA plugin. Download my sample configs to see the full set of options http://www.wlug.org.nz/archive/LinuxPPPoA/ppp-provider http://www.wlug.org.nz/archive/LinuxPPPoA/ppp-jsgames Also make sure you have 'noauth' in there somewhere, else the RAN will try and authenticate against you, and fail miserably. My configuration is setup to use PAP authentication, make sure you have a line such as username@provider * yourpassword in your /etc/ppp/pap-secrets file. Download my sample pap-secrets file http://www.wlug.org.nz/archive/LinuxPPPoA/pap-secrets Finally setup ppp to start on boot * mv /etc/ppp/no_ppp_on_boot /etc/ppp/ppp_on_boot * chmod +x /etc/ppp/ppp_on_boot * Edit /etc/ppp/ppp_on_boot so that it calls your adsl provider on startup ie for the example provider you download above we would have the line **$PPPD call ppp-provider * Download my example http://www.wlug.org.nz/archive/LinuxPPPoA/ppp_on_boot That's it. You should be done!! !!Traverse Technologies Pulsar PCI ADSL modem using Linux * Check my How-To http://fw.webmaster.co.nz/traverse !!Conexant Access Runner PCI ADSL modem using Linux See [AccessRunnerADSLModem] for details on configuration of this modem.
4 pages link to
LinuxPPPoA
:
IA310
PPPoA
AccessRunnerADSLModem
QuestionsFromWindowsUsers