UUGRN:Dienste/DNS: Unterschied zwischen den Versionen

Aus UUGRN
(ein anfang ...)
 
(Beispiel für eine Private Domain eines UUGRN-Mitglieds, hidden-orimary Setup mit eigenem Jail)
Zeile 24: Zeile 24:
Sollten extern andere Resolver benötigt werden, so braucht dieses lediglich zentral in der named.conf angepasst werden, die erforderlichen Änderungen im Falle eines Umzuges bleiben überschaubar.
Sollten extern andere Resolver benötigt werden, so braucht dieses lediglich zentral in der named.conf angepasst werden, die erforderlichen Änderungen im Falle eines Umzuges bleiben überschaubar.


== DNS Zonefiles ==
== DNS Zonen ==
Jedes Mitglied, das über ein eigenes Jail verfügt, aber auch der Verein selbst, kann im eigenen Jail nach eigenem belieben DNS Zonen pflegen. Aus Gründen der Erreichbarkeit und um bei evtl. erforderlichen Änderungen von IP-Adressen keine unübersichtlichen Abhängigkeiten zu bekommen, sollen diese Jail-DNS-Server nicht extern zum Auflösen von Hostnamen der Zone verwendet werden. Dieses erledigt ein DNS-Provider als DNS-Hidden-Primary: Innerhalb der Zone ist das Jail als "master" bekannt, der DNS-Provider konfiguriert 2 oder mehr Slave-Server, die sich dort die Zonen ziehen.
Jedes Mitglied, das über ein eigenes Jail verfügt, aber auch der Verein selbst, kann im eigenen Jail nach eigenem belieben DNS Zonen pflegen. Aus Gründen der Erreichbarkeit und um bei evtl. erforderlichen Änderungen von IP-Adressen keine unübersichtlichen Abhängigkeiten zu bekommen, sollen diese Jail-DNS-Server nicht extern zum Auflösen von Hostnamen der Zone verwendet werden. Dieses erledigt ein DNS-Provider als DNS-Hidden-Primary: Innerhalb der Zone ist das Jail als "master" bekannt, der DNS-Provider konfiguriert 2 oder mehr Slave-Server, die sich dort die Zonen ziehen.


Zeile 44: Zeile 44:
         };
         };
  };
  };
=== example.com ===
Aus einem Mitgliedsjail heraus können eigene / private Domains als hidden primary gehostet werden.
Das Beispiel enthält folgende IP-Adressen:
{| {{prettytable}}
! IP
! Hostname
! Verwendung
|-
| 195.49.138.'''123'''
| example.uugrn.org
| Mitgliedsjail, Name+IP entsprechend anpassen
|-
| 195.49.138.97
| [[top.uugrn.org]]
| Ist DNS-Resolver und kennt außerdem auch alle Zonen als Slave
|-
| 193.109.237.1
| ns1.jpru.de
| Hostet alle Zonen als Slave, wird beim Registrar als Master eingetragen
|-
| 195.49.136.1
| ns2.jpru.de
| Hostet alle Zonen als Slave, wird beim Registrar als Master eingetragen
|-
|}
Für example.com sieht es so aus:
;/var/named/etc/namedb/named.conf (komplett):
options {
        directory      "/etc/namedb";
        pid-file        "/var/run/named/pid";
        dump-file      "/var/dump/named_dump.db";
        statistics-file "/var/stats/named.stats";
        listen-on      { 195.49.138.'''123'''; };
        forward only;
        forwarders {
                195.49.138.97;
        };
};
zone "." {
        type hint;
        file "named.root";
};
zone "0.0.127.IN-ADDR.ARPA" {
        type master;
        file "master/localhost.rev";
};
// '''example.com'''
zone "'''example.com'''" {
        type master;
        file "master/hosts.'''example.com'''";
        notify yes;
        also-notify {
            193.109.237.1;
            195.49.136.1;
            195.49.138.97;
        };
};
;/var/named/etc/namedb/master/hosts.'''example.com''' (komplette Datei):
$ttl 38400
@      IN      SOA    ns1.jpru.de. hostmaster.jpru.de. (
                        '''2007091401'''      ; serial
                        10000  ; refresh (2 hours 46 minutes 40 seconds)
                        1800    ; retry
                        604800  ; expire (1 week)
                        86400 ) ; minimum (1 day)
                IN      NS      ns1.jpru.de.
                IN      NS      ns2.jpru.de.
                IN      MX      10 ''[[up.uugrn.org]]''.
$ORIGIN '''example.com'''.
www            IN      CNAME  '''example'''.uugrn.org.
test42          IN      CNAME  '''example'''.uugrn.org.





Version vom 14. September 2007, 09:53 Uhr

