Univention Bugzilla – Bug 31312
Formally Correct Alias creates error in DNS Module on the cli
Last modified: 2018-04-13 13:32:33 CEST
In UCS a number of DNS entries are semantically wrong, as they represent complete DNS entries, not relative ones, but do not conclude with a dot in the end, e.g. domains are univention.example.com instead of univention.example.com. (including the dot) If you now add a correct DNS alias, such as proxy.univention.example.com., the superordinate is not present as UCS creates it with univention.example.com, leaving out the dot in the end. This renders the DNS Module unusable until the alias is removed using the computers module or an LDAP modify.
Auch an Ticket#2013041821001047 aufgetreten
Can you give an example?
(In reply to comment #2) > Can you give an example? The Master was created with either master.test.example.com or master.test.example.com. In both cases this creates the DNS Domain test.example.com Formally correct would be the domain test.example.com. If you now add proxy.test.example.com. the dns/alias module of the udm is not working anymore
Command: root@master:~# udm dns/alias list Information provided is not sufficient: superordinate object not present Error (log level 4): 13.05.13 09:31:23.644 LDAP ( INFO ) : uldap.search filter=(&(objectClass=dNSZone)(!(relativeDomainName=@))(!(zoneName=*.in-addr.arpa))(!(aRecord=*))(!(zoneName=*.ip6.arpa))(!(aAAARecord=*))(cNAMERecord=*)) base=dc=univention,dc=example,dc=com scope=sub attr=[] unique=0 required=0 timeout=-1 sizelimit=0 13.05.13 09:31:23.647 ADMIN ( WARN ) : Traceback (most recent call last): File "/usr/lib/pymodules/python2.6/univention/admincli/admin.py", line 394, in doit out=_doit(arglist) File "/usr/lib/pymodules/python2.6/univention/admincli/admin.py", line 1120, in _doit for object in univention.admin.modules.lookup(module, co, lo, scope='sub', superordinate=superordinate, base=position.getDn(), filter=filter): File "/usr/lib/pymodules/python2.6/univention/admin/modules.py", line 797, in lookup tmpres=module.lookup(co, lo, filter, base=base, superordinate=superordinate, scope=scope, unique=unique, required=required, timeout=timeout, sizelimit=sizelimit) File "/usr/lib/pymodules/python2.6/univention/admin/handlers/dns/alias.py", line 166, in lookup res.append((object(co, lo, None, dn=dn, superordinate=superordinate, attributes = attrs ))) File "/usr/lib/pymodules/python2.6/univention/admin/handlers/dns/alias.py", line 119, in __init__ raise univention.admin.uexceptions.insufficientInformation, 'superordinate object not present' insufficientInformation: superordinate object not present ldapsearches: root@master:/var/log/univention# univention-ldapsearch '(&(objectClass=dNSZone)(!(relativeDomainName=@))(!(zoneName=*.in-addr.arpa))(!(aRecord=*))(!(zoneName=*.ip6.arpa))(!(aAAARecord=*))(cNAMERecord=*))' # extended LDIF # # LDAPv3 # base <dc=univention,dc=example,dc=com> (default) with scope subtree # filter: (&(objectClass=dNSZone)(!(relativeDomainName=@))(!(zoneName=*.in-addr.arpa))(!(aRecord=*))(!(zoneName=*.ip6.arpa))(!(aAAARecord=*))(cNAMERecord=*)) # requesting: ALL # # 4b09e077-4bc8-4f05-9a73-ff7cda7f6882._msdcs, univention.example.com, dns, u nivention.example.com dn: relativeDomainName=4b09e077-4bc8-4f05-9a73-ff7cda7f6882._msdcs,zoneName=un ivention.example.com,cn=dns,dc=univention,dc=example,dc=com cNAMERecord: master.univention.example.com. objectClass: top objectClass: dNSZone objectClass: univentionObject univentionObjectType: dns/alias dNSTTL: 80600 relativeDomainName: 4b09e077-4bc8-4f05-9a73-ff7cda7f6882._msdcs zoneName: univention.example.com # tester, univention.example.com, dns, univention.example.com dn: relativeDomainName=tester,zoneName=univention.example.com,cn=dns,dc=univen tion,dc=example,dc=com objectClass: top objectClass: dNSZone relativeDomainName: tester cNAMERecord: master.univention.example.com. zoneName: univention.example.com # search result search: 3 result: 0 Success # numResponses: 3 # numEntries: 2 # univention.example.com, dns, univention.example.com dn: zoneName=univention.example.com,cn=dns,dc=univention,dc=example,dc=com nSRecord: master.univention.example.com. objectClass: top objectClass: dNSZone objectClass: univentionObject univentionObjectType: dns/forward_zone dNSTTL: 10800 relativeDomainName: @ zoneName: univention.example.com aRecord: 10.200.10.9 sOARecord: master.univention.example.com. root.univention.example.com. 28 2880 0 7200 604800 10800 root@master:/var/log/univention# univention-ldapsearch '(&(zoneName=univention.example.com)(univentionObjectType=dns/forward_zone))' # extended LDIF # # LDAPv3 # base <dc=univention,dc=example,dc=com> (default) with scope subtree # filter: (&(zoneName=univention.example.com)(univentionObjectType=dns/forward_zone)) # requesting: ALL # # univention.example.com, dns, univention.example.com dn: zoneName=univention.example.com,cn=dns,dc=univention,dc=example,dc=com nSRecord: master.univention.example.com. objectClass: top objectClass: dNSZone objectClass: univentionObject univentionObjectType: dns/forward_zone dNSTTL: 10800 relativeDomainName: @ zoneName: univention.example.com aRecord: 10.200.10.9 sOARecord: master.univention.example.com. root.univention.example.com. 28 2880 0 7200 604800 10800 # search result search: 3 result: 0 Success # numResponses: 2 # numEntries: 1
Missunderstanding regarding the DNS-CLI Modul. The Superordinate has to be given in the cli version of the UDM.
Set status of old resolved issues to closed.