[Users] Update request to support "Classless IN-ADDR.ARPA delegation"
Michelle&Judie
love.cairn at gmail.com
Tue Jan 28 12:26:29 UTC 2014
Hi David,
Thank you for your quick reply.
I'll try to push it to gerrit.
Thank you.
Best Regards,
Mark Kachi
2014-01-28 Yedidyah Bar David <didi at redhat.com>:
> Hi,
>
> ________________________________
>
> From: "Michelle&Judie" <love.cairn at gmail.com>
> To: users at ovirt.org
> Sent: Tuesday, January 28, 2014 12:32:03 PM
> Subject: [Users] Update request to support "Classless IN-ADDR.ARPA
> delegation"
>
>
> 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.
>
>
> Indeed. Note that you can just add a suitable entry to /etc/hosts in most
> cases.
>
>
> But it does not support RFC2317("Classless IN-ADDR.ARPA delegation") type
> domain, and fails on FQDN check.
>
> See following URLs for RFC2317 explanation.
> http://support.simpledns.com/KB/a146/how-to-sub-delegate-a-reverse-zone.aspx
> http://www.rfc-editor.org/rfc/rfc2317.txt
>
> 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):
>
>
> Nice Job! Would you like to push it to gerrit yourself for review? See [1]
> and [2]
> for details.
>
> [1] http://www.ovirt.org/Develop
> [2] http://www.ovirt.org/Working_with_oVirt_Gerrit
>
> Thanks, and best regards,
> --
> Didi
>
More information about the Users
mailing list