UUGRN:Dienste/DNS: Unterschied zwischen den Versionen
Rabe (Diskussion | Beiträge) (ein anfang ...) |
Rabe (Diskussion | Beiträge) (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 | == 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.