I finally got DSL again a few months ago, after 2 years of dial-up. Worked like a charm on my iBook, but not so on the Linux box. Actually, it wasn’t so bad at first, but the DNS lookups were taking forever. Then it started dropping carrier. Often. To the point where, after a few minutes of using the computer, it was dropping every few seconds. Here’s how I fixed it.
Relevant System Parameters
- Red Hat Linux 9
- tulip and rt1839 chips in two network cards (for masquerading, of course)
- SBC Yahoo! DSL
- dropping carrier every few seconds
- can't see the internal network (ping can't find the computer), even with all ip filtering turned off
I thought it was a hardware issue at first, for when I removed one of my cards everything worked. I could either connect to the outside world or to the inside world without a hitch. So I went out and bought a cheap DLink card to replace the SMC I had taken out.
That didn’t solve it. So I went Googling.
I found one post
out there that looked helpful, suggesting that there is a timeout conflict going
on in the
ifcfg-ppp0 file. One of the listed symptoms was a strange
error message reading “Inactivity timeout… something wicked happened on
session 4214,” which I hadn’t at first noticed in my log file. So I tried their
suggestion of shortening the
Much to my surprise, this didn’t work either. But I had a feeling I was on the right path. And then I remembered that I have a DSL connection at work that has never timed out. I forget about it because I never have to do anything with that box other than log in periodically to install security updates.
So I SSHed over, tried to look at the
ifcfg-ppp0, and was stumped. No
ifcfg-ppp0. (box = Mandrake 7 upgraded to 8). But I did find a file
pppoe-config, I think, in
/etc/ppp/. And this file had
the settings I wanted. And indeed, it had some very different timeout numbers. I
copied these over, and voíla, I’ve not had a problem since!
So the thing that did it was changing both the
PPPOE_TIMEOUT and the
LCP_TIMEOUT. Here’s (most of) the end-product in my
USERCTL=no BOOTPROTO=dialup NAME=DSLppp0 DEVICE=ppp0 TYPE=xDSL ONBOOT=yes PIDFILE=/var/run/pppoe-adsl.pid FIREWALL=NONE PING=. #PPPOE_TIMEOUT=20 LCP_FAILURE=3 #LCP_INTERVAL=80 LCP_INTERVAL=20 PPPOE_TIMEOUT=80 CLAMPMSS=1412 CONNECT_POLL=6 CONNECT_TIMEOUT=60 DEFROUTE=yes SYNCHRONOUS=no ETH=eth0 PROVIDER=DSLppp0 USER=_redacted_ PEERDNS=yes