diff --git a/package/network/services/dnsmasq/Makefile b/package/network/services/dnsmasq/Makefile index b94f222fa5..784912a9e0 100644 --- a/package/network/services/dnsmasq/Makefile +++ b/package/network/services/dnsmasq/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=dnsmasq PKG_VERSION:=2.77rc3 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=http://thekelleys.org.uk/dnsmasq/release-candidates diff --git a/package/network/services/dnsmasq/files/dnsmasq.init b/package/network/services/dnsmasq/files/dnsmasq.init index 30fec7a4ee..5221db46f6 100644 --- a/package/network/services/dnsmasq/files/dnsmasq.init +++ b/package/network/services/dnsmasq/files/dnsmasq.init @@ -470,6 +470,7 @@ dhcp_add() { config_get ra "$cfg" ra config_get ra_management "$cfg" ra_management config_get ra_preference "$cfg" ra_preference + config_get dns "$cfg" dns config_list_foreach "$cfg" "interface_name" append_interface_name "$ifname" @@ -539,6 +540,15 @@ dhcp_add() { xappend "--dhcp-range=$nettag$dhcp6range,constructor:$ifname,slaac,ra-names,$leasetime" ;; esac + + if [ -n "$dns" ]; then + dnss="" + for d in $dns; do append dnss "[$d]" ","; done + else + dnss="[::]" + fi + + dhcp_option_append "option6:dns-server,$dnss" "$networkid" fi dhcp_option_add "$cfg" "$networkid"