thanks to vda
walter harms
wharms at bfs.de
Mon Dec 6 11:50:09 UTC 2010
Am 06.12.2010 12:09, schrieb David Collier:
>
> I thought I's explain why I'm blitzing this mailing list, or apologise,
> whichever seems most appropriate :-)
>
> I have read
>
> http://www.busybox.net/~vda/no_ifup.txt
>
> and as it happens we do things close to the way it is recommended
> already!
>
> That file hints at stuff which pretty much covers the scope of the task I
> have set myself, which is:
>
> optionally configure eth0 from dhcp, otherwise optionally run on
> user-fixed address or set interface quiescent. Run the dhcp forever and
> correctly handle any future changes of details, or NAKs to renewals.
>
> optionally run a PPP link over a gprs link, especially on units with no
> land-line. Deal with all the wonderful stuff that happens on such a
> connection like "gprs unavailable" status.
>
> optionally run a VPN, which should persistently use whatever route it can
> grab to connect to a fixed server.
>
> optionally run this lot in fail-over mode, so the WAN connection is used
> when present, but the GPRS takes over if it isn't, provided a GPRS link
> an be made. All the while monitoring the WAN, and switching back if it
> reappears.
>
> send SMS messages using the modem which runs GPRS, even if that has only
> one port, so involves temporarily taking the GPRS link up and down.
>
> ----------------------------------
> It brings up all sorts of interesting stuff like when you get a new dhcp
> lease, you must implement ip and mask NOW, but only set DNS and gateway
> if the current default route is over eth0, or that later becomes the
> default.
>
> what I'm not doing properly is semaphoring the process of changing
> routing tables etc - so there will be moments when a new dhcp lease DNS
> would get lost because the PPP s/w has just that moment decided it has
> just got a connection.... that's a job for later, see below.
>
> I'm also trying to set up 3 shepherd scripts which will notice, and panic
> if any of the PPP, dhcp, or VPN processes dies, and re-launch them.
>
> Plus logging every event that happens on dhcp, PPP and VPN so we can
> bug-hunt when it all goes belly-up in the real world.
>
> Much of this is scripted, though there is a c proggie in the background
> handing stuff like SMS sending.
>
> ==============================================
>
> There is a question here :-) -
>
> Suppose I try to move on to a semaphore-locked system so that changes to
> routine and ip address are mutexed and changes can't get lost... what
> mechanism would people advise me to use?
>
> Would you use flock on a key file? Or is there something better?
>
My first version is mostly a script and some thing you can run in paralell.
E.g. setting a fixed address at start und then use dhcpd to get a real address.
Using alias addresses is a nice way for debugging :) Our system also has
a serial port where you can connect. (when you use dhcpd in background).
my sheppard is init (i know vda do no like it but it is easy to handle and a
SYSV init with runlevel is nice to debug). When you know more you can replace
the scripts with a daemon but usualy the scripting works well enough
re,
wh
More information about the busybox
mailing list