                              
			                             
                                                       
               ۰߰     ܰ۰  
             ۱      ܱ߰    ۰
             ۱          ۱      ۰  
                 ܰ߱    ߰۲    
              Outbreak Magazine Issue #11 - Article 4 of 18
           '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~'

Linux PCI Modems: The Myth Is Broken
====================================
By: Magickal1

I have seen many pages written for the modem and its installation but 
they mainly cover the ISA modems. This is for the PCI Modem. Now if you 
are looking here because have a Win-modem I'm sorry, But I cant help you.
Because todays machines are using PCI boards and ISA is a thing of the 
past, I have written this in hopes of helping a few souls out their that 
need it. I know that High-Speed access is the rage, and many think that 
OMG your still on a Dialup, get High Speed Access (HSA). Well this is not 
an option for many so the tried and true modem is the only way.

Most other tutorials will tell you that PCI wont work. Wrong! There 
are several True modems out there that do. The Action-Tec Call Waiting 
Modem and the US Robotics 56k PCI Modem are 2 that I have used personally 
that work just great. With that said, the following instructions are based 
on those 2 modems.
 
The best thing to do is to read the box that the modem comes in to make 
sure that it's NOT a Modem-Emulator or the so-called Win-modem. On to the 
Nitty-Gritty.
 
It is assumed that you have already installed the hardware as this 
paper is not intended as to tell you how to do that. It is also assumed 
that your Kernel has serial support, and PPPD as well as a communication 
program such as Mini-com
 
Log onto Linux and start a terminal session and SU as root
 
The modem is going to be configured based on the following files that 
are assumed to be on the system
 dev/ttySx or dev/cuax 

 If by chance they are not there you can add them by this command:
 cd dev
 ./MAKEDEV ttySx (x=port number) ie: ./makedev ttsS4
 
on open Linux there is no make DEV so the command is:
 mknod /dev/ttyS4 c 4 68
 mknod/dev/tcua4 c 5 60
 (note that in kernels 2.2.x and later the cuax have been depricated)
 
Next step is to create a few symbolic links
 
ln -s /dev/ttyS4 /dev/modem (this creates a symbolic link from the dev 
ttyS4 to dev modem)
 chmod 666 /dev/ttyS4
 chmod 666 /dev/modem
 
Now lets determine what communications port the modem is on
 cat /proc/pci
 
Look at the output and find the modem
 you might see something like this: 

 Bus 1, device 8, function 0:
 Serial controller: US Robotics/3Com 56K FaxModem Model 5610 (rev 1).
 IRQ 10.
 I/O at 0xecb8 [0xecbf].
 
Write down the first input/output (I/O) and the IRQ 
now type in this command:
 setserial /dev/modem uart 16550a port <your value> irq <your value>
 
now try it out in mini-com. If it worked add the above command to the 
following file two times. as such:
 
in the file /etc/rc.d at the last line
 setserial /dev/modem uart 16550a port <your value> irq <your value>
 setserial /dev/modem uart 16550a port <your value> irq <your value>
 
This will insure that the modem is set every time that you boot!
 
Now lets set up the PPP
 
Is assumed that you have an ISP and valid account
 
You will need:
 - User name (login) and password
 - The Dial up Telephone number
 - The IP address that's been assigned (this doesn't apply if your ISP uses 
   a Dynamic IP as Most Do)
 - The Dynamic Name Server (DNS) addresses (you need at least one I order 
to translate from URL names like www.antionline.com to the IPV4 IPV6 URL)
 
PPP comes with some scripts that are already made that just need to be 
edited and moved a bit. You can find them on MOST systems at
 /usr/share/doc/ppp-2.x.x (depending on you version of ppp)
 
Type in the following editing to fit your system
 
cp /usr/share/doc/ppp-2.4.1/scripts/ppp-* /etc/ppp
 
Now cd to the /etc/ppp dir and open up in a text editor the following 
file.
 
ppp-on
 
Make the changes in the username password telephone numbers and such
also at the bottom of the file change the line that read /dev/ttyS0 
to the tty that you system uses change the value 38400 to 115200. Save 
and close
 
Open up the ppp-on-dialer in an editor
 
Change the setting after TIMEOUT from 30 to 60
 Change the line that reads
 exec chat -v to
 exec /usr/sbin/chat -v
 save and close
 
Open up /etc/ppp/options and make SURE that there is a line that says 
LOCK This prevents other processes from accessing the modem while in use. 
Save and Close
 
Now lets set the permissions
 
Make sure that your in /etc/ppp as root 
Set the permissions for the scripts as follows
 
chmod +x ppp-o*
 
Now the password is stored Unencrypted (yeah, I know that's not the best 
way, but hey, it works) so we are going to se the permissions on that file 
to 711 (read/write/execute) for the owner and execute-only for everyone 
else.
 
chmod 711 ppp-on
 chown root ppp-on
 chgrp root ppp-on
 
now open up /etc/resolv.conf and add in the DNS address that was 
provided by your ISP
 
Let's make another Symbolic link for the scripts
 
ln -s /etc/ppp/ppp-off
 ln -s /etc/ppp/ppp-off
 
Thing should be up and working
 
If you use a GUI Like X-server and KDE or GNOME you can edit the dialup 
programs from the GUI interface and in a few moments be surfing the net 
to you hearts delight.
 
Note in KDE KPPP doesn't have an entry for DEV above ttyS3 so make sure 
that you use /dev/modem as we have already set the link for it
 
Hoped this helped and happy surfing.
