Tunel ipv6 na Slackware + ReverseDNS (Stałe IP)

Co będzie potrzebne:

– kernel z wkompilowanym ipv6
– zainstalowany serwer nazw (bind)
– tunel ipv6 z tunnelbroker.net
– dwie domeny, jedna która będzie służyła jako DNS z rekordem ‚A’ naszego serwera i druga z
której zrobimy vhosta z rekordem  ‚AAAA’ (w moim przypadku AAAA będzie 2001:470:924c::1 i domena „ipv6.klodzko.linux.pl”, a domeną DNS będzie „dns.ipv6.klodzko.linux.pl”)
– Stałe IP
– Program ipv6calc
– Trochę chęci i czasu :)

Część 1.

Zaczynamy od zrobienia tunelu.

Po pierwsze należy dopuścić pakiety ICMP, w tym celu należy dodać do skryptu od iptables następujący wpis:

iptables -A INPUT -p icmp –icmp-type echo-request -j ACCEPT

Następnie logujemy się na swoje konto (które wcześniej należy założyć) w serwisie tunnelbroker.net i klikamy

„Create Regular Tunnel”

Wypełniamy formularz, „IPv4 endpoint: twoje_ip” zaznaczamy endpoint tunelu (najlepiej jak najbliższy) i klikamy na „submit”

Po tej operacji powinno pokazać się: O.K.: Your tunnel has been allocate teraz przechodzimy do zakładki „Tunnel Details” i przy wpisie „Routed /48:” klikamy na „Allocate”. Teraz mamy gotowy tunel ipv6 z pulą adresów /48 i /64 do RevDNS bedziemy używać puli /48.

Następnym zadaniem będzie zrobienie skryptu podnoszącego nasz tunel ipv6 (poniżej przykładowy skrypt)

ifconfig sit0 up
ifconfig sit0 inet6 tunnel ::216.66.80.26 #ip serwera na którym założyliśmy tunel
ifconfig sit1 up
ifconfig sit1 inet6 add 2001:470:924c::1/48 #tutaj podajemy adres ipv6 ze swojej puli
route -A inet6 add ::/0 dev sit1

Po odpaleniu skryptu mamy podniesiony tunel ipv6, sprawdzamy czy działa poleceniem:

ping6 ipv6.google.com

Jeżeli zobaczymy coś takiego:

64 bytes from fx-in-x68.google.com: icmp_seq=1 ttl=57 time=74.0 ms

znaczy że tunel działa poprawnie.

Część 2. (ReverseDNS)

Pierwsze co należy zrobić to ustawić revDNS na naszą domene, w tym celu logujemy sie na swoje konto w tunnelbroker i klikamy przy wpisie „RDNS Delegation NS1:” na odnośnik „none” i w okienku „Name Server 1:” wpisujemy swoją domenę DNS (w moim przypadku będzie to „dns.ipv6.klodzko.linux.pl”) i klikamy na „submit”

Teraz do poprawnie działającego reva potrzebny nam odblokowany port 53 i 953 w tym celu do skryptu iptables dodajemy wpisy:

iptables -A tcp_inbound -p TCP -s 0/0 –destination-port 53 -j ACCEPT
iptables -A tcp_inbound -p TCP -s 0/0 –destination-port 953 -j ACCEPT

Następnym krokiem jest edycja pliku /etc/named.conf

w sekcji „options” dopisujemy:

listen-on-v6 {any;};

żeby cała sekcja wyglądała następująco:

options {
directory „/var/named”;
notify yes;
listen-on port 53 {any;};
version „SCO UnixWare 7.1 chacker server”;
listen-on-v6 {any;};
};

zapisujemy plik i przystępujemy do obliczenia strefy zwrotnej dla naszego ipv6, do tego celu będzie nam potrzebny program ipv6calc do pobrania stąd. po pobraniu i zainstalowaniu wydajemy polecenie:

ipv6calc -r 2001:470:924c::/48

(tutaj oczywiście podajecie swoją pule adresową), obliczony revDNS dla mojej puli wygląda następująco

c.4.2.9.0.7.4.0.1.0.0.2.ip6.int

Gdy mamy już to gotowe ponownie otwieramy do edycji plik /etc/named.conf i dopisujemy na końcu taki wpis:

zone „c.4.2.9.0.7.4.0.1.0.0.2.ip6.arpa” {
type master;
file „ipv6.zone”;
};

należy zauważyć ze zostało zmienione .ip6.int na .ip6.arpa

Zapisujemy plik i przechodzimy do katalogu /var/named/ i tworzymy plik strefy ipv6

cd /var/named/
touch ipv6.zone

następnie edytujemy ten plik i wpisujemy do niego:

; c.4.2.9.0.7.4.0.1.0.0.2.ip6.arpa.
;

$TTL 100

@ IN SOA dns.ipv6.klodzko.linux.pl admin.ipv6.klodzko.linux.pl. (
2008071703 ; serial

21600 ; refresh
7200 ; retry
1209600 ; expire
100 ) ; default_ttl
;

@ IN NS dns.ipv6.klodzko.linux.pl.

1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0 IN PTR ipv6.klodzko.linux.pl.

(ilość cyfr w tym wpisie ‚1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0’ zależy od ilości cyfr i liter w obliczonym RevDNS dla naszej puli, czyli od wyniku ‚c.4.2.9.0.7.4.0.1.0.0.2.ip6.int’ wywalamy .ip6.int i zostaje nam 12 znaków a z uwagi na to iż adresy są 32 bitowe robimy działanie 32 – 12 = 20)

Zapisujemy i zamykamy.

Teraz pozostaje nam tylko uruchomić binda poleceniem /etc/rc.d/rc.bind start i sprawdzić czy działa revDNS

polecenie host 2001:470:924c::1 powinno zwrócić takie coś:

1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.c.4.2.9.0.7.4.0.1.0.0.2.ip6.arpa domain name pointer ipv6.klodzko.linux.pl.

Jeżeli tak się nie stanie, trzeba przeanalizować wszystki pliki bo gdzieś popełniłeś błąd.

Przykład 2

Jeżeli nie dysponujemy domeną typu AAAA a chcemy zrobić vhosta należy wybraną domenę skierować na rekord NS naszego serwera (w moim przypadku domenę ipv6.klodzko.linux.pl skieruję na dns.ipv6.klodzko.linux.pl). Następnym krokiem będzie dodanie  wpisu do pliku /etc/named.conf wg poniższego wzoru.

zone „ipv6.klodzko.linux.pl” IN {
type master;
file „ipv6.klodzko.linux.pl”;
allow-update { none; };
allow-transfer { none; };
notify yes;
};

następnie w katalogu /var/named/ tworzymy plik strefy (w moim przypadku „ipv6.klodzko.linux.pl”)

cd /var/named

touch ipv6.klodzko.linux.pl

I do tego pliku wpisujemy dane wg wzoru poniżej.

$TTL 60

$ORIGIN ipv6.klodzko.linux.pl.

@ IN SOA dns.ipv6.klodzko.linux.pl. admin.klodzko.linux.pl. (

2009060601 ; serial
8H ; refresh
2H ; retry
1W ; expire
1D ) ; default_ttl

@ IN NS dns.ipv6.klodzko.linux.pl.
@ IN AAAA
2001:470:924c::1

teraz tylko zostaje przeładowanie nameda /etc/rc.d/rc.bind restart i gotowe.

Autor: Krzysztof Wnuk

Brak komentarzy.

Zostaw komentarz