NS Records und Slave only DNS Zonen

german

#1

Guten Tag

Ist folgendes durch Univention zu realisieren?

  1. Ich habe folgende Domain: domain.ch. Diese ist in UCS eingetragen hat aber unter General/Name Server nebst den beiden UCS Server (Master/Backup) zwei weitere NameServer eingetragen. Grund dafür: Ich will einen Zonentransfer auf die beiden weiteren DNS Server machen (da alle unsere Clients diese als DNS Server eingetragen haben)

  2. Es gibt eine Subdomain subdomainA.domain.ch welche durch einen anderen DNS Server betrieben wird. Allerdings soll der UCS Server Slave für diese Zone sein? Geht das? Desweiteren würde ich gerne (muss ich) in der Zone domain.ch einen NS Record für subdomainA.domain.ch auf den dafür zuständigen DNS Server eintragen. Wie kann ich NS Records in einer Zone setzen?
    Alternativ müsste ich halt die beiden weiteren DNS Server aus 1) als Slave für subdomainA.domain.ch konfigurieren (was ich aktuell schon habe). Aber dann müsste ich immer noch die NS Records in domain.ch setzen können!

  3. Ähnlich wie zwei, allerdings ist der UCS Server kein Slave. subdomainB.domain.ch soll in der domain.ch einfach einen NS Eintrag bekommen, der die Zone an den DNS Server für subdomainB.domain.ch delegiert.

Wie lässt sich das über die Univention Management Console einstellen? Ich kann z.B. keinen DNS-Objekttyp NS finden (nur Host, Alias, Service und Text), das ist etwas Schade
Ich finde auch nichts bezüglich Slave Zone

Vielen Dank für ein paar Klärungen
Freundiche Grüsse

Sebastian


DNS Slave/ Forward Zones - Wie?
#2

Hallo,

die NS-Records definieren Sie direkt in der Zone (siehe Screenshot in Configuring a forward lookup zone in UMC).

Soweit ich das DNS-Konzept in UCS verstanden habe, gibt es hier nur Master (im Sinne von DNS) die ihre jeweiligen Daten aus dem LDAP holen. Ansonsten hätte man ja eine weitere Replikationskette zu betreuen.

Sie können aber einen DNS-Slave außerhalb der UMC über die lokale Bind-Konfiguration über die herkömmlichen Konfigurationsdateien einrichten. Wenn Samba 4 installiert ist, wäre das in /etc/bind/local.conf.samba4, sonst /etc/bind/local.conf.

Viele Grüße,
Dirk Ahrnke


#3

müsste ich dann z.B. die Forward-Lockup-Zone domain.ch anlegen und anschliessend eine zweite FLZ subdomainA.domain.ch und darin einfach die beiden externen Name-Server angeben? Ich würde aber gerne direkt in der Zone domain.ch NS Records für subdomainA definieren (subdomainA IN NS othernameserver) ? Das geht wohl so nicht?

Das mit der local.conf habe ich mir auch schon so gedacht, Problem ist dann aber, da ich wohl eine FLZ Zone subdomainA.domain.ch (siehe oben) erstellen muss, kann ich wohl keine Slave Zone mit dem gleichen Namen erstellen in der local.conf?


#4

Noch als Ergänzung, ich müsste so ein ZonenFile aus dem UCS erstellen können

$TTL 1h                  ; default expiration time of all resource records without their own TTL value

@  IN  SOA  ns1.domainA.ch. roo.rdomainA.ch. (
              2013082913 ; serial number of this zone file
              1d         ; slave refresh (1 day)
              2h         ; slave retry time in case of a problem (2 hours)
              4w         ; slave expiration time (4 weeks)
              1h         ; minimum caching time in case of failed lookups (1 hour)
              )

@                             IN      NS      ns1.domainA.ch.                    
@                             IN      NS      ns2.domainA.ch.


subdomainA              IN      NS      ns1.subdomainA.domainA.ch.

subdomainB              IN      NS      ns.subdomainB.domainA.ch.
subdomainB              IN      NS      ns1.domainA.ch.
subdomainB              IN      NS      ns2.domainA.ch.

[...]
Weitere Host/Cname etc Einträge für domainA.ch


# Glue Records
ns.subdomainA.domainA.ch. IN      A       10.40.4.70
ns.subdomainB.domainA.ch. IN      A       10.40.0.5

Damit kann ich subdomainA und subdomainB an die entsprechenden DNS Server delegieren (werden nicht in UCS verwaltet)

Zudem ist aber für subdomainA.domainA.ch auf ns1.domainA.ch. & ns2.domainA.ch. noch eine Slave Zone (Das Problem wurde ja oben bereits geklärt, ich werde die Slave Zonen nur auf ns1.domainA.ch. & ns2.domainA.ch. haben und gar nicht erst in UCS, alternativ kann sie noch in der bind.local definiert werden)


#5

Hallo,

mal nur so als Idee (ich hab das nicht vollständig verifiziert):

