dhcp service example: cater for servers hot giving subnet and/or router
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
parent
779f96a24c
commit
2feaba1d8d
@ -26,6 +26,25 @@ exec 2>&1
|
||||
test "$interface" || exit 1
|
||||
test "$ip" || exit 1
|
||||
|
||||
# some servers do not return subnet option.
|
||||
# guess it for standard private networks.
|
||||
if ! test "$mask"; then
|
||||
if test "$ip" != "${ip#192.168.}"; then
|
||||
mask=16
|
||||
elif test "$ip" != "${ip#172.16.}"; then
|
||||
mask=12
|
||||
# repeat for each in 172.17. - 172.31. range?
|
||||
elif test "$ip" != "${ip#10.}"; then
|
||||
mask=8
|
||||
fi
|
||||
fi
|
||||
|
||||
# some servers do not return router option.
|
||||
# assume DHCP server is the router.
|
||||
if ! test "$router"; then
|
||||
test "$serverid" && router="$serverid"
|
||||
fi
|
||||
|
||||
{
|
||||
echo "let cfg=cfg+1"
|
||||
test "$interface" && echo "if[\$cfg]='$interface'"
|
||||
|
Loading…
Reference in New Issue
Block a user