factor: factor2 variable is unused now, drop it
[oweals/busybox.git] / examples / udhcp / sample.renew
index 4dce8486a618cd326f6a3a5ca36bee215f8cd199..efd98cf15d7693076844f04553c480824ce4c480 100755 (executable)
@@ -1,5 +1,5 @@
 #!/bin/sh
-# Sample udhcpc bound script
+# Sample udhcpc renew script
 
 RESOLV_CONF="/etc/udhcpc/resolv.conf"
 
@@ -18,11 +18,18 @@ then
        metric=0
        for i in $router
        do
+               if [ "$subnet" = "255.255.255.255" ]; then
+                       # special case for /32 subnets:
+                       # /32 instructs kernel to always use routing for all outgoing packets
+                       # (they can never be sent to local subnet - there is no local subnet for /32).
+                       # Used in datacenters, avoids the need for private ip-addresses between two hops.
+                       /sbin/ip route add $i dev $interface
+               fi
                /sbin/route add default gw $i dev $interface metric $((metric++))
        done
 fi
 
-# Only replace resolv.conf is we have at least one DNS server
+# Only replace resolv.conf if we have at least one DNS server
 if [ -n "$dns" ]
 then
        echo -n > $RESOLV_CONF