Seit der Version 9 wird IPv6 unterstützt. Setzen Sie immer die neuest verfügbare Version ein. Zumindest muss Version 9.1.3 eingesetzt werden, da ältere Versionen Sicherheitslöcher beinhalten können, die von Remote entsprechend ausgenutzt werden können.
Anmerkung: Im Gegensatz zu IPv4 können bei aktuellen Versionen Server Sockets nicht an dedizierte IPv6 Adressen gebunden werden, es ist folglich jede oder keine Adresse gültig. Da dies ein Sicherheitsproblem sein kann, lesen Sie diesbezüglich ebenfalls den Abschnitt Access Control Lists (ACL) weiter unten!
Folgende Optionen müssen geändert werden, damit IPv6 aktiviert wird
options { # sure other options here, too listen-on-v6 { any; }; }; |
Nach einem Neustart (des Dienstes) sollte z.B. Folgendes zu sehen sein:
# netstat -lnptu |grep "named\W*$" tcp 0 0 :::53 :::* LISTEN 1234/named ¬ # incoming TCP requests udp 0 0 1.2.3.4:53 0.0.0.0:* 1234/named ¬ # incoming UDP requests to IPv4 1.2.3.4 udp 0 0 127.0.0.1:53 0.0.0.0:* 1234/named ¬ # incoming UDP requests to IPv4 localhost udp 0 0 0.0.0.0:32868 0.0.0.0:* 1234/named ¬ # dynamic chosen port for outgoing queries udp 0 0 :::53 :::* 1234/named ¬ # incoming UDP request to any IPv6 |
Ein kleiner Test sieht wie folgt aus:
# dig localhost @::1 |
und sollte Ihnen ein Ergebnis anzeigen...
Folgende Optionen müssen geändert werden, damit IPv6 deaktiviert wird:
options { # sure other options here, too listen-on-v6 { none; }; }; |
ACLs mit IPv6 Adressen sind realisierbar und sollten wann immer möglich eingesetzt werden. Ein Beispiel:
acl internal-net { 127.0.0.1; 1.2.3.0/24; 2001:0db8:100::/56; ::1/128; ::ffff:1.2.3.4/128; }; acl ns-internal-net { 1.2.3.4; 1.2.3.5; 2001:0db8:100::4/128; 2001:0db8:100::5/128; }; |
Diese ACLs können für Client-Anfragen und Zonentransfers zu Secondary Nameserver eingesetzt werden. Es kann auch unterbunden werden, dass ihr Caching-Nameserver mittels IPv6 von der Außenwelt verwendet wird.
options { # sure other options here, too listen-on-v6 { none; }; allow-query { internal-net; }; allow-transfer { ns-internal-net; }; }; |
Es ist ebenfalls möglich, dass die Optionen allow-query und allow-transfer bei den meisten Single-Zonen-Definitionen verwendet werden.
Diese Option ist nicht verpflichtend, ev. aber benötigt:
query-source-v6 address <ipv6address|*> port <port|*>; |
Es ist möglich pro Zone mehrere IPv6 Adressen zu definieren.
Die Transfer source Adresse wird für ausgehende Zonentransfers verwendet:
transfer-source-v6 <ipv6addr|*> [port port]; |
Die Notify source Adresse wird für ausgehende notify Mitteilungen verwendet:
notify-source-v6 <ipv6addr|*> [port port]; |
Einige Informationen finden Sie auch unter IPv6 DNS Setup Information (article). Eventuell ebenfalls hilfreich ist folgendes Tool: IPv6 Reverse DNS zone builder for BIND 8/9 (webtool).
Für IPv6 wurden neue Reverse Lookup Arten und Root Zonen definiert:
AAAA und reverse IP6.INT: beschrieben in RFC 1886 / DNS Extensions to support IP version 6 sowie seit BIND Version 4.9.6 in Verwendung
A6, DNAME (WURDE ABGELEHNT!) und reverse IP6.ARPA: beschrieben in RFC 2874 / DNS Extensions to Support IPv6 Address Aggregation and Renumbering sowie seit BIND 9 in Verwendung. Informationen zum aktuellen Stand sind unter Domain Name System Extension (dnsext) zu finden.
Mehr Inhalt zu diesem Thema wird eventuell in späteren Versionen eingearbeitet, inzwischen können Sie in den RFCs und in folgenden Quellen nachlesen:
AAAA und reverse IP6.INT: IPv6 DNS Setup Information
A6, DNAME (WURDE ABGELEHNT!) und reverse IP6.ARPA: lesen Sie im Kapitel 4 und 6 des BIND 9 Administrator Reference Manual (ARM) nach, welches mit dem bind-Paket mitgeliefert wird. Sie können es auch hier lesen: BIND manual version 9.3
Da IP6.INT (ebenfalls) ABGELEHNT WURDE, (jedoch nach wie vor in Verwendung ist,) muss ein DNS Server, der IPv6 Informationen anbieten will, beide reverse Zonen bereitstellen.
Da es mit den neuen Formaten noch Probleme gibt, ist die aktuell beste Praxis:
Vorwärts-Auflösung mit:
AAAA
Rückwärts-Auflösung mit:
Reverse nibble format für die Zone ip6.int (FÜR RÜCKWÄRTSKOMPATIBILITÄT)
Reverse nibble format für die Zone ip6.arpa (EMPFHOHLEN)
Ob BIND auf einen IPv6 socket hört bzw. IPv6 Daten bereitstellt, können Sie anhand folgender Beispiele überprüfen.
Eine IPv6 Verbindung kann durch Angabe eines dedizierten Server, der abgefragt werden soll, erzwungen werden:
$ host -t aaaa www.6bone.net 2001:0db8:200:f101::1 Using domain server: Name: 2001:0db8:200:f101::1 Address: 2001:0db8:200:f101::1#53 Aliases: Host www.6bone.net. not found: 5(REFUSED) |
Ein entsprechender Log-Eintrag sieht wie folgt aus:
Jan 3 12:43:32 gate named[12347]: client ¬ 2001:0db8:200:f101:212:34ff:fe12:3456#32770: query denied |
Wenn Sie diesen Eintrag in der Logdatei finden, prüfen Sie, ob von diesem Client Anfragen akzeptiert werden sollen und ggf. ändern Sie Ihre ACL Konfiguration.
Eine erfolgreiche IPv6 Verbindung sieht wie folgt aus:
$ host -t aaaa www.6bone.net 2001:0db8:200:f101::1 Using domain server: Name: 2001:0db8:200:f101::1 Address: 2001:0db8:200:f101::1#53 Aliases: www.6bone.net. is an alias for 6bone.net. 6bone.net. has AAAA address 3ffe:b00:c18:1::10 |
Zurück | Zum Anfang | Weiter |
Hinweise zu IPv6 kompatiblen Daemons | Nach oben | Internet super daemon (xinetd) |