[OpenWrt-Devel] [PATCH] dnsmasq: add dhcp relay option
dbugnar
danutbug at gmail.com
Fri Jan 8 10:24:20 EST 2016
Signed-off-by: dbugnar <dnbugnar at ocedo.com>
---
package/network/services/dnsmasq/files/dhcp.conf | 6 ++++++
package/network/services/dnsmasq/files/dnsmasq.init | 19 +++++++++++++++++++
2 files changed, 25 insertions(+)
diff --git a/package/network/services/dnsmasq/files/dhcp.conf b/package/network/services/dnsmasq/files/dhcp.conf
index 362b90a..7a66b44 100644
--- a/package/network/services/dnsmasq/files/dhcp.conf
+++ b/package/network/services/dnsmasq/files/dhcp.conf
@@ -30,3 +30,9 @@ config dhcp lan
config dhcp wan
option interface wan
option ignore 1
+
+config relay
+ option local_addr '192.168.1.1'
+ option server_addr '0.0.0.0'
+ option interface 'eth0'
+
diff --git a/package/network/services/dnsmasq/files/dnsmasq.init b/package/network/services/dnsmasq/files/dnsmasq.init
index 3ef2b3d..ac45d1b 100644
--- a/package/network/services/dnsmasq/files/dnsmasq.init
+++ b/package/network/services/dnsmasq/files/dnsmasq.init
@@ -538,6 +538,24 @@ dhcp_hostrecord_add() {
xappend "--host-record=$record"
}
+dhcp_relay_add() {
+ local cfg="$1"
+ local local_addr server_addr interface
+
+ config_get local_addr "$cfg" local_addr
+ [ -n "$local_addr" ] || return 0
+
+ config_get server_addr "$cfg" server_addr
+ [ -n "$server_addr" ] || return 0
+
+ config_get interface "$cfg" interface
+ if [ -z "$interface" ]; then
+ xappend "--dhcp-relay=$local_addr,$server_addr"
+ else
+ xappend "--dhcp-relay=$local_addr,$server_addr,$interface"
+ fi
+}
+
service_triggers()
{
procd_add_reload_trigger "dhcp"
@@ -597,6 +615,7 @@ start_service() {
config_foreach dhcp_subscrid_add subscrid
config_foreach dhcp_domain_add domain
config_foreach dhcp_hostrecord_add hostrecord
+ config_foreach dhcp_relay_add relay
# add own hostname
local lanaddr
--
2.1.4
_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
More information about the openwrt-devel
mailing list