2005-07-25 11:11:12 +03:00
|
|
|
#!/bin/sh
|
|
|
|
. /etc/functions.sh
|
2005-10-17 22:42:58 +03:00
|
|
|
. /etc/network.overrides
|
|
|
|
[ "$FAILSAFE" != "true" -a -e /etc/config/network ] && . /etc/config/network
|
2005-07-25 11:11:12 +03:00
|
|
|
|
|
|
|
# interface to use for DHCP
|
|
|
|
iface=lan
|
|
|
|
|
|
|
|
ifname=$(nvram get ${iface}_ifname)
|
|
|
|
ipaddr=$(nvram get ${iface}_ipaddr)
|
|
|
|
netmask=$(nvram get ${iface}_netmask)
|
|
|
|
|
|
|
|
# check for existing DHCP server
|
|
|
|
udhcpc -n -q -R -s /bin/true -i $ifname >&- || {
|
|
|
|
|
|
|
|
ipaddr=$(ip2int $ipaddr)
|
|
|
|
netmask=$(ip2int ${netmask:-255.255.255.0})
|
|
|
|
network=$((ipaddr&netmask))
|
|
|
|
|
|
|
|
start=$(nvram get dhcp_start)
|
|
|
|
start=$((network+${start:-100}))
|
|
|
|
end=$(nvram get dhcp_num)
|
|
|
|
end=$((start+${end:-150}))
|
|
|
|
|
2005-09-07 14:34:05 +03:00
|
|
|
wanproto=$(nvram get wan_proto)
|
|
|
|
[ -z "$wanproto" -o "$wanproto" = "none" ] || wanif=$(nvram get wan_ifname)
|
|
|
|
|
2006-01-11 06:26:46 +02:00
|
|
|
args="-K -F $(int2ip $start),$(int2ip $end),$(int2ip $netmask),12h ${wanif:+-I ${wanif} }"
|
2005-07-25 11:11:12 +03:00
|
|
|
}
|
|
|
|
dnsmasq ${args}
|