diff options
-rw-r--r-- | examples/udhcp/simple.script | 23 |
1 files changed, 15 insertions, 8 deletions
diff --git a/examples/udhcp/simple.script b/examples/udhcp/simple.script index 98ebc15..ae09316 100644 --- a/examples/udhcp/simple.script +++ b/examples/udhcp/simple.script @@ -5,35 +5,42 @@ [ -z "$1" ] && echo "Error: should be called from udhcpc" && exit 1 RESOLV_CONF="/etc/resolv.conf" -[ -n "$broadcast" ] && BROADCAST="broadcast $broadcast" +NETMASK="" [ -n "$subnet" ] && NETMASK="netmask $subnet" +BROADCAST="broadcast +" +[ -n "$broadcast" ] && BROADCAST="broadcast $broadcast" case "$1" in deconfig) - /sbin/ifconfig $interface 0.0.0.0 + echo "Setting IP address 0.0.0.0 on $interface" + ifconfig $interface 0.0.0.0 ;; renew|bound) - /sbin/ifconfig $interface $ip $BROADCAST $NETMASK + echo "Setting IP address $ip on $interface" + ifconfig $interface $ip $NETMASK $BROADCAST if [ -n "$router" ] ; then - echo "deleting routers" + echo "Deleting routers" while route del default gw 0.0.0.0 dev $interface ; do : done metric=0 for i in $router ; do + echo "Adding router $i" route add default gw $i dev $interface metric $((metric++)) done fi - echo -n > $RESOLV_CONF - [ -n "$domain" ] && echo search $domain >> $RESOLV_CONF + echo "Recreating $RESOLV_CONF" + echo -n > $RESOLV_CONF-$$ + [ -n "$domain" ] && echo search $domain >> $RESOLV_CONF-$$ for i in $dns ; do - echo adding dns $i - echo nameserver $i >> $RESOLV_CONF + echo " Adding DNS server $i" + echo nameserver $i >> $RESOLV_CONF-$$ done + mv $RESOLV_CONF-$$ $RESOLV_CONF ;; esac |