diff options
| -rw-r--r-- | package/dnsmasq/files/dnsmasq.init | 14 | 
1 files changed, 10 insertions, 4 deletions
| diff --git a/package/dnsmasq/files/dnsmasq.init b/package/dnsmasq/files/dnsmasq.init index c39e58417..cd5697c77 100644 --- a/package/dnsmasq/files/dnsmasq.init +++ b/package/dnsmasq/files/dnsmasq.init @@ -2,6 +2,7 @@  # Copyright (C) 2007 OpenWrt.org  START=60 +DNS_SERVERS=""  dhcp_calc() {  	local ip="$1" @@ -173,6 +174,11 @@ dhcp_add() {  	config_get ifname "$net" ifname  	[ -n "$ifname" ] || return 0 +	config_get dnsserver "$net" dns +	[ -n "$dnsserver" ] && { +		DNS_SERVERS="$DNS_SERVERS $dnsserver" +	} +  	append_bool "$cfg" ignore "-I $ifname"  	config_get proto "$net" proto @@ -234,10 +240,10 @@ start() {  	/usr/sbin/dnsmasq $args && {  		rm -f /tmp/resolv.conf -		cat > /tmp/resolv.conf <<EOF -nameserver 127.0.0.1 -search lan -EOF +		DNS_SERVERS="$DNS_SERVERS 127.0.0.1" +		for DNS_SERVER in $DNS_SERVERS ; do +			echo "nameserver $DNS_SERVER" >> /tmp/resolv.conf +		done	  	}  } | 
