Last Updated: 16/12/2003
After quite some time setting this DSL Conexant Card (PCI), i am delivering here all the necessary information including modified sources to make it work on Debian Woody (but not only). This article contains the official modified drivers, atm, pppd and rp-pppoe. You can now follow this step by step guide to connect without headaches. In order to compile properly the pppd sources under Debian, make sure that you installed libbpam0g and gawk (for the cnxadsl script). You can find all the technical details aboutmy card here : http://www.amigo.com.tw/products/adsl/AMXCA83P.htm. I would like to thank longwordfor his help over IRC and for providing the modified script, you can even pay him a visit to find some SRPMS he did here : http://longword.net/ADSL/.
Warning : Those modules are for GCC 2.9x only. If you plan on installing these on a GCC 3.x distribution, please visit this site for packages and information : http://www.data-technics.net/content.php?cat=3. It contains stuff about all distros.
Before starting with the installation, make sure you properly compiled your kernel (2.4.19 minimum) to support ATM and its 2684 module, go into your kernel sources under networking support andactivate the following :
- [*] Asynchronous Transfer Mode (ATM) (EXPERIMENTAL)
[*] Classical IP over ATM
[*] Do NOT send ICMP if no neighbour
[M] RFC1483/2684 Bridged protocols
You can take a look at my kernel config fileYou can then recompile your kernel and make sure that all is fine. Then download either :
- dsl.tar - For kernels 2.4.19/20/21/22 only
- dsl-0.2.tar - From kernel 2.4.23
Note : Please be aware that because of the binary part of the driver, it is not possible to deliver any kernel 2.6 drivers. We can just hope that Conexant will release a binary compatible version for it later.
This package contains the conexant drivers,and the patched versions of atm, pppd and rp-pppoe (with the ppp plugin). You will need to install all of these to have a proper setup. Unpack the whole lot using tar xvf dsl.tar then compile it this way :
- tar
xvjf cnx_linux_0.x.tar.bz2 ; cd cnx_linux_0.x ; make install ; cp brctl
/usr/local/bin ; ldconfig
tar xvjf linux-atm-2.4.0.tar.bz2 ; cd linux-atm-2.4.0 ; ./configure ; make ; make install ; ldconfig
tar xvjf rp-pppoe-3.5-patched.tar.bz2 ; cd rp-pppoe-3.5-patched ; ./go
At this stage, rp-pppoe will launch its setup script and the compilation all at once. You can then enter your user/pass provided by your DSL company and also if you want to use a firewall, i recommend that you don't use it by saying 0 (none) and filter all the traffic through iptables. You then need to compile the pppd plugin which will allow you to make the internet connection active. Make sure you are in therp-pppoe-3.5-patched directory and do :
- cd src ; make clean ; ./configure
--enable-plugin=../ppp/ ; make install ; ldconfig
You should then have a file in /etc/ppp/plugins/rp-pppoe.so. This is the plugin which will allow the pppd connection to talk to the DSL card. You must then create a /etc/ppp/options.nas0 file in which you copy the following :
- name
'profilename'
user 'username'
lcp-echo-interval 10
lcp-echo-failure 5
defaultroute
persist
holdoff 240
mtu 1492
mru 1492
linkname nas0
You should now be able to start the card drivers using the script which is in /etc/init.d/cnxadslctl which has been quite modified by longword and myself. You must uncomment the line calling functions if you have this file on your system. Make also sure that you have installed all the packages which contain the commands used in the script. Also verify that you have a valid path leading to /var/lock which is called in several times as i modified this one to fit Debian. You can now start it up by firing : /etc/init.d/cnxadslctl start and also check that your interface has been correctly initialised by doing ifconfig nas0. This is what it should return :
- router:~# /etc/init.d/cnxadslctl start
Starting Conexant AccessRunner...
Warning: loading /lib/modules/2.4.20/misc/CnxADSL.o will taint the kernel: no license
Loading firmware/etc/init.d/cnxadslctl: success
Loading br2684 module: /etc/init.d/cnxadslctl: success
RFC1483/2684 bridge: Interface "nas0" created sucessfully
RFC1483/2684 bridge: Communicating over ATM 0.8.35, encapsulation: LLC
RFC1483/2684 bridge: Interface configured
router:~# ifconfig nas0
nas0 Link encap:Ethernet HWaddr 00:80:AD:B1:A6:D2
BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
Congratulations, you just setup your DSL card under Linux ! All you need to do now is to lauch pppd to connect your machine to the internet, this can be achieved by doing :
- pppd
nas0
If you get an error message about @PPPD, that means that some value in the adsl-scripts didn't get properly included. Search for them in /usr and replace all the instances by pppd all in lower case. That's all folks! At least for now. I'll be updating this page pretty soon as i am currently playing a bit with my card.
