Hi, i wish to share a simple patch to bypass the problem showed in my previous mail. the patch fix 2 problems: 1- with the original "/sbin/dhclient-script" you don't get the default gateway if it is on a different subnet then your IP.
2- when you put down the interface with "ifconfig rl0 down" and then you rerun "dhclient rl0" , you don't get the IP configured and with a little of debug i found the the dhclient-script execute: ifconfig rl0 inet 84.223.120.116 netmask 255.255.255.255 broadcast 84.223.120.116 ifconfig: SIOCAIFADDR: File exists the problem is that you have a route that conflict with the command: 84.223.120.116/32 link#3 UC 0 0 - rl0 the route is added the first time and didn't get deleted on a FAIL event (the env is not set by dhclient, i don't know why). the second time you run "dhclient rl0" the old_IP and the new_IP is the same and so the delete_old_routes is not executed. i corrected the problem commenting out the line: route add $new_ip_address 127.0.0.1 >/dev/null 2>&1 since when you normally configure a static IP address you don't configure such route (please if you know a reason to leave this route let me know). here the patch to /sbin/dhclient-script: # diff -u /sbin/dhclient-script dhclient-script.patched --- /sbin/dhclient-script Sun Mar 11 02:39:21 2007 +++ dhclient-script.patched Mon May 28 22:48:25 2007 @@ -37,7 +37,7 @@ $medium # XXX Original TIMEOUT code did not do this unless $new_routers was set? - route add $new_ip_address 127.0.0.1 >/dev/null 2>&1 + #route add $new_ip_address 127.0.0.1 >/dev/null 2>&1 } delete_old_alias() { @@ -76,6 +76,9 @@ for router in $new_routers; do if [ "$new_ip_address" = "$router" ]; then route add default -iface $router >/dev/null 2>&1 + elif [ "$new_subnet_mask" = "255.255.255.255" ]; then + route add -host $router -interface -link $interface -expire 1 >> /tmp/dhcp.log + route add default $router >> /tmp/dhcp.log else route add default $router >/dev/null 2>&1 fi EOF regards Luigi On 5/22/07, Luigi Tarenga <[EMAIL PROTECTED]> wrote:
hi all, i have an Adsl internet connection with the tiscali provider and i just solved my problem of getting the IP address on my openbsd machine. i wish to share my experience here, feel free to correct my english :P
[...snip...]
you can try without the 2 "route add" command if it works, i had to use them because the gateway is on a different subnet of my public IP and the dhclient command doesn't configure it automatically (anyone know another solution to this?).