dnsmasq: introduce "add_local_hostname" and "add_local_domain" options - add_local_domain defaults to 1 and controls whether the local domain is written as search directive to the local resolv.conf - add_local_hostname defaults to 1 and controls whether A and PTR records are created automatically for the local hostname These change supersedes http://patchwork.openwrt.org/patch/2207/ and http://patchwork.openwrt.org/patch/2208/
SVN-Revision: 32570
This commit is contained in:
parent
c49f8068cd
commit
faab751760
1 changed files with 11 additions and 3 deletions
|
@ -1,5 +1,5 @@
|
||||||
#!/bin/sh /etc/rc.common
|
#!/bin/sh /etc/rc.common
|
||||||
# Copyright (C) 2007 OpenWrt.org
|
# Copyright (C) 2007-2012 OpenWrt.org
|
||||||
|
|
||||||
START=60
|
START=60
|
||||||
|
|
||||||
|
@ -8,6 +8,9 @@ SERVICE_USE_PID=1
|
||||||
DNS_SERVERS=""
|
DNS_SERVERS=""
|
||||||
DOMAIN=""
|
DOMAIN=""
|
||||||
|
|
||||||
|
ADD_LOCAL_DOMAIN=1
|
||||||
|
ADD_LOCAL_HOSTNAME=1
|
||||||
|
|
||||||
CONFIGFILE="/var/etc/dnsmasq.conf"
|
CONFIGFILE="/var/etc/dnsmasq.conf"
|
||||||
|
|
||||||
xappend() {
|
xappend() {
|
||||||
|
@ -111,6 +114,9 @@ dnsmasq() {
|
||||||
|
|
||||||
config_get DOMAIN "$cfg" domain
|
config_get DOMAIN "$cfg" domain
|
||||||
|
|
||||||
|
config_get_bool ADD_LOCAL_DOMAIN "$cfg" add_local_domain 1
|
||||||
|
config_get_bool ADD_LOCAL_HOSTNAME "$cfg" add_local_hostname 1
|
||||||
|
|
||||||
config_get_bool readethers "$cfg" readethers
|
config_get_bool readethers "$cfg" readethers
|
||||||
[ "$readethers" = "1" -a \! -e "/etc/ethers" ] && touch /etc/ethers
|
[ "$readethers" = "1" -a \! -e "/etc/ethers" ] && touch /etc/ethers
|
||||||
|
|
||||||
|
@ -490,14 +496,16 @@ start() {
|
||||||
echo >> $CONFIGFILE
|
echo >> $CONFIGFILE
|
||||||
|
|
||||||
# add own hostname
|
# add own hostname
|
||||||
[ -z "$lanaddr" ] || {
|
[ $ADD_LOCAL_HOSTNAME -eq 1 ] && [ -n "$lanaddr" ] && {
|
||||||
local hostname="$(uci_get system.@system[0].hostname)"
|
local hostname="$(uci_get system.@system[0].hostname)"
|
||||||
dhcp_domain_add "" "${hostname:-OpenWrt}" "$lanaddr"
|
dhcp_domain_add "" "${hostname:-OpenWrt}" "$lanaddr"
|
||||||
}
|
}
|
||||||
|
|
||||||
service_start /usr/sbin/dnsmasq -C $CONFIGFILE && {
|
service_start /usr/sbin/dnsmasq -C $CONFIGFILE && {
|
||||||
rm -f /tmp/resolv.conf
|
rm -f /tmp/resolv.conf
|
||||||
[ -n "$DOMAIN" ] && echo "search $DOMAIN" >> /tmp/resolv.conf
|
[ $ADD_LOCAL_DOMAIN -eq 1 ] && [ -n "$DOMAIN" ] && {
|
||||||
|
echo "search $DOMAIN" >> /tmp/resolv.conf
|
||||||
|
}
|
||||||
DNS_SERVERS="$DNS_SERVERS 127.0.0.1"
|
DNS_SERVERS="$DNS_SERVERS 127.0.0.1"
|
||||||
for DNS_SERVER in $DNS_SERVERS ; do
|
for DNS_SERVER in $DNS_SERVERS ; do
|
||||||
echo "nameserver $DNS_SERVER" >> /tmp/resolv.conf
|
echo "nameserver $DNS_SERVER" >> /tmp/resolv.conf
|
||||||
|
|
Loading…
Reference in a new issue