Migration auf IPv6
Unsere Aufgabe war es ein Netzwerk einzurichten welches aus 2 Routern besteht. Diese verbinden 2 Subnetze über ein IPv4 Netzwerk. Jedes Subnetz enthält IPv4 PCs sowie IPv6 PCs. Die Kommunikation der IPv6 PCs soll zwischen den beiden Subnetzen möglich sein. Jetzt wird einer der IPv4 PCs auf IPv6 migriert. Dabei darf die Konnektivität nicht in Mitleidenschaft gezogen werden.
Motivation (Unterschiede zwischen den IP-Versionen)
Die Version 6 des IP-Protokolls ist leider nicht abwärtskompatibel zu IPv4. Daraus ergeben sich vor allem Probleme beim Umstieg, d.h. bei der Einführung von IPv6 und gleichzeitiger Abschaltung von IPv4. Da das Nachrichtenformat überarbeitet wurde kann ein Gerät mit IPv4 Konnektivität nicht automatisch auf IPv6 Netze zugreifen und vice versa.
IPv4
Eine IPv4 Adresse hat eine Länge von 32 bit. Man schreibt sie in 4 Gruppen zu je 8 bit dezimal auf. Führende Nullen werden nicht aufgeschrieben.
z.B.: 192.168.8.1, 10.3.4.5 oder 127.0.0.1 (localhost)
Es gibt (theoretisch) verschiedene IPv4 Adressen, welche nicht der steigenden Nachfrage gerecht werden können. Deshalb musste eine neue IP-Version entstehen die deutlich mehr Adressen zur Verfügung stellt -> IPv6.
IPv6
Jede IPv6 Adresse ist 128 bit lang und stellt damit verschiedene Adressen bereit. Sie werden häufig als 8 Gruppen von 16 bit Zahlen hexadezimal aufgeschrieben um sie weniger "unhandlich" erscheinen zu lassen. Führende Nullen werden ebenfalls nicht dargestellt. Außerdem kann die längste Gruppe einzelner Nullen zu :: zusammengefasst werden.
1050:0:0:0:5:600:300c:326b = 1050::5:600:300c:326b, ::1 (localhost)
Die neue IP-Version bringt außerdem noch Änderungen im Header-Format sowie zusätzlich Sicherheitsfeatures mit, welche bei IPv4 nur durch zusätzliche Protokolle erreicht werden können.
Eine konkrete Gegenüberstellung der Unterschiede befindet sich auf der Seite von IBM.
Netzwerk einrichten
Zu Beginn haben wir auf allen Systemen Debian 6 installiert und diese wie auf obiger Grafik zu sehen ist, verkabelt. Dazu mussten wir herausfinden welcher Adapter (eth0, eth1, eth2) welcher Karte zugeordnet wurde und haben daraufhin an jedem Rechner die benötigten Interfaces an- bzw. die nicht benötigten ausgeschaltet. Dies ist nötig, da jeder Subnetzrechner 2 und jeder Router 3 Netzwerkkarten besitzt und diese initial in zufälliger Reihenfolge im Debiansystem angemeldet werden.
Ein ganzes Interface ausschalten ist mit:
- ifconfig <Interfacename> down, möglich.
z.B.: ifconfig eth1 down schaltet das ganze Interface eth1 ab.
Ein Interface wieder einschalten geht analog mit:
- ifconfig <Interfacename> up.
Unsere Subnetrechner sind alle über eth0 an das Netzwerk angeschlossen. Die eth1 Schnittstellen der Subnetrechner sind aktuell nicht weiter verwendet. Die Router sind über eth0 an ihr lokales Subnetz angebunden und haben eine direkte Verbindung zum zweiten Router über eth1. Die eth2 Schnittstellen der Router sind aktuell nicht weiter verwendet.
IP-Adressen & Subnetze
Unser Netzwerk verfügt über drei Teilnetze:
- Subnetz 1: eth0 von karow und Rechner die über Karow's eth0 angebunden sind (marzahn, buckow, treptow, britz)
- Subnetz 2: eth0 von lankwitz und Rechner die über Lankwitz's eth0 angebunden sind (alex, mitte, wedding, kudamm)
- Subnetz 3: eth1 von karow (R1) / lankwitz (R2)
Die Subnetze 1 und 2 enthalten IPv4 und IPv6 Schnittstellen. Das Subnetz 3 ist ein reines IPv4 Netz.
Nun vergeben wir manuell IP-Adressen.
Praktischerweise können diese zum Testen temporär gesetzt werden mit:
- für IPv4: ifconfig <Interfacename> add <Adresse>
z.B.: ifconfig eth0 add 192.168.1.10
- für IPv6: ifconfig <Interfacename> inet6 add <Adresse>
z.B.: ifconfig eth0 inet6 add fc00::0:1:2c0:6cff:fe00:f010
Um dann IP Adressen fest zu vergeben, werden diese in der Datei /etc/network/interfaces (eth0 / eth1) eingetragen. Wie dies im Detail auszusehen hat ist in den untenstehenden Configfiles ersichtlich.
Zudem sollte man wissen: Jedes Gerät besitzt automatisch eine IPv6 Adresse (link-local). Diese ist jedoch nur innerhalb des eigenen Subnetzes erreichbar und somit per Definition nicht von außen verfügbar. Deswegen ist es nötig manuell eine IPv6 Adresse (global) zu vergeben. Diese wird dann auch von den Routern geroutet. Die Erzeugung der lokalen IPv6 Adresse kann man unterdrücken in dem man die folgende Zeile in die Datei /etc/network/interfaces (letzte Zeile) hinzufügt:
up ip -6 addr flush dev $IFACE || true
Zuordnung
Wir haben uns für folgende IPv4 Adresskonfigurationen entschieden:
Subnetz 1 | Subnetz 2 | Subnetz 3 (Karow) | Subnetz 3 (Lankwitz) | |
---|---|---|---|---|
IPv4-Adresse | 192.168.1.X | 192.168.2.X | 172.16.1.1 | 172.16.1.2 |
Netzmaske | 255.255.255.0 | 255.255.255.0 | 255.255.0.0 | 255.255.0.0 |
Gateway | 192.168.1.1 | 192.168.2.1 | 172.16.1.2 | 172.16.1.1 |
Wir haben uns für folgende IPv6 Adresskonfigurationen entschieden:
Subnetz 1 | Subnetz 2 | Subnetz 3 (Karow) | Subnetz 3 (Lankwitz) | |
---|---|---|---|---|
IPv6-Adresse | fc00::0:1:2c0:6cff:fe00:f0XX | fc00::2:1:2c0:6cff:fe00:f0XX | fc00::1:1:2c0:6cff:fe00:f001 | fc00::1:1:2c0:6cff:fe00:f002 |
Netzmaske | 64 | 64 | 64 | 64 |
Gateway | fc00::0:1:2c0:6cff:fe00:f001 | fc00::2:1:2c0:6cff:fe00:f001 | fc00::1:1:2c0:6cff:fe00:f002 | fc00::1:1:2c0:6cff:fe00:f001 |
Nameserver
Da jetzt die Rechner erreichbar sind, aber die Adressen eher unhandlich erscheinen, vergeben wir Namen und lassen diese durch einen Nameserver auflösen. Durch einen Eintrag in /etc/resolv.conf wird der Nameserver anhand seiner IP bekannt gemacht. Der Nameserver ist bind in Version 9.
Da jedes Subnetz einen Nameserver benötigt fungiert R1 sowie R2 als DNS. Um nicht selbst die Einstellungen von R1 auf R2 kopieren zu müssen hat R1 die Funktion eines Master-nameservers und R2 die eines Slave-nameservers. Ändert sich jetzt eine relevante Datei auf R1 wird eine Benachrichtigung (engl. notify) an R2 gesendet. Daraufhin kann dieser die benötigten neuen Dateien kopieren und in einem temporären Verzeichnis abspeichern.
Die Aktualität der Files wird anhand einer Seriennummer entschieden. /etc/bind/chaos.local (serial)
Das Format dieser Zahl ist egal. Wir haben uns für folgende Konvention entschieden:
YYYYMMDDII, JahrMonatTagZahl
Bei jeder Änderung wird das "Datum" aktualisiert. Bei mehreren Änderung an einem Tag wird die Zahl am Ende inkrementiert.
Ein sogenanntes A-Record beschreibt die Korrelation von IPv4 Adresse und Name. Der AAAA-Record hingegen stellt eine Verbindung zwischen IPv6 Adresse und dem Name her. Es ist möglich die Auflösung der IPv4 und IPv6 Adressen in einer Datei zu kombinieren. Bei uns geschieht dies auf Karow (unserem Master-nameserver) in der Datei: /etc/bind/chaos.local (vgl. Karow IN A & Karow IN AAAA). Auf Lankwitz (unserem Slave-nameserver) wird diese automatisch nach /var/cache/bind/chaos.local kopiert. Der Pfad der Kopie wird in der /etc/bind/named.conf.options (directory) auf Lankwitz festgelegt.
Übersicht Name -> IP
Name | IP-Adresse |
---|---|
Karow (eth0, A) | 192.168.1.1 |
Karow (eth0, AAAA) | fc00::0:1:2c0:6cff:fe00:f001 |
Karow (eth1) | 172.16.1.1 |
Karow (6in4) | fc00::1:1:2c0:6cff:fe00:f001 |
Marzahn | 192.168.1.10 |
Buckow | 192.168.1.11 |
Treptow | fc00::0:1:2c0:6cff:fe00:f012 |
Britz | fc00::0:1:2c0:6cff:fe00:f013 |
Lankwitz (eth0, A) | 192.168.2.1 |
Lankwitz (eth0, AAAA) | fc00::2:1:2c0:6cff:fe00:f001 |
Lankwitz (eth1) | 172.16.1.2 |
Lankwitz (6in4) | fc00::1:1:2c0:6cff:fe00:f002 |
Alex | 192.168.2.10 |
Mitte | 192.168.2.11 |
Wedding | fc00::2:1:2c0:6cff:fe00:f012 |
Kudamm | 192.168.2.13 |
Migrationsmethoden
Dual-Stack
Beim Dual-Stack Betrieb wird jedem Adapter neben der IPv4-Adresse zusätzlich eine IPv6-Adresse zugewiesen. Geräte können so über beide Protokolle kommunizieren. Dieses Verfahren ist zur Zeit der Regelfall. Viele Router haben allerdings noch keine IPv6-Weiterleitung eingeschaltet oder unterstützen diese schlicht nicht.
Tunnel Verfahren
Bei den Tunnel Verfahren werden in der Regel IPv6-Pakete als Nutzlast in IPv4-Pakete gesteckt und zu einer Tunnelgegenstelle übertragen, welche sich in einem IPv6-Netz befindet. Ähnliche Verfahren, bei denen IPv4-Pakete in die Nutzlast von IPv6-Pakete gepackt werden und über ein IPv6-Netz in ein IPv4-Netz übertragen werden, sind auch möglich. Ein solcher Tunnel funktioniert in beide Richtungen. Die Qualität der Tunnelverfahren ist abhängig vom verwendeten Protokoll. Die genutzte Route ist meist nicht optimal, da man einen Umweg über die Tunnelgegenstelle in Kauf nehmen muss. Außerdem sinkt die maximal mögliche Nutzlast, da Overhead durch zusätzliche Header Daten entstehen.
6to4
6to4 nennt sich ein Tunnelmechanismus bei dem auf jede IPv4-Adresse ein /48 großes IPv6-Netz abgebildet wird. Hier setzt sich die resultierende IPv6-Adresse aus einem Präfix "2002" und der IPv4-Adresse, notiert in hexadezimal, zusammen.
Ein lokaler Host bzw. Router packt ein IPv6-Paket mittels Protokoll 41 in ein IPv4-Paket, um es dann weiter an einen 6to4-Relay zu schicken, wo das IPv6-Paket wieder ausgepackt und ans Ziel geschickt wird. Wenn ein entfernter Host bzw. Router antwortet, werden die Pakete nicht unbedingt über den selben 6to4-Relay gesendet. Bei einem 6to4-Tunnel handelt es sich folglich nicht um eine Punkt-zu-Punkt-Verbindung!
Die IPv4 Kopfdaten hängen direkt an dem IPv6-Paket, wodurch der Overhead genau die 20Bytes des IPv4-Header ist. Im Protokollfeld des IPv4-Headers wird "0x29" eingetragen (bzw 41 in dezimal).
Es existieren öffentliche 6to4-Relays, welche eine Verbindung ins IPv6-Internet ermöglichen ohne eine Anmeldung zu fordern. Man erreicht über die Anycast Adresse "192.88.99.1" bzw. "2002:c058:6301::" den nächsten 6to4-Relay.
6in4
Beim 6in4 Tunnel Mechanismus wird wie bei 6to4 das Protokoll 41 benutzt. Die IPv4 Kopfdaten hängen also direkt an dem IPv6 Paket, wodurch der Overhead auch hier nur die 20Bytes des IPv4 Header ist. Im Protokollfeld des IPv4 Headers steht daher auch hier die "0x29" (bzw 41 in dezimal).
Beim 6in4 Tunneling handelt es sich im Gegensatz zum 6to4 Tunneling um eine statische Ende-zu-Ende Verbindung. Im Regelfall werden die Tunnel mittels Tunneladaptern manuell konfiguriert. Es existieren allerdings auch Dienstprogramme (z.B. AICCU), welche die Tunnelparameter automatisch durch Erhalt von nötigen Informationen eines Tunnel Information and Control Protocol (TIC) Servers konfigurieren.
Das 6in4 Protokoll hat keine Sicherheits Features, man kann also leicht IPv6 Pakete einschleusen, die die Quelle (IPv4) des anderen Tunnelendpunkts vorgeben. Das kann teilweise durch zusätzliche Sicherheitserweiterungen gelöst werden.
4in6
6over4
Translation Verfahren
TRT
SIIT
NATPT
6in4 Tunnel
Da die Kommunikation zwischen unseren Routern nur über IPv4 stattfindet (Subnetz 3) - war es notwendig ankommende IPv6 Pakete (die von Subnetz 1 nach Subnetz 2 müssen oder vice versa) in IPv4 Pakete zu verpacken und nach dem Senden zu entpacken (zur Erinnerung: Ein 6in4 Tunnel tut genau dieses und verwendet das Protokoll 41 um IPv6-Pakete in IPv4-Pakete zu kapseln)
Dazu werden also nun auf den Zugangs- bzw. Endpunkten des zu überbrückenden Netzwerkes Tunnelinterfaces integriert. Ein Tunnelinterface wird erzeugt mit einem neuen Eintrag in der Datei /etc/network/interfaces (iface 6in4). In unserem Fall besitzen also Karow und Lankwitz jeweils ein virtuellen Tunneladapter.
Dabei war es wichtig darauf zu achten neben den beiden (IPv6-)Subnetzen noch ein drittes Subnetz für die virtuellen IPv6-Adressen der Tunneladapter zu benutzen um das problemlose Routing der Pakete zu ermöglichen. (vgl. Zuordnung der IP-Adressen)
--------- ---------- |<--------| 6in4 Tunnel |--------> | | Karow |o=====================o| Lankwitz | |-------->|------IPv4 Netz--------|<---------| --------- ---------- --------------- --------------- --------------- | | | | | | | Payload | | Payload | | Payload | | | | | | | --------------- --------------- --------------- | |<======| |<======| | | TCP/UDP Header|======>| TCP/UDP Header|======>| TCP/UDP Header| | | | | | | --------------- --------------- --------------- | | | | | | | IPv6 Header | | IPv6 Header | | IPv6 Header | | | | | | | --------------- =============== --------------- | | | IPv4 Header | | | ---------------
Als letzte Hürde mussten wir noch von einem IPv4 Client auf nur unter einer IPv6 Adresse erreichbare Hosts zugreifen. Dazu versuchten wir uns wieder der gleichen Methode zu bedienen und richteten einen Tunnel – dieses Mal von dem IPv4 Client aus – ein.
TODO
-ABARBEITUNGSLISTE / HOWTO in Stichpunkten – wenn dazu Zeit ist einfach am Ende mündlich machen. Robert
-Reverse Lookup – Kevin
-IPv6 Adresse entfernen – done. Robert
-Verlinken der Dateien – ein paar hab ich schon. Robert
-Bind9 Dateien beschreiben – Kommentare stehen in der Datei, Rest ist selbsterklärend, A und AAAA hab ich schon. Robert
-bind9 restart, network restart, serial von bind
-PROBLEME
-WEITERES VORGEHEN
Quelldateien
/etc/host.conf
order hosts,bind multi on
/etc/resolv.conf
Karow & Lankwitz (router)
domain chaos.local search chaos.local nameserver 127.0.0.1
Subnetz 1, IPv4 (Buckow)
domain chaos.local search chaos.local nameserver 192.168.1.1
Subnetz 1, IPv6 (Britz)
domain chaos.local search chaos.local nameserver fc00::0:1:2c0:6cff:fe00:f001
Subnetz 2, IPv4 (Alex)
domain chaos.local search chaos.local nameserver 192.168.2.1
Subnetz 2, IPv6 (Wedding)
domain chaos.local search chaos.local nameserver fc00::2:1:2c0:6cff:fe00:f001
/etc/network/interfaces
Karow
# This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). # The loopback network interface auto lo iface lo inet loopback # The primary network interface allow-hotplug eth0 iface eth0 inet static address 192.168.1.1 netmask 255.255.255.0 network 192.168.1.0 broadcast 192.168.1.255 # dns-* options are implemented by the resolvconf package, if installed dns-nameservers 127.0.0.1 dns-search chaos.local iface eth0 inet6 static address fc00::0:1:2c0:6cff:fe00:f001 netmask 64 # dns-* options are implemented by the resolvconf package, if installed dns-nameservers ::1 dns-search chaos.local auto 6in4 iface 6in4 inet6 v4tunnel address fc00::1:1:2c0:6cff:fe00:f001 netmask 64 endpoint 172.16.1.2 local 172.16.1.1 ttl 255 gateway fc00::1:1:2c0:6cff:fe00:f002 allow-hotplug eth1 iface eth1 inet static address 172.16.1.1 netmask 255.255.0.0 network 172.16.0.0 broadcast 172.16.255.255 gateway 172.16.1.2 # dns-* options are implemented by the resolvconf package, if installed dns-nameservers 127.0.0.1 dns-search chaos.local up ip -6 addr flush dev $IFACE || true
Lankwitz
# This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). # The loopback network interface auto lo iface lo inet loopback # The primary network interface allow-hotplug eth0 iface eth0 inet static address 192.168.2.1 netmask 255.255.255.0 network 192.168.2.0 broadcast 192.168.2.255 # dns-* options are implemented by the resolvconf package, if installed dns-nameservers 127.0.0.1 dns-search chaos.local iface eth0 inet6 static address fc00::2:1:2c0:6cff:fe00:f001 netmask 64 # dns-* options are implemented by the resolvconf package, if installed dns-nameservers ::1 dns-search chaos.local auto 6in4 iface 6in4 inet6 v4tunnel address fc00::1:1:2c0:6cff:fe00:f002 netmask 64 endpoint 172.16.1.1 local 172.16.1.2 ttl 255 gateway fc00::1:1:2c0:6cff:fe00:f001 allow-hotplug eth1 iface eth1 inet static address 172.16.1.2 netmask 255.255.0.0 network 172.16.0.0 broadcast 172.16.255.255 gateway 172.16.1.1 # dns-* options are implemented by the resolvconf package, if installed dns-nameservers 127.0.0.1 dns-search chaos.local up ip -6 addr flush dev $IFACE || true
Subnetz 1, IPv4 (Buckow)
# This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). # The loopback network interface auto lo iface lo inet loopback # The primary network interface allow-hotplug eth0 iface eth0 inet static address 192.168.1.11 netmask 255.255.255.0 network 192.168.1.0 broadcast 192.168.1.255 gateway 192.168.1.1 # dns-* options are implemented by the resolvconf package, if installed dns-nameservers 192.168.1.1 dns-search chaos.local
Subnetz 1, IPv6 (Britz)
# This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). # The loopback network interface auto lo iface lo inet loopback # The primary network interface allow-hotplug eth0 iface eth0 inet6 static address fc00::0:1:2c0:6cff:fe00:f013 netmask 64 gateway fc00::0:1:2c0:6cff:fe00:f001 # dns-* options are implemented by the resolvconf package, if installed dns-nameservers fc00::0:1:2c0:6cff:fe00:f001 dns-search chaos.local
Subnetz 2, IPv4 (Alex)
# This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). # The loopback network interface auto lo iface lo inet loopback # The primary network interface allow-hotplug eth0 iface eth0 inet static address 192.168.2.10 netmask 255.255.255.0 network 192.168.2.0 broadcast 192.168.2.255 gateway 192.168.2.1 # dns-* options are implemented by the resolvconf package, if installed dns-nameservers 192.168.2.1 dns-search chaos.local
Subnetz 2, IPv6 (Wedding)
# This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). # The loopback network interface auto lo iface lo inet loopback # The primary network interface allow-hotplug eth0 iface eth0 inet6 static address fc00::2:1:2c0:6cff:fe00:f012 netmask 64 gateway fc00::2:1:2c0:6cff:fe00:f001 # dns-* options are implemented by the resolvconf package, if installed dns-nameservers fc00::2:1:2c0:6cff:fe00:f001 dns-search chaos.local
/etc/bind/chaos.local
chaos.local. IN SOA karow root.chaos.local. ( 2011092603 ; serial 1D ; refresh 2H ; retry 1W ; expiry 2D ) ; minimum IN NS karow IN NS lankwitz karow IN A 192.168.1.1 IN AAAA fc00::0:1:2c0:6cff:fe00:f001 karowtunnel IN AAAA fc00::1:1:2c0:6cff:fe00:f001 marzahn IN A 192.168.1.10 marzahn4 IN A 192.168.1.10 buckow IN A 192.168.1.11 buckow4 IN A 192.168.1.11 treptow IN AAAA fc00::0:1:2c0:6cff:fe00:f012 treptow6 IN AAAA fc00::0:1:2c0:6cff:fe00:f012 britz IN AAAA fc00::0:1:2c0:6cff:fe00:f013 britz6 IN AAAA fc00::0:1:2c0:6cff:fe00:f013 lankwitz IN A 192.168.2.1 IN AAAA fc00::2:1:2c0:6cff:fe00:f001 lankwitztunnel IN AAAA fc00::1:1:2c0:6cff:fe00:f002 alex IN A 192.168.2.10 alex4 IN A 192.168.2.10 mitte IN A 192.168.2.11 mitte4 IN A 192.168.2.11 wedding IN AAAA fc00::2:1:2c0:6cff:fe00:f012 wedding6 IN AAAA fc00::2:1:2c0:6cff:fe00:f012 kudamm IN A 192.168.2.13 kudamm4 IN A 192.168.2.13
/etc/bind/named.conf
include "/etc/bind/named.conf.options"; include "/etc/bind/named.conf.local"; include "/etc/bind/named.conf.default-zones";
/etc/bind/named.conf.options
options { directory "/var/cache/bind"; dnssec-enable no; notify yes; auth-nxdomain no; # conform to RFC1035 listen-on-v6 { any; }; };
/etc/bind/named.conf.local
Karow
zone "chaos.local" { type master; file "/etc/bind/chaos.local"; allow-transfer { 172.16.1.2; }; }; zone "1.168.192.in-addr.arpa" { type master; file "/etc/bind/1.168.192.in-addr.arpa"; allow-transfer { 172.16.1.2; }; }; zone "2.168.192.in-addr.arpa" { type master; file "/etc/bind/2.168.192.in-addr.arpa"; allow-transfer { 172.16.1.2; }; }; zone "0.f.0.0.e.f.f.f.c.6.0.c.2.0.1.0.0.0.0.0.0.0.0.0.0.0.0.0.c.f.ip6.arpa" { type master; file "/etc/bind/0.f.0.0.e.f.f.f.c.6.0.c.2.0.1.0.0.0.0.0.0.0.0.0.0.0.0.0.c.f.ip6.arpa"; allow-transfer { 172.16.1.2; }; }; zone "0.f.0.0.e.f.f.f.c.6.0.c.2.0.1.0.0.0.2.0.0.0.0.0.0.0.0.0.c.f.ip6.arpa" { type master; file "/etc/bind/0.f.1.0.e.f.f.f.c.6.0.c.2.0.1.0.0.0.2.0.0.0.0.0.0.0.0.0.c.f.ip6.arpa"; allow-transfer { 172.16.1.2; }; }; zone "0.f.0.0.e.f.f.f.c.6.0.c.2.0.1.0.0.0.1.0.0.0.0.0.0.0.0.0.c.f.ip6.arpa" { type master; file "/etc/bind/0.f.0.0.e.f.f.f.c.6.0.c.2.0.1.0.0.0.1.0.0.0.0.0.0.0.0.0.c.f.ip6.arpa"; allow-transfer { 172.16.1.2; }; };
Lankwitz
zone "chaos.local" { type slave; file "chaos.local.bak"; masters { 172.16.1.1; }; allow-notify { 172.16.1.1; }; }; zone "1.168.192.in-addr.arpa" { type slave; file "1.168.192.in-addr.arpa.bak"; masters { 172.16.1.1; }; allow-notify { 172.16.1.1; }; }; zone "2.168.192.in-addr.arpa" { type slave; file "2.168.192.in-addr.arpa.bak"; masters { 172.16.1.1; }; allow-notify { 172.16.1.1; }; }; zone "0.f.0.0.e.f.f.f.c.6.0.c.2.0.1.0.0.0.0.0.0.0.0.0.0.0.0.0.c.f.ip6.arpa" { type slave; file "0.f.0.0.e.f.f.f.c.6.0.c.2.0.1.0.0.0.0.0.0.0.0.0.0.0.0.0.c.f.ip6.arpa.bak"; masters { 172.16.1.1; }; allow-notify { 172.16.1.1; }; }; zone "0.f.0.0.e.f.f.f.c.6.0.c.2.0.1.0.0.0.2.0.0.0.0.0.0.0.0.0.c.f.ip6.arpa" { type slave; file "0.f.0.0.e.f.f.f.c.6.0.c.2.0.1.0.0.0.2.0.0.0.0.0.0.0.0.0.c.f.ip6.arpa.bak"; masters { 172.16.1.1; }; allow-notify { 172.16.1.1; }; }; zone "0.f.0.0.e.f.f.f.c.6.0.c.2.0.1.0.0.0.1.0.0.0.0.0.0.0.0.0.c.f.ip6.arpa" { type slave; file "0.f.0.0.e.f.f.f.c.6.0.c.2.0.1.0.0.0.1.0.0.0.0.0.0.0.0.0.c.f.ip6.arpa.bak"; masters { 172.16.1.1; }; allow-notify { 172.16.1.1; }; };
/etc/bind/1.168.192.in-addr.arpa
1.168.192.in-addr.arpa. IN SOA karow.chaos.local. root.chaos.local. ( 2011092204 ; serial 1D ; refresh 2H ; retry 1W ; expiry 2D ) ; minimum IN NS karow.chaos.local. IN NS lankwitz.chaos.local. 1 IN PTR karow.chaos.local. 10 IN PTR marzahn.chaos.local. 11 IN PTR buckow.chaos.local.
/etc/bind/2.168.192.in-addr.arpa
2.168.192.in-addr.arpa. IN SOA karow.chaos.local. root.chaos.local. ( 2011092204 ; serial 1D ; refresh 2H ; retry 1W ; expiry 2D ) ; minimum IN NS karow.chaos.local. IN NS lankwitz.chaos.local. 1 IN PTR lankwitz.chaos.local. 10 IN PTR alex.chaos.local. 11 IN PTR mitte.chaos.local. 13 IN PTR kudamm.chaos.local.
/etc/bind/0.f.0.0.e.f.f.f.c.6.0.c.2.0.1.0.0.0.0.0.0.0.0.0.0.0.0.0.c.f.ip6.arpa
@ IN SOA 0.f.0.0.e.f.f.f.c.6.0.c.2.0.1.0.0.0.0.0.0.0.0.0.0.0.0.0.c.f.ip6.arpa. root.chaos.local. ( 2011092603 ; serial 1D ; refresh 2H ; retry 1W ; expiry 2D ) ; minimum IN NS karow.chaos.local. IN NS lankwitz.chaos.local. $ORIGIN 0.f.0.0.e.f.f.f.c.6.0.c.2.0.1.0.0.0.0.0.0.0.0.0.0.0.0.0.c.f.ip6.arpa. 1.0 IN PTR karow.chaos.local. 2.1 IN PTR treptow.chaos.local. 3.1 IN PTR britz.chaos.local.
/etc/bind/0.f.0.0.e.f.f.f.c.6.0.c.2.0.1.0.0.0.1.0.0.0.0.0.0.0.0.0.c.f.ip6.arpa
@ IN SOA 0.f.0.0.e.f.f.f.c.6.0.c.2.0.1.0.0.0.1.0.0.0.0.0.0.0.0.0.c.f.ip6.arpa. root.chaos.local. ( 2011092603 ; serial 1D ; refresh 2H ; retry 1W ; expiry 2D ) ; minimum IN NS karow.chaos.local. IN NS lankwitz.chaos.local. $ORIGIN 0.f.0.0.e.f.f.f.c.6.0.c.2.0.1.0.0.0.1.0.0.0.0.0.0.0.0.0.c.f.ip6.arpa. 1.0 IN PTR karowtunnel.chaos.local. 2.0 IN PTR lankwitztunnel.chaos.local.
/etc/bind/0.f.0.0.e.f.f.f.c.6.0.c.2.0.1.0.0.0.2.0.0.0.0.0.0.0.0.0.c.f.ip6.arpa
@ IN SOA 0.f.0.0.e.f.f.f.c.6.0.c.2.0.1.0.0.0.2.0.0.0.0.0.0.0.0.0.c.f.ip6.arpa. root.chaos.local. ( 2011092603 ; serial 1D ; refresh 2H ; retry 1W ; expiry 2D ) ; minimum IN NS karow.chaos.local. IN NS lankwitz.chaos.local. $ORIGIN 0.f.0.0.e.f.f.f.c.6.0.c.2.0.1.0.0.0.2.0.0.0.0.0.0.0.0.0.c.f.ip6.arpa. 1.0 IN PTR lankwitz.chaos.local. 2.1 IN PTR wedding.chaos.local.