Welcome to Scandinavia!
I'm having a few problems with diald and routing. I have read the FAQ.
and your description of the new clever tricks diald is pulling wrt.
routing.
I have kernel 2.0.25, Red Hat 4.0 and diald 14, compiled from the debian
sources diald-0.14-3.tar.gz. PPP is working fine on its own on a modem-
emulating ISDN device, ttyI0. I start diald with the options:
/usr/sbin/diald device /dev/ttyI0 mode ppp dynamic local 192.9.204.3
remote 194.255.40.11 connect "/usr/sbin/chat -vf /etc/ppp/chat-options"
defaultroute crtscts lock modem
After I have done this the sl0 interface appears as it should and netstat
-r gives:
[root@mailhost ppp]# netstat -rn
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt
Iface
194.255.40.11 0.0.0.0 255.255.255.255 UH 1500 0 0 sl0
192.9.204.0 0.0.0.0 255.255.255.0 U 1500 0 0 eth0
192.9.203.0 192.9.204.2 255.255.255.0 UG 1500 0 0 eth0
192.9.202.0 192.9.204.2 255.255.255.0 UG 1500 0 0 eth0
192.9.201.0 192.9.204.2 255.255.255.0 UG 1500 0 0 eth0
127.0.0.0 0.0.0.0 255.0.0.0 U 3584 0 0 lo
0.0.0.0 194.255.40.11 0.0.0.0 UG 1500 0 0 sl0
So far so good. Then I click on an external site with the browser to
activate dialds autodialling. This all works and the ppp0 interface
appears. Due to dynamic IP addresses, there's not necessarily a direct
match with the remote address and the local address is always changed.
in the syslog I see:
Nov 22 15:47:36 mailhost chat[4658]: PPP -- got it
Nov 22 15:47:36 mailhost pppd[4660]: pppd 2.2.0 started by root, uid 0
Nov 22 15:47:36 mailhost pppd[4660]: Using interface ppp0
Nov 22 15:47:36 mailhost pppd[4660]: Connect: ppp0 <--> /dev/ttyI0
Nov 22 15:47:39 mailhost pppd[4660]: local IP address 194.255.40.47
Nov 22 15:47:39 mailhost pppd[4660]: remote IP address 194.255.40.11
Nov 22 15:47:40 mailhost diald[4596]: New addresses: local 194.255.40.47,
remote 194.255.40.11.
But after this, the routes to sl0 have disappeared. There is only
a route to the ppp0 device left. The www fetch hangs due to the
change in IP addresses (that's OK, I was expecting that. I will
have to try to get my squid proxy server to stop caching IP addresses).
When I reload the page it appears, ie the link is working. But shortly
after, the connection is cut, with the syslog entry:
Nov 22 15:48:27 mailhost diald[4596]: Closing down idle link.
Nov 22 15:48:28 mailhost diald[4596]: Nonzero exit status (7) on command
'/sbin/route add default gw 194.255.40.11 metric 2000 dev sl0'
this is probably because of the 30 second initial no-activity timeout
(I upped it from the standard 15s in diald.conf) ie I think diald is
not seeing any network activity.
This is what the routing table looks like while the link is up:
[root@mailhost ppp]# netstat -rn
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
194.255.40.11 0.0.0.0 255.255.255.255 UH 1500 0 0 ppp0
192.9.204.0 0.0.0.0 255.255.255.0 U 1500 0 0 eth0
192.9.203.0 192.9.204.2 255.255.255.0 UG 1500 0 0 eth0
192.9.202.0 192.9.204.2 255.255.255.0 UG 1500 0 0 eth0
192.9.201.0 192.9.204.2 255.255.255.0 UG 1500 0 0 eth0
127.0.0.0 0.0.0.0 255.0.0.0 U 3584 0 0 lo
0.0.0.0 0.0.0.0 0.0.0.0 U 1500 0 0 ppp0
My route and netstat binaries are the newest as far as I know. They
are unaltered from the Red Hat 4.0 installation, and they report the
following when asked:
[root@mailhost ppp]# route --version
Linux NET-3 Base Utilities
Source: net-tools 1.32-alpha net-tools@lina.inka.de (Bernd Eckenfels)
Kernelsource: 2.0.13
route 1.92 (1996-04-26)
+NEW_ADDRT +RTF_IRTT +RTF_REJECT -NLS
AF:(inet) +UNIX +INET +IPX +AX25 +NETROM +ATALK
HW: +ETHER +ARC +SLIP +PPP +TUNNEL +TR +AX25 +NETROM +FR
[root@mailhost ppp]# netstat --version
Linux NET-3 Base Utilities
Source: net-tools 1.32-alpha net-tools@lina.inka.de (Bernd Eckenfels)
Kernelsource: 2.0.13
netstat 1.19 (1996-05-17)
Fred Baumgarten <dc6iq@insu1.etec.uni-karlsruhe.de> and Alan Cox.
+NEW_ADDRT +RTF_IRTT +RTF_REJECT +RT_NETLINK +FW_MASQUERADE -NLS
AF:(inet) +UNIX +INET +IPX +AX25 +NETROM +ATALK
HW: +ETHER +ARC +SLIP +PPP +TUNNEL +TR +AX25 +NETROM +FR
In a message on linux-diald, "Anthony Plack" <addhock@geocities.com>
seemed to think:
> It seems that the 2.0 kernel has a problem with the sl0 interface and
> the ppp0 interface having the same address in the routing table. It
> looks like there was an assumption made in the code that forces 1
> route to an interface. This is not correct (else why have the Metric
> at all).
Which sounds likely to me, but I don't know anything like enough about the
subject.
-- Erik Corry ehcorry@inet.uni-c.dk erik@arbat.com ec@sign-tronic.dk