From owner-freebsd-current@FreeBSD.ORG Sat Sep 24 04:49:49 2005 Return-Path: X-Original-To: current@freebsd.org Delivered-To: freebsd-current@FreeBSD.ORG Received: from [127.0.0.1] (localhost [127.0.0.1]) by hub.freebsd.org (Postfix) with ESMTP id 3739316A41F for ; Sat, 24 Sep 2005 04:49:49 +0000 (GMT) (envelope-from davidxu@freebsd.org) Message-ID: <4334DAE7.8020207@freebsd.org> Date: Sat, 24 Sep 2005 12:49:43 +0800 From: David Xu User-Agent: Mozilla/5.0 (X11; U; FreeBSD i386; en-US; rv:1.7.11) Gecko/20050911 X-Accept-Language: en-us, en MIME-Version: 1.0 To: current@freebsd.org Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: Subject: broken dhclient-script in TIMEOUT case X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 24 Sep 2005 04:49:49 -0000 It seems script /sbin/dhclient-script is broken in TIMEOUT case. first, the command parameter is wrong for our ping program, it passes -w parameter to ping, but our ping can only accept -t, if ping -q -c 1 -w 1 "$1"; then second, the statement: eval "ifconfig $interface inet -alias $new_ip_address $medium" immediately removes the address just configured, result is although I have setup a lease section, but I can not set the static ip address after dhcp server timeouts. Patch is below: ------------- timeout 5; retry 60; reboot 10; select-timeout 5; initial-interval 2; #reject 192.33.137.209; script "/sbin/dhclient-script"; interface "bge0" { send host-name "davidxu-t43.my.domain"; # send dhcp-client-identifier 1:0:a0:24:ab:fb:9c; send dhcp-lease-time 3600; # supersede domain-name "netease.com"; prepend domain-name-servers 127.0.0.1; request subnet-mask, broadcast-address, time-offset, routers, domain-name, domain-name-servers, host-name; require subnet-mask, domain-name-servers; # media "media 10baseT/UTP", "media 10base2/BNC"; } lease { interface "bge0"; fixed-address 192.168.1.16; option subnet-mask 255.255.255.0; option routers 192.168.1.6; renew 0 2006/1/1 12:00:00; rebind 0 2006/1/1 12:15:00; expire 0 2006/1/1 12:30:00; } --------------- my sample dhclient.conf: timeout 5; retry 60; reboot 10; select-timeout 5; initial-interval 2; #reject 192.33.137.209; script "/sbin/dhclient-script"; interface "bge0" { send host-name "davidxu-t43.my.domain"; # send dhcp-client-identifier 1:0:a0:24:ab:fb:9c; send dhcp-lease-time 3600; # supersede domain-name "netease.com"; prepend domain-name-servers 127.0.0.1; request subnet-mask, broadcast-address, time-offset, routers, domain-name, domain-name-servers, host-name; require subnet-mask, domain-name-servers; # media "media 10baseT/UTP", "media 10base2/BNC"; } lease { interface "bge0"; fixed-address 192.168.1.16; option subnet-mask 255.255.255.0; option routers 192.168.1.6; renew 0 2006/1/1 12:00:00; rebind 0 2006/1/1 12:15:00; expire 0 2006/1/1 12:30:00; }