diff -u NetworkManager-0.9.8.10.orig/src/dnsmasq-manager/Makefile.am NetworkManager-0.9.8.10/src/dnsmasq-manager/Makefile.am
--- NetworkManager-0.9.8.10.orig/src/dnsmasq-manager/Makefile.am	2014-04-24 09:18:15.000000000 -0600
+++ NetworkManager-0.9.8.10/src/dnsmasq-manager/Makefile.am	2014-05-09 12:47:45.117262490 -0600
@@ -7,7 +7,8 @@
 	-I${top_srcdir}/src \
 	-I${top_srcdir}/include \
 	$(GLIB_CFLAGS) \
-	-DLOCALSTATEDIR=\"$(localstatedir)\"
+	-DLOCALSTATEDIR=\"$(localstatedir)\" \
+	-DNMCONFDIR=\"$(nmconfdir)\"
 
 libdnsmasq_manager_la_SOURCES = \
 	nm-dnsmasq-manager.h \
diff -u NetworkManager-0.9.8.10.orig/src/dnsmasq-manager/Makefile.in NetworkManager-0.9.8.10/src/dnsmasq-manager/Makefile.in
--- NetworkManager-0.9.8.10.orig/src/dnsmasq-manager/Makefile.in	2014-04-24 09:24:21.000000000 -0600
+++ NetworkManager-0.9.8.10/src/dnsmasq-manager/Makefile.in	2014-05-09 13:22:14.780753624 -0600
@@ -1,4 +1,4 @@
-# Makefile.in generated by automake 1.13.4 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994-2013 Free Software Foundation, Inc.
@@ -422,7 +422,8 @@
 	-I${top_srcdir}/src \
 	-I${top_srcdir}/include \
 	$(GLIB_CFLAGS) \
-	-DLOCALSTATEDIR=\"$(localstatedir)\"
+	-DLOCALSTATEDIR=\"$(localstatedir)\" \
+	-DNMCONFDIR=\"$(nmconfdir)\"
 
 libdnsmasq_manager_la_SOURCES = \
 	nm-dnsmasq-manager.h \
@@ -495,14 +496,14 @@
 @am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(COMPILE) -c $<
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
 
 .c.obj:
 @am__fastdepCC_TRUE@	$(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
 @am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'`
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
 
 .c.lo:
 @am__fastdepCC_TRUE@	$(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
diff -u NetworkManager-0.9.8.10.orig/src/dnsmasq-manager/nm-dnsmasq-manager.c NetworkManager-0.9.8.10/src/dnsmasq-manager/nm-dnsmasq-manager.c
--- NetworkManager-0.9.8.10.orig/src/dnsmasq-manager/nm-dnsmasq-manager.c	2014-04-24 09:18:15.000000000 -0600
+++ NetworkManager-0.9.8.10/src/dnsmasq-manager/nm-dnsmasq-manager.c	2014-05-09 15:04:21.998690640 -0600
@@ -32,6 +32,9 @@
 #include "nm-glib-compat.h"
 #include "nm-posix-signals.h"
 
+#define DMFILE NMCONFDIR "/nmdnsmasq.conf"
+#define DMCONFCMD "--conf-file=" DMFILE
+
 typedef struct {
 	char *iface;
 	char *pidfile;
@@ -278,10 +281,16 @@
 	/* dnsmasq may read from it's default config file location, which if that
 	 * location is a valid config file, it will combine with the options here
 	 * and cause undesirable side-effects.  Like sending bogus IP addresses
-	 * as the gateway or whatever.  So tell dnsmasq not to use any config file
-	 * at all.
+	 * as the gateway or whatever.
+	 *
+	 * But then, dnsmasq IPv6 server configuration can be complex.  So allow
+	 * dnsmasq to use a NetworkManager specific config file, if it exists.
 	 */
-	nm_cmd_line_add_string (cmd, "--conf-file");
+
+	if (g_file_test (DMFILE,G_FILE_TEST_IS_REGULAR))
+		nm_cmd_line_add_string (cmd, DMCONFCMD);
+	else
+		nm_cmd_line_add_string (cmd, "--conf-file");
 
 	nm_cmd_line_add_string (cmd, "--no-hosts");
 	nm_cmd_line_add_string (cmd, "--keep-in-foreground");