Wenn man UCS mit Samba4 betreibt und Samba4 auch als DNS-Backend verwendet, kommt man über eine Windows-Maschine mit RSAT auch auf die DNS-Konfiguration.
Ggf. hat man da die Chance, Dinge einzustellen, die in der UMC noch nicht gehen.

Viele Grüße,
Dirk Ahrnke


#6

Hmm… diese Lösung (habs nicht getestet) finde ich unbefriedigend.

Das müsste doch recht einfach durch Univention implementiert werden können. Es müssten einfach analog zu den A/AAAA, CNAME; TXT, SVR Records auch ein NS Record erstellt werden können.

Ich stelle mir das so vor:
Bei den General Settings werden die Authorative Name Server für die aktuelle Zone eingetragen (Analog zu @ IN NS FQDN Nameserver in einem Zonenfile), zusätzlich können aber auch ein weitere DNS Objects (DNS: NS Record) hinzugefügt werden.
Natürlich muss das ganze bei einer DNS Abfrage auch ausgegeben werden (kenne die internals von UCS noch zu wenig um hier zu beschreiben wie wo was gemacht werden muss)

Gleicher auch mit Slave Only Zonen (DNS), da muss wohl noch weniger gemacht werden?

Update:

Habe mir mal noch die LDAP Records genauer angeschaut, das müsste aus dem UCS in der LDAP Datenbank erstellt werden. Bind müsste das dann richtig auslesen (habs nicht getestet)

dn: relativeDomainName=subdomainA,zoneName=domainA.ch,cn=dns,dc=domainA,dc=ch
objectClass: top
objectClass: dNSZone
relativeDomainName: subdomainA
zoneName: domainA.ch
nSRecord: ns1.subdomainA.domainA.ch

#7

Ich habe mal noch versucht über RSAT (mmc mit DNS SnapIn) den DNS Server direkt zu verwalten. Dort wird mir zwar meine domainA.ch Zone angezeigt, allerdings fehlen sämtliche Inhalte welche ich im UCS konfiguriert habe. Ist das normal?
Dig oder NS Lookup liefert mir aber die Einträge.

Wenn ich es richtig gesehen habe, läuft bei mir bind mit dem Samba Backend (dlz modul). Darum kann ich wohl da nichts anzeigen?

dlz "samba4.zone" {
        database "dlopen /usr/lib/samba/bind9/dlz_bind9.so -d 0 {
                        /*
                         * update-policy {
                         *              grant RDIT.CH ms-self * A AAAA;
                         *              grant Administrator@RDIT.CH wildcard * A AAAA SRV CNAME;
                         *              grant ucs-master$@rdit.ch wildcard * A AAAA SRV CNAME;
                         *      };
                         */

                        /*
                         * the list of principals and what they can change is created
                         * dynamically by Samba, based on the membership of the domain controllers
                         * group. The provision just creates this file as an empty file.
                         */
                        include /var/lib/samba/private/named.conf.update;

                        /* we need to use check-names ignore so _msdcs A records can be created */
                        check-names ignore;
                };
        ";
};

#8

sorry wenn ich das bumpe…

Wurde das wirklich noch nicht implementiert? Zusätzliche NS Records für eine Domain bzw. subdomain?
Hat da sonst niemand das Bedürfniss? Für uns ist das wichtig, ansonsten müssen wir uns überlegen ob UCS wirklich das richtige ist?

Wir haben z.B. auch eine clients.domainA.ch Domain welche von unserem DHCP (nicht UCS!!) per Dynamic DNS alle hosts einträgt, welche per DHCP einen Lease bekommen (und nein, ich will das nicht in UCS machen) Ohne weitere NS Records in der domainA.ch Zone (verwaltet durch UCS) kann ich das nicht realisieren.


#9

Hallo,

ich habe dazu einen Enhancement [bug]32626[/bug] angelegt.
Falls ich etwas Essentielles vergessen habe, können Sie es ggf. dort erwähnen.

Viele Grüße,
Dirk Ahrnke


#10

Herzlichen Dank!


#11

Ich hab es ausprobiert und einen Subdomain-Eintrag direkt in der LDAP angelegt (s.o. dn: relativeDomainName=subdomainA, zoneName=domainA.ch, cn=dns,dc=domainA, dc=ch)

Man muss dann noch im SOA Eintrag der Top-Domain die Seriennummer um eins erhöhen. Das geht über das Webinterface wenn man möchte. Dann geht es. Würde mir auch wünschen, dass man solche einträge direkt im UCS vornehmen könnte.

Der Anwendungsfall ist auch nicht so weit hergeholt:

Eine Firma hat zwei Standorte Hamburg und Berlin. Rechner in Hamburg liegen unter rechnera.ham.example.org und Rechner in berlin unter: rechnerb.ber.example.org. Dann möchte man je ein Netzwerkobjekt und wenn man im UCS einen Rechner anlegt auch automatisch das die Subdomain richtig gesetzt wird.

Gruß

Sven Anders