1. Wstęp
W pliku /etc/rc.conf powinniśmy ustawić zmienną ip6mode:
1. Wstęp
Dokument ten opisuje jeden ze sposobów na szybkie i bezproblemowe zaistnienie w testowej sieci
opartej na protokole IP następnej generacji - IPv6; pokazuje on, jak szybko skonfigurować
NetBSD do obsługi IPv6 poprzez tunel gif.
2. Obsługa IPv6 w NetBSD
NetBSD (od wersji 1.5) standardowo obsługuje protokół IPv6. Jeśli korzystamy z wcześniejszego
wydania, możemy zastosować patche KAME (do pobrania z ftp://ftp.kame.net/). Jednak znacznie
lepszym rozwiązaniem jest uaktualnienie swojego systemu co najmniej do najnowszej wersji
z gałęzi 1.5.
3. Kernel
Standardowy kernel GENERIC standardowo zawiera niezbędne opcje do korzystania z IPv6. Potrzebne
są następujące linijki:
options INET6 # IPV6
pseudo-device gif 4 # IPv[46] over IPv[46] tunnel (RFC1933)
device faith 1 # IPv6-to-IPv4 relaying (translation)
4. Wstępna konfiguracja
Warto dodać następujące wpisy do pliku /etc/hosts:
::1 ipv6-localhost ipv6-loopback
fe00::0 ipv6-localnet
ff00::0 ipv6-mcastprefix
ff02::1 ipv6-allnodes
ff02::2 ipv6-allrouters
ff02::3 ipv6-allhosts
ip6mode=host # host, autohost or router
5. Uzyskanie tunelu
Pierwszym krokiem będzie uzyskanie tunelu IPv6 od kogoś już wpiętego do sieci 6BONE (testowej
sieci opartej na IPv6). W Polsce taki tunel można uzyskać np.
z ICM'u
/sbin/ifconfig gif0 tunnel ${Local_IPv4} ${Remote_IPv4} /sbin/ifconfig gif0 inet6 ${Local_IPv6} ${Remote_IPv6} prefixlen ${Prefix_Len} /sbin/route add -inet6 default ${Remote_IPv6}
Plik named.conf:
zone "ipv6.mydomain.pl" { type master; file "ipv6.mydomain.pl"; }; zone "f.f.0.0.0.1.0.8.e.f.f.3.ip6.int" { type master; file "ipv6-mydomain-rev"; };
Plik ipv6.mydomain.pl:
ipv6.mydomain.pl. 1D IN SOA ns.mydomain.pl. root.mydomain.pl. ( 2000060900; serial 4H ; refresh 1H ; retry 1W ; expiry 1D ) ; minimum ipv6.mydomain.pl. 1D IN NS ns1 ipv6.mydomain.pl. 1D IN NS ns2 jakishost 1D IN AAAA 3ffe:8010:ff::2Plik ipv6-mydomain-rev:
$TTL 3000 @ IN SOA ns.mydomain.pl. root.mydomain.pl. ( 2000062003 14400 3600 1209600 86400 ) IN NS ns1 IN NS ns2 1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0 IN PTR z-ICM.ipv6.mydomain.pl. 2.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0 IN PTR jakishost.ipv6.mydomain.pl.
Większość standardowych daemonów bezproblemowo działa po IPv6, wystarczy tylko uaktywnić odpowiednie wpisy w plku inetd.conf:
# IPv6 services. # The only difference with the above is "tcp6" instead of "tcp". # Be sure to enable both "tcp" and "tcp6" when you need service for # both IPv4/v6. Consult inetd(8) for details. # #ftp stream tcp6 nowait root /usr/libexec/ftpd ftpd -ll #telnet stream tcp6 nowait root /usr/libexec/telnetd telnetd #shell stream tcp6 nowait root /usr/libexec/rshd rshd -L #login stream tcp6 nowait root /usr/libexec/rlogind rlogind -L #finger stream tcp6 nowait nobody /usr/libexec/fingerd fingerd #tftp dgram udp6 wait root /usr/libexec/tftpd tftpd -l -s /tftpboot # # IPv6 RPC services. # #rstatd/1-3 dgram rpc/udp6 wait:100 root /usr/libexec/rpc.rstatd rpc.rstatd #rusersd/2-3 dgram rpc/udp6 wait:100 root /usr/libexec/rpc.rusersd rpc.rusersd
Większość narzędzi typu OpenSSH standardowo obsługuje IPv6.
Prosty skrypt shellowy ułatwiajacy uruchomienie statycznego tunelu IPv6 na FreeBSD/NetBSD/OpenBSD