summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--etc/inc/system.inc4
-rw-r--r--usr/local/www/services_dnsmasq.php2
-rw-r--r--usr/local/www/services_unbound.php2
-rw-r--r--usr/local/www/system.php2
4 files changed, 8 insertions, 2 deletions
diff --git a/etc/inc/system.inc b/etc/inc/system.inc
index 0e78128..80f6f32 100644
--- a/etc/inc/system.inc
+++ b/etc/inc/system.inc
@@ -103,7 +103,9 @@ function system_resolvconf_generate($dynupdate = false) {
if($syscfg['domain'])
$resolvconf = "domain {$syscfg['domain']}\n";
- if ((isset($config['dnsmasq']['enable']) || isset($config['unbound']['enable'])) && !isset($config['system']['dnslocalhost']))
+ if (((isset($config['dnsmasq']['enable']) && (empty($config['dnsmasq']['interface']) || in_array("lo0", explode(",", $config['dnsmasq']['interface']))))
+ || (isset($config['unbound']['enable'])) && (empty($config['unbound']['active_interface']) || in_array("lo0", explode(",", $config['unbound']['active_interface']))))
+ && !isset($config['system']['dnslocalhost']))
$resolvconf .= "nameserver 127.0.0.1\n";
if (isset($syscfg['dnsallowoverride'])) {
diff --git a/usr/local/www/services_dnsmasq.php b/usr/local/www/services_dnsmasq.php
index 75c1a8e..4033911 100644
--- a/usr/local/www/services_dnsmasq.php
+++ b/usr/local/www/services_dnsmasq.php
@@ -116,6 +116,8 @@ if ($_POST) {
// Relaod filter (we might need to sync to CARP hosts)
filter_configure();
+ /* Update resolv.conf in case the interface bindings exclude localhost. */
+ system_resolvconf_generate();
if ($retval == 0)
clear_subsystem_dirty('hosts');
diff --git a/usr/local/www/services_unbound.php b/usr/local/www/services_unbound.php
index a6a61aa..08a2e6e 100644
--- a/usr/local/www/services_unbound.php
+++ b/usr/local/www/services_unbound.php
@@ -110,6 +110,8 @@ if ($_POST) {
$savemsg = get_std_save_message($retval);
if ($retval == 0)
clear_subsystem_dirty('unbound');
+ /* Update resolv.conf in case the interface bindings exclude localhost. */
+ system_resolvconf_generate();
}
}
diff --git a/usr/local/www/system.php b/usr/local/www/system.php
index be5446e..a5e2b17 100644
--- a/usr/local/www/system.php
+++ b/usr/local/www/system.php
@@ -402,7 +402,7 @@ include("head.inc");
<?=gettext("Do not use the DNS Forwarder as a DNS server for the firewall"); ?>
</strong>
<br />
- <?=gettext("By default localhost (127.0.0.1) will be used as the first DNS server where the DNS forwarder is enabled, so system can use the DNS forwarder to perform lookups. ".
+ <?=gettext("By default localhost (127.0.0.1) will be used as the first DNS server where the DNS Forwarder or DNS Resolver is enabled and set to listen on Localhost, so system can use the local DNS service to perform lookups. ".
"Checking this box omits localhost from the list of DNS servers."); ?>
</span>
</td>
OpenPOWER on IntegriCloud