[plug] getting DHCP results into system environment
Craig Ringer
craig at postnewspapers.com.au
Mon Jul 29 15:34:28 WST 2002
I was wondering if anybody here has worked much with kernel-level
autoconfiguration of network interfaces. I have everything working
happily, but there doesn't seem to be a way to access the extra info in
the DHCP reply from user-space. Ideally I'd like to be able to find
things like the xdm server set in the dhcp reply as DHCP_XDM_SERVER in
the environment.
Using pump or dhcpcd doesn't seem to be the way to go, as I need env
variables exported across the entire system. I'm trying to be able to do
things like start X automatically on boot with "X -query
$DHCP_XDM_SERVER" - that sort of thing.
Ideas, anybody?
There are possibly security ramifications to doing this, of course. With
thin clients I have two choices, both somewhat nasty: use dhcp to set
the configuration or do it in the nfs-mounted root dir. Both can be
spoofed using a second DHCP server, so there isn't much to be done about
it. In the end it does little harm though - the clients won't boot right
, but no data will be compromised so I'm not too worried. I can just
hunt down the guy with the laptop and have him executed...
What I'd _love_ to see would be a kernel that could boot, get an addr
using DHCP and then use IPSec to authenticate against the server before
mounting / and continuning to boot over an authenticated (but probably
unencrypted) link.
Other than this and a bit of an issue with swap on machines with < 24MB
of RAM (no network swap support and no local disks). In many cases it
would be possible to use the local disk for swap I guess but I don't
have that option. One of my test machines is our cold-spare SCO accounts
sytem box (*gag*) and the other main one is a 486 running win95 which
needs to stay untouched. So if anybody has any ideas about how to get
network swap of some form working with linux, I'm all ears.
--
Craig Ringer
GPG Key Fingerprint: AF1C ABFE 7E64 E9C8 FC27 C16E D3CE CDC0 0E93 380D
-- if it ain't broke, add features 'till it is. (or:)
while (! broken) { features ++ ; broken = isBroken(features) }
More information about the plug
mailing list