dhcrelay4: add support for up/downstream interfaces
dhcrelay has the ability to monitor interfaces for requests in a single direction only rather than listening to all interfaces for requests. Doing this allows one to suppress the duplication of having the relay forward requests from the same network that the DHCP server is on. Signed-off-by: Brian J. Murrell <brian@interlinx.bc.ca>
This commit is contained in:
parent
c750f17fff
commit
93420826ab
|
@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk
|
|||
PKG_NAME:=isc-dhcp
|
||||
UPSTREAM_NAME:=dhcp
|
||||
PKG_VERSION:=4.4.0
|
||||
PKG_RELEASE:=3
|
||||
PKG_RELEASE:=4
|
||||
|
||||
PKG_LICENSE:=BSD-3-Clause
|
||||
PKG_LICENSE_FILES:=LICENSE
|
||||
|
|
|
@ -7,6 +7,8 @@ config dhcrelay ipv4
|
|||
|
||||
# network interfaces to listen on (e.g. lan or wan)
|
||||
option 'interfaces' ''
|
||||
option 'upstream_interfaces' ''
|
||||
option 'downstream_interfaces' ''
|
||||
|
||||
# What to do about packets that already have a relay option:
|
||||
# 'append': Forward and append our own relay option
|
||||
|
|
|
@ -25,6 +25,18 @@ start() {
|
|||
append args "-i $ifname"
|
||||
fi
|
||||
done
|
||||
config_get interfaces ipv4 upstream_interfaces
|
||||
for net in $interfaces; do
|
||||
if network_get_device ifname "$net"; then
|
||||
append args "-iu $ifname"
|
||||
fi
|
||||
done
|
||||
config_get interfaces ipv4 downstream_interfaces
|
||||
for net in $interfaces; do
|
||||
if network_get_device ifname "$net"; then
|
||||
append args "-id $ifname"
|
||||
fi
|
||||
done
|
||||
|
||||
# link selection sub-option (RFC3527)
|
||||
local link_selection
|
||||
|
|
Loading…
Reference in New Issue