mirror of
https://salsa.debian.org/freeipa-team/freeipa.git
synced 2026-11-02 20:30:26 -06:00
dns: Add --auto-reverse option.
Introducing '--auto-reverse' option. When specified reverse records for all server's IP addresses are checked and when record nor reverse zone does not exist reverse zone is created. Reviewed-By: Petr Spacek <pspacek@redhat.com>
This commit is contained in:
1 parent
8d19da49c4
commit
1534061d9b
5 files changed
+28
-1
No files matched your search
@@ -57,6 +57,8 @@ def parse_options():
|
||||
help="The reverse DNS zone to use. This option can be used multiple times")
|
||||
parser.add_option("--no-reverse", dest="no_reverse", action="store_true",
|
||||
default=False, help="Do not create new reverse DNS zone")
|
||||
parser.add_option("--auto-reverse", dest="auto_reverse", action="store_true",
|
||||
default=False, help="Create necessary DNS zones")
|
||||
parser.add_option("--allow-zone-overlap", dest="allow_zone_overlap",
|
||||
action="store_true", default=False, help="Create DNS "
|
||||
"zone even if it already exists")
|
||||
@@ -90,6 +92,8 @@ def parse_options():
|
||||
parser.error("You cannot specify a --forwarder option together with --no-forwarders")
|
||||
elif options.reverse_zones and options.no_reverse:
|
||||
parser.error("You cannot specify a --reverse-zone option together with --no-reverse")
|
||||
elif options.auto_reverse and options.no_reverse:
|
||||
parser.error("You cannot specify a --auto-reverse option together with --no-reverse")
|
||||
|
||||
if options.unattended:
|
||||
if not options.forwarders and not options.no_forwarders:
|
||||
|
||||
@@ -47,6 +47,9 @@ The reverse DNS zone to use. This option can be used multiple times to specify m
|
||||
\fB\-\-no\-reverse\fR
|
||||
Do not create new reverse DNS zone. If used on a replica and a reverse DNS zone already exists for the subnet, it will be used.
|
||||
.TP
|
||||
\fB\-\-auto\-reverse\fR
|
||||
Try to resolve reverse records and reverse zones for server IP addresses and if neither is resolvable creates these reverse zones.
|
||||
.TP
|
||||
\fB\-\-no\-dnssec\-validation\fR
|
||||
Disable DNSSEC validation on this server.
|
||||
.TP
|
||||
|
||||
@@ -164,6 +164,9 @@ The reverse DNS zone to use. This option can be used multiple times to specify m
|
||||
\fB\-\-no\-reverse\fR
|
||||
Do not create reverse DNS zone
|
||||
.TP
|
||||
\fB\-\-auto\-reverse\fR
|
||||
Try to resolve reverse records and reverse zones for server IP addresses and if neither is resolvable creates these reverse zones.
|
||||
.TP
|
||||
\fB\-\-zonemgr\fR
|
||||
The e\-mail address of the DNS zone manager. Defaults to hostmaster@DOMAIN
|
||||
.TP
|
||||
|
||||
@@ -482,7 +482,10 @@ def check_reverse_zones(ip_addresses, reverse_zones, options, unattended,
|
||||
|
||||
# create reverse zone for IP addresses that does not have one
|
||||
for (ip, rz) in get_auto_reverse_zones(ips_missing_reverse):
|
||||
if unattended:
|
||||
if options.auto_reverse:
|
||||
root_logger.info("Reverse zone %s will be created" % rz)
|
||||
checked_reverse_zones.append(rz)
|
||||
elif unattended:
|
||||
root_logger.warning("Missing reverse record for IP address %s"
|
||||
% ip)
|
||||
else:
|
||||
|
||||
@@ -197,6 +197,11 @@ class BaseServerDNS(common.Installable, core.Group, core.Composite):
|
||||
description="Do not create new reverse DNS zone",
|
||||
)
|
||||
|
||||
auto_reverse = Knob(
|
||||
bool, False,
|
||||
description="Create necessary reverse zones",
|
||||
)
|
||||
|
||||
no_dnssec_validation = Knob(
|
||||
bool, False,
|
||||
description="Disable DNSSEC validation",
|
||||
@@ -424,6 +429,10 @@ class BaseServer(common.Installable, common.Interactive, core.Composite):
|
||||
raise RuntimeError(
|
||||
"You cannot specify a --reverse-zone option without the "
|
||||
"--setup-dns option")
|
||||
if self.dns.auto_reverse:
|
||||
raise RuntimeError(
|
||||
"You cannot specify a --auto-reverse option without the "
|
||||
"--setup-dns option")
|
||||
if self.dns.no_reverse:
|
||||
raise RuntimeError(
|
||||
"You cannot specify a --no-reverse option without the "
|
||||
@@ -444,6 +453,10 @@ class BaseServer(common.Installable, common.Interactive, core.Composite):
|
||||
raise RuntimeError(
|
||||
"You cannot specify a --reverse-zone option together with "
|
||||
"--no-reverse")
|
||||
elif self.dns.auto_reverse and self.dns.no_reverse:
|
||||
raise RuntimeError(
|
||||
"You cannot specify a --auto-reverse option together with "
|
||||
"--no-reverse")
|
||||
|
||||
# Automatically disable pkinit w/ dogtag until that is supported
|
||||
self.no_pkinit = True
|
||||
@@ -470,6 +483,7 @@ class BaseServer(common.Installable, common.Interactive, core.Composite):
|
||||
self.no_forwarders = self.dns.no_forwarders
|
||||
self.reverse_zones = self.dns.reverse_zones
|
||||
self.no_reverse = self.dns.no_reverse
|
||||
self.auto_reverse = self.dns.auto_reverse
|
||||
self.allow_zone_overlap = self.dns.allow_zone_overlap
|
||||
self.no_dnssec_validation = self.dns.no_dnssec_validation
|
||||
self.dnssec_master = self.dns.dnssec_master
|
||||
|
||||
Reference in new issue
Block a user