On Thursday 12 April 2007 14:45, Bob Beers wrote: > On 4/11/07, Randy Wallace <randywallacejr@xxxxxxxxx> wrote: > > Hi Randy, thanks for the reply, > I'll leave it intact, but I have a few comments/questions at the end. > > > I would write a script that would check for connectivity to the > > internet over the ethernet port for internet. > > > > If your slackware router is always connected, and communicating, with > > the satellite modem, though not always passing real internet traffic, > > you could leave the interface 'up'. From there, you could write a > > simple ping-check type script that would ping the satellite gateway, > > which would only be visible when the dish is communicating to the NOC. > > > > For example: > > > > if > > > > ping -I eth0 xx.xx.xx.xx > > > > is successful then > > > > ip route del default via xx.xx.xx.xx dev ppp0 > > ip route add default via xx.xx.xx.xx dev eth0 > > > > else > > > > ip route del default via xx.xx.xx.xx dev eth0 > > ip route add default via xx.xx.xx.xx dev ppp0 > > > > otherwise, if eth0 is not always talking to the modem (ethernet), then > > you could use ethtool to check for ethernet connectivity before trying > > to ping, i.e. > > > > if > > > > (ethtool eth0 | grep 'Link detected: ') == 'yes' > > > > then > > > > ip addr add xx.xx.xx.xx/xx brd + dev eth0 > > > > and whatever routes you need to get the satellite gateway. > > then run the ping script above. > > > > hope i helped a little, > > > > -Randy > > This is a good plan, and I'm doing something like this already, > but I was really hoping that there was some static way to > set up two default routes, maybe two route tables even, > and that the kernel would be smart enough to know if the > satellite route was reachable, and prefer it based on some > priority or metric setting. I think the satellite modem may be > powered even if the dish is stowed, so the ethtool check of > "Link detected" may be always true, so not much help. > I suppose maybe this is what the dynamic routing protocols > (OSPF?, or BGP?) was designed to handle? But I suppose > a script from a cronjob would adjust the routing with only > a -- worst case -- 60 second delay. You can setup two or more default routes, the kernel automaticaly switches to the next defaultroute after a timeout. The timeout can be set via /proc/sys/net/ipv4/inet_peer_gc_maxtime To switch back to the first route IMHO simply flush the routing cache (not tested) regards, Paul _______________________________________________ LARTC mailing list LARTC@xxxxxxxxxxxxxxx http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc