Hi guys,
I found a problem on installing server, which has address from small ip zone, less than a class C.
"engine-setup" checks FQDN resolvability in "./plugins/ovirt-engine-setup/config/hostname.py".
This program requests forward & reverse query to DNS, and see if it comes back to host domain name.
I made patch to "hostname.py" to clear this problem.
Please check following patch, and consider upgrading on the next release.
---
hostname.py.org 2013-12-13 17:22:11.000000000 +0900
+++ hostname.py 2014-01-28 18:01:09.514791351 +0900
@@ -96,15 +96,16 @@
flags=re.VERBOSE,
pattern=r"""
^
- (?P<query>\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}).in-addr.arpa.
+ (?P<query>[\w/.-]+)
+ \.
\s+
\d+
\s+
IN
\s+
- PTR
+ (?P<type>(PTR|CNAME))
\s+
- (?P<answer>[\w.-]+)
+ (?P<answer>[\w/.-]+)
\.
$
"""
@@ -171,11 +172,32 @@
args=args,
raiseOnError=False
)
+ ad=addr.split('.')
+ query="{3}.{2}.{1}.{0}.in-addr.arpa".format(*ad)
if rc == 0:
for line in stdout:
found = self._DIG_REVLOOKUP_RE.search(line)
- if found:
- names.add(found.group('answer'))
+ if not found:
+ continue
+ if query != found.group('query'):
+ continue
+ answer=found.group('answer')
+ if found.group('type') == 'CNAME':
+ self.logger.debug(
+ '{query} CNAME to: {answer}'.format(
+ query=query,
+ answer=answer,
+ )
+ )
+ query=answer
+ continue
+ self.logger.debug(
+ '{query} resolves to: {answer}'.format(
+ query=query,
+ answer=answer,
+ )
+ )
+ names.add(answer)
return names
def _validateFQDNresolvability(self, fqdn):
Upgrading to a better patch is greatly appreciated.
Thank you.