[PATCH] s4:provision: Make gc._msdcs DNS entries A/AAAA records
Andrew Kroeger
andrew at id10ts.net
Sun Jun 13 09:48:31 MDT 2010
When adding an additional DC as a GC server, the new DC attempts to register its
own gc._msdcs records. If the existing gc._msdcs record is a CNAME, BIND fails
the update with the message "attempt to add non-CNAME alongside CNAME ignored",
and the new DC is not registered as a GC server.
The A & AAAA record types for gc._msdcs have been verified against the DNS
server of a W2K8 DC.
---
source4/scripting/python/samba/provision.py | 6 ++++++
source4/setup/provision.zone | 3 ++-
2 files changed, 8 insertions(+), 1 deletions(-)
diff --git a/source4/scripting/python/samba/provision.py b/source4/scripting/python/samba/provision.py
index dcf8462..60d7fc9 100644
--- a/source4/scripting/python/samba/provision.py
+++ b/source4/scripting/python/samba/provision.py
@@ -1516,16 +1516,20 @@ def create_zone_file(lp, logger, paths, targetdir, setup_path, dnsdomain,
if hostip6 is not None:
hostip6_base_line = " IN AAAA " + hostip6
hostip6_host_line = hostname + " IN AAAA " + hostip6
+ gc_msdcs_ip6_line = "gc._msdcs IN AAAA " + hostip6
else:
hostip6_base_line = ""
hostip6_host_line = ""
+ gc_msdcs_ip6_line = ""
if hostip is not None:
hostip_base_line = " IN A " + hostip
hostip_host_line = hostname + " IN A " + hostip
+ gc_msdcs_ip_line = "gc._msdcs IN A " + hostip
else:
hostip_base_line = ""
hostip_host_line = ""
+ gc_msdcs_ip_line = ""
dns_dir = os.path.dirname(paths.dns)
@@ -1553,6 +1557,8 @@ def create_zone_file(lp, logger, paths, targetdir, setup_path, dnsdomain,
"NTDSGUID": ntdsguid,
"HOSTIP6_BASE_LINE": hostip6_base_line,
"HOSTIP6_HOST_LINE": hostip6_host_line,
+ "GC_MSDCS_IP_LINE": gc_msdcs_ip_line,
+ "GC_MSDCS_IP6_LINE": gc_msdcs_ip6_line,
})
# note that we use no variable substitution on this file
diff --git a/source4/setup/provision.zone b/source4/setup/provision.zone
index 2c25fd0..2c8195b 100644
--- a/source4/setup/provision.zone
+++ b/source4/setup/provision.zone
@@ -14,7 +14,8 @@ ${HOSTIP_BASE_LINE}
;
${HOSTIP6_HOST_LINE}
${HOSTIP_HOST_LINE}
-gc._msdcs IN CNAME ${HOSTNAME}
+${GC_MSDCS_IP_LINE}
+${GC_MSDCS_IP6_LINE}
${NTDSGUID}._msdcs IN CNAME ${HOSTNAME}
;
; global catalog servers
--
1.7.0.1
--------------050705080506030409060200--
More information about the samba-technical
mailing list