Package: ifupdown Version: 0.7.5 Severity: important Dear Maintainer!
I have noticed a problem with ifup in a local network environment in such situation: * both DHCP-server and DHCP-client (Debian Wheezy host) PCs has no UPSes, so when power fails both DHCP-server and DHCP-client goes down; * after power resume DHCP-client boots up faster then DHCP-server and sends first DHCPDISCOVER when there are no DHCP-servers on the network; * looking over `ps axjf` immediatly after finishing of a boot process i've noticed, that `dhclient` is invoked with `-1` option by `ifup` at boottime, while according to manpage `-1` option forces dhclient to "Try to get a lease once. On failure exit with code 2." See `ps` command output which was executed immediatly after finishing boot process below: 1 472 472 312 ? -1 S 0 0:00 ifup --allow=hotplug eth0 472 1459 472 312 ? -1 S 0 0:00 \_ /bin/sh -c dhclient -1 -v -pf /run/dhclient.eth0.pid -lf /var/lib/dhcp/dhclient.eth0.leases eth0 ? 1459 1460 472 312 ? -1 S 0 0:00 \_ dhclient -1 -v -pf /run/dhclient.eth0.pid -lf /var/lib/dhcp/dhclient.eth0.leases eth0 * as expected dhclient exits after one attempt, because DHCP-server is in boot process now and hasnt setup either network interfaces or started dhcpd yet, so noone can answer on DHCPDISCOVER requests, and dhclient leaves interface unconfigured; * after DHCP-server finally boots up and ready to serve DCHP-requests from clients, there are no other force to start again dhclient at DHCP-client side, besides the hands of DHCP-client's sysadmin directly on the client tty or via IP-KVM :( As outcome of this incident, i've losed remote access to Debian Wheezy host and forced to go to host tty and run dhclient by hand to set up ip-address from DHCP-server after it booted up (and to thought about providing power supply redundancy and failover again sure). I have looked in current ifupdown source (ifupdown_0.7.5.tar.gz) and changelog and hg repo and found the reason of such behaviour in commit http://anonscm.debian.org/hg/collab-maint/ifupdown/rev/7d5db1c9342a : there is hardcoded `-1` option for all `dhclient` invocations (for Linux, kFreeBSD and Hurd). I expect to configure dhclient's (and possibly other DHCP-clients' too) invocation options (including pid file and lease file name and place) f.e. in /etc/default/networking config file, with defaults provided both in the same file and in the source if variable is not set. If i will have such possibility out of the box, i will simply delete `-1` option from /etc/default/networking to allow my DHCP-client to request DHCP-server for ip-address indefinitely with retry timeouts provided via standart dhclient.conf file. Suggested solution can be implemented with adding into /etc/default/networking smth like: #DHCLIENT_PID_PATH=/run #DHCLIENT_LEASE_PATH=/var/lib/dhcp #DHCLIENT_ARGS="-1 -v" ... sourcing these variables from `/etc/default/networking` at ifup/ifdown executing and proper checks and variable substituions in ifupdown.nw. -- System Information: Debian Release: wheezy/sid APT prefers testing APT policy: (500, 'testing'), (1, 'unstable') Architecture: amd64 (x86_64) Kernel: Linux 3.2.0-4-amd64 (SMP w/2 CPU cores) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Versions of packages ifupdown depends on: ii dpkg 1.16.9 ii initscripts 2.88dsf-34 ii iproute 20120521-3 ii libc6 2.13-35 ii lsb-base 4.1+Debian8 ifupdown recommends no packages. Versions of packages ifupdown suggests: ii isc-dhcp-client [dhcp-client] 4.2.2.dfsg.1-5+deb70u2 ii net-tools 1.60-24.2 pn ppp <none> pn rdnssd <none> -- no debconf information -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org