mirror of
https://github.com/cwinfo/powerdns-admin.git
synced 2024-11-14 01:20:27 +00:00
Change reverse domain creation order
With refactoring the get_reverse_domain_name function, we change the reverse domain checking to a reverse order. In this way we check the lowest class (more specific) reverse zone first. When an existing domain found we use it to create the reverse PTR records. If no one existing can be find, The most specific address will be used.
This commit is contained in:
parent
e6e3c39778
commit
72e3a82e9e
@ -644,17 +644,21 @@ class Domain(db.Model):
|
|||||||
return {'status': 'ok', 'msg': 'Reverse lookup domain already exists'}
|
return {'status': 'ok', 'msg': 'Reverse lookup domain already exists'}
|
||||||
|
|
||||||
def get_reverse_domain_name(self, reverse_host_address):
|
def get_reverse_domain_name(self, reverse_host_address):
|
||||||
|
c = 1
|
||||||
if re.search('ip6.arpa', reverse_host_address):
|
if re.search('ip6.arpa', reverse_host_address):
|
||||||
for i in range(31,3,-1):
|
for i in range(1,32,1):
|
||||||
address = re.search('((([a-f0-9]\.){'+ str(i) +'})(?P<ipname>.+6.arpa)\.?)', reverse_host_address)
|
address = re.search('((([a-f0-9]\.){'+ str(i) +'})(?P<ipname>.+6.arpa)\.?)', reverse_host_address)
|
||||||
if None != self.get_id_by_name(address.group('ipname')):
|
if None != self.get_id_by_name(address.group('ipname')):
|
||||||
|
c = i
|
||||||
break
|
break
|
||||||
|
return re.search('((([a-f0-9]\.){'+ str(c) +'})(?P<ipname>.+6.arpa)\.?)', reverse_host_address).group('ipname')
|
||||||
else:
|
else:
|
||||||
for i in range(3,0,-1):
|
for i in range(1,4,1):
|
||||||
address = re.search('((([0-9]+\.){'+ str(i) +'})(?P<ipname>.+r.arpa)\.?)', reverse_host_address)
|
address = re.search('((([0-9]+\.){'+ str(i) +'})(?P<ipname>.+r.arpa)\.?)', reverse_host_address)
|
||||||
if None != self.get_id_by_name(address.group('ipname')):
|
if None != self.get_id_by_name(address.group('ipname')):
|
||||||
|
c = i
|
||||||
break
|
break
|
||||||
return address.group('ipname')
|
return re.search('((([0-9]+\.){'+ str(c) +'})(?P<ipname>.+r.arpa)\.?)', reverse_host_address).group('ipname')
|
||||||
|
|
||||||
def delete(self, domain_name):
|
def delete(self, domain_name):
|
||||||
"""
|
"""
|
||||||
|
Loading…
Reference in New Issue
Block a user