mirror of
https://github.com/openwrt/openwrt.git
synced 2025-03-23 12:35:33 +00:00
odhcpd: setup dhcpv4 server automagically
Automatically setup dhcpv4 server just like it's done for dhcpv6. To select whether odhcpd or dnsmasq are serving DHCPv4 requests there still is the 'maindhcp' option. To make things less confusing, make sure things really work out-of-the-box in case dnsmasq is not even installed at the time the uci-defaults script is being run. Signed-off-by: Daniel Golle <daniel@makrotopia.org> Signed-off-by: maurerr <mariusd84@gmail.com>
This commit is contained in:
parent
3c71caac76
commit
561ba96bdf
@ -8,7 +8,7 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=odhcpd
|
||||
PKG_RELEASE:=1
|
||||
PKG_RELEASE:=$(AUTORELEASE)
|
||||
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_URL=$(PROJECT_GIT)/project/odhcpd.git
|
||||
|
@ -11,20 +11,40 @@ json_get_vars protocol
|
||||
json_select ..
|
||||
json_select ..
|
||||
|
||||
ODHCPDONLY=0
|
||||
V4MODE=disabled
|
||||
V6MODE=disabled
|
||||
|
||||
[ -e /usr/sbin/dnsmasq ] || ODHCPDONLY=1
|
||||
|
||||
case "$protocol" in
|
||||
# only enable server mode on statically addressed lan ports
|
||||
"static") [ -e /proc/sys/net/ipv6 ] && MODE=server || MODE=disabled ;;
|
||||
*) MODE=disabled ;;
|
||||
"static")
|
||||
V4MODE=server
|
||||
[ -e /proc/sys/net/ipv6 ] && V6MODE=server
|
||||
;;
|
||||
esac
|
||||
|
||||
uci get dhcp.lan 1>/dev/null 2>/dev/null || {
|
||||
uci batch <<EOF
|
||||
set dhcp.lan=dhcp
|
||||
set dhcp.lan.interface='lan'
|
||||
set dhcp.lan.start='100'
|
||||
set dhcp.lan.limit='150'
|
||||
set dhcp.lan.leasetime='12h'
|
||||
set dhcp.lan.domain='lan'
|
||||
EOF
|
||||
}
|
||||
|
||||
uci batch <<EOF
|
||||
set dhcp.odhcpd=odhcpd
|
||||
set dhcp.odhcpd.maindhcp=0
|
||||
set dhcp.odhcpd.maindhcp=$ODHCPDONLY
|
||||
set dhcp.odhcpd.leasefile=/tmp/hosts/odhcpd
|
||||
set dhcp.odhcpd.leasetrigger=/usr/sbin/odhcpd-update
|
||||
set dhcp.odhcpd.loglevel=4
|
||||
set dhcp.lan.dhcpv6=$MODE
|
||||
set dhcp.lan.ra=$MODE
|
||||
set dhcp.lan.dhcpv4=$V4MODE
|
||||
set dhcp.lan.dhcpv6=$V6MODE
|
||||
set dhcp.lan.ra=$V6MODE
|
||||
set dhcp.lan.ra_slaac=1
|
||||
add_list dhcp.lan.ra_flags=managed-config
|
||||
add_list dhcp.lan.ra_flags=other-config
|
||||
|
Loading…
x
Reference in New Issue
Block a user