A PhoneBoy Primer On: MultiLink PPP for ISDN on Linux
I'm surprised nobody's written a nice, simple, step-by-step page on getting
MultiLink PPP working on a single ISDN modem under Linux. It's actually
not that difficult, but unless you do certain things correctly, it won't
Note: The instructions on this page are for External ISDN modems or
Internal ISDN modems that have a standard COM-port interface. If you want
to use multiple modems (i.e. two or more analog modems), then these instructions
are not for you. The 'EQL' driver for Linux is supposed to provide this
support. Check for the file README.eql in your kernel sources directory
I got it working with:
You might also find pppsetup
helpful in setting up your PPP in general, particularly if you're a newbie.
Provided you feed the right information into this script, you should get
MultiLink PPP running.
The 2.0.32 Linux Kernel included with RedHat 5.0 (though I imagine it will
with any PPP-enabled kernel).
pppd-2.3.3 (get it from ftp://cs.anu.edu.au/pub/ppp),
though it may work with other versions of pppd (e.g. the one that comes
included in your Linux distribution).
Write a chat script that initializes your modem for MultiLink PPP and "connects"
you to your ISP, but does not log you all the way in. It should get you
through to the point where the "Login:" prompt on the remote system would
show, but no farther. This is necessary so that PAP Authentication will
work correctly. For example, my chat script looks like:
ABORT 'NO CARRIER'
(Note the S80=1 turns on MultiLink PPP on my 3Com Impact IQ. Your ISDN
modem will likely require a different initializaiton string).
Set up the file /etc/ppp/pap-secrets with the "shared secret" (e.g. your
login and password) for your ISP. For instance, my /etc/ppp/pap-secrets
Call pppd with the appropriate options so that PAP authentication is performed.
You can either put these options in /etc/ppp/options or add them to the
command line when you invoke pppd. In my case, the options are:
pppd /dev/cua0 115200 connect /etc/ppp/chat-isp
lock defaultroute \
noipdefault name "dwelch"
In the case where you are using diald, your diald.conf file will need
to contain the line:
pppd-options asyncmap 0 name "dwelch"
Note: for some reason, I had to add the asyncmap 0 option in there to
make it work. You may not need it or it may be different in your configuration.
Last Update: 20 June 1999
Return to PhoneBoy's Internet Guide