Auf der Vereinsinfrastruktur gibt es derzeit das in diesem Artikel beschriebene DNS-Konzept. Grundsätzlich unterscheidet sich das Konzept in die Aufgaben DNS-Resolver und DNS-Zonefiles.

DNS Resolver

Auf dem Jailserver top.uugrn.org läuft ein named(8), der als DNS-Forwarder fungiert. In named.conf ist daher folgendes eingetragen:

options {
    [...]
    forwarders {
        195.49.136.241;
        195.49.136.242;
        195.49.136.19;
        80.86.187.178;
        [...]
    };
};

Alle Jails auf top.uugrn.org verwenden in /etc/resolv.conf(5) daher:

domain uugrn.org
nameserver 195.49.138.97

Sollten extern andere Resolver benötigt werden, so braucht dieses lediglich zentral in der named.conf angepasst werden, die erforderlichen Änderungen im Falle eines Umzuges bleiben überschaubar.

DNS Zonen

Jedes Mitglied, das über ein eigenes Jail verfügt, aber auch der Verein selbst, kann im eigenen Jail nach eigenem belieben DNS Zonen pflegen. Aus Gründen der Erreichbarkeit und um bei evtl. erforderlichen Änderungen von IP-Adressen keine unübersichtlichen Abhängigkeiten zu bekommen, sollen diese Jail-DNS-Server nicht extern zum Auflösen von Hostnamen der Zone verwendet werden. Dieses erledigt ein DNS-Provider als DNS-Hidden-Primary: Innerhalb der Zone ist das Jail als "master" bekannt, der DNS-Provider konfiguriert 2 oder mehr Slave-Server, die sich dort die Zonen ziehen.

Extern (beim Registrar) werden dann nur diese beiden Slave-Server als Resolver für die Domain bekannt gegeben, d.h. alle externen Zugriffe auf die Zone erfolgen nur und ausschließlich auf die Slaves, nie auf den hidden Primary, da dieser nicht bekannt ist.

Derzeit bietet Jürgen Unger (jpru.de) uns diesen Service mit an, wobei private Domains direkt über jpru.de geregelt werden müssen.

Sinnvollerweise, aber nicht notwendigerweise wird auch der named auf top.uugrn.org als Slave-Server für diese Zonen eingerichtet, weil er der primäre Resolver für alle Jails ist und somit "interne" Domains auch direkt selbst beantworten kann. Dieser Slave (hier 195.49.138.97) muss allerdings getriggert werden, damit er sich aktuelle Zonefiles abholt:

// UUGRN e.V.
zone "uugrn.org" {
        type master;
        file "master/hosts.uugrn.org";
        notify yes;
        also-notify {
            195.49.136.19;
            80.86.187.178;
            195.49.138.97;
        };
};


example.com

Aus einem Mitgliedsjail heraus können eigene / private Domains als hidden primary gehostet werden.

Das Beispiel enthält folgende IP-Adressen:

IP Hostname Verwendung
195.49.138.123 example.uugrn.org Mitgliedsjail, Name+IP entsprechend anpassen
195.49.138.97 top.uugrn.org Ist DNS-Resolver und kennt außerdem auch alle Zonen als Slave
193.109.237.1 ns1.jpru.de Hostet alle Zonen als Slave, wird beim Registrar als Master eingetragen
195.49.136.1 ns2.jpru.de Hostet alle Zonen als Slave, wird beim Registrar als Master eingetragen

Für example.com sieht es so aus:

/var/named/etc/namedb/named.conf (komplett)
options {
        directory       "/etc/namedb";
        pid-file        "/var/run/named/pid";
        dump-file       "/var/dump/named_dump.db";
        statistics-file "/var/stats/named.stats"; 

        listen-on       { 195.49.138.123; };

        forward only;
        forwarders {
                195.49.138.97;
        };
};

zone "." {
        type hint;
        file "named.root";
};

zone "0.0.127.IN-ADDR.ARPA" {
        type master;
        file "master/localhost.rev";
};

// example.com
zone "example.com" {
        type master;
        file "master/hosts.example.com";
        notify yes;
        also-notify {
            193.109.237.1;
            195.49.136.1;
            195.49.138.97;
        };
};
/var/named/etc/namedb/master/hosts.example.com (komplette Datei)
$ttl 38400
@       IN      SOA     ns1.jpru.de. hostmaster.jpru.de. (
                        2007091401      ; serial
                        10000   ; refresh (2 hours 46 minutes 40 seconds)
                        1800    ; retry
                        604800  ; expire (1 week)
                        86400 ) ; minimum (1 day)
                IN      NS      ns1.jpru.de.
                IN      NS      ns2.jpru.de.
                IN      MX      10 up.uugrn.org.
$ORIGIN example.com.
www             IN      CNAME   example.uugrn.org.
test42          IN      CNAME   example.uugrn.org.


siehe auch