Stefan Rompf wrote : > > dhcpclient > > A DHCP client for linux 2.6, using modern kernel features, (c) 2006 > Stefan Rompf. > > Motivation > > Using a notebook, I'm often traveling between different networks. > After replugging, I always needed to issue a ifdown/ifup sequence > because the DHCP client did not realize the temporary disconnection. > This is an unneeded limitation because since 2.6, the kernel notifies > userspace of these disconnection/reconnection events. Actually is was > me who implemented this feature. > > Beginning with 2.6.17, the linux kernel will allow userspace to > influence this signalling, so that for example a wpa supplicant can > tell the dhcpclient that an association has finished and the client > should try to get an IP address. > > Of course, you need software that support this feature. Unfortunately, > most existing DHCP clients implemented their statemachine using > siglongjmp() or one huge function, so there was no easy way extending > them. So I wrote a new one.
I congratulate you on your good work. I will share with you my personal gripe on most DHCP clients : they depend too much on those link signalling. I hope you appreciate the irony ;-) I'm personally setup with a WLAN in Ad-Hoc mode. I've got so many WLAN cards left over from previous projects that I don't really need an Access Point. One of the PC in Ad-Hoc mode act as a DHCP server (trivial to configure on most distro). In Ad-Hoc mode, you can't have any link notification. Think about it, an Ad-Hoc network with only a single node is valid, because you need to start somewhere. The PC with the DHCP server doesn't have any specific meaning at the link layer, and might actually go down sometimes (reboot to update kernel). After 'ifup', the DHCP client tries a few time to connect to the DHCP server, and if not in range, will give up and never retry. When I bring my laptop within range of my DHCP server, nothing happens. I have to manually restart the interface. If you are not familiar with WLAN Ad-Hoc mode, I'll give you a conceptual equivalent with Ethernet. Let suppose you have a Ethernet switch on your desk (or under your desk), and the uplink is *NOT* connected to the rest of the network. You plug your PC into the switch. You get a netlink event saying that you have a valid Ethernet link, but your DHCP will fail. At the point when you will connect the uplink to the switch, the PC will not notice it and DHCP will not get an address. In essence, in WLAN Ad-Hoc mode the link to the switch is always valid but the uplink may or may not be connected. Have fun... Jean - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html