[PATCH] dns: dnsmasq plugin: update command-line parameters for starting dnsmasq

Drop --strict-order; dnsmasq is intelligent enough to ask nameservers in
an order that makes the best of possibly slow nameservers (or broken ones),
and interrogating them in strict order breaks this.

Add --no-hosts: by default dnsmasq will read /etc/hosts as a list of things
to resolve statically; this is something we want to avoid as nsswitch.conf
already lists files as the first data store to look at; where the entries
in /etc/hosts will already have been returned if that's what the user wants
to see. If the /etc/hosts file then changes, dnsmasq would have to be restarted
before the user would get the new value resolved externally. Avoid this, let
/etc/hosts override DNS entries normally through the resolver and show
changes as soon as the file is updated.
 src/dns-manager/nm-dns-dnsmasq.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/src/dns-manager/nm-dns-dnsmasq.c b/src/dns-manager/nm-dns-dnsmasq.c
index e44513b..6314438 100644
--- a/src/dns-manager/nm-dns-dnsmasq.c
+++ b/src/dns-manager/nm-dns-dnsmasq.c
@@ -302,7 +302,7 @@ update (NMDnsPlugin *plugin,
 	argv[0] = find_dnsmasq ();
 	argv[1] = "--no-resolv";  /* Use only commandline */
 	argv[2] = "--keep-in-foreground";
-	argv[3] = "--strict-order";
+	argv[3] = "--no-hosts"; /* don't use /etc/hosts to resolve */
 	argv[4] = "--bind-interfaces";
 	argv[5] = "--pid-file=" PIDFILE;
 	argv[6] = "--listen-address="; /* Should work for both 4 and 6 */

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]