Wysłany: 2006-03-17, 21:33 IPng pod linuksem - Krok po kroku
Kilka słów na wstępie o IPv6:
IPv6 to jest nowy protokół internetowy opierający się na wielu tunelach drążonych w internecie. Część testowa tych tuneli czyli pula 3ffe::/16 należy do 6BONE , część nie-testową można rozpoznać po tym, że jest on z puli 2000::/16 lub 2001::/16. Aktualna pula testowa działać będzie do 6 czerwca 2006 roku i jest którąś z kolei z testowych. Nie udowodniono żadnych oczywistych związków daty wygaśnięcia testowej puli IPv6 (6.06.2006) z szatanem. Protokół ten nie miał nigdy zastąpić IPv4, czego nie zrobi. Miał natomiast zaradzić problemowi wyczerpywania sie puli IPv4 co może zrobić z powodzeniem.
IPv6@linux [Krok 1]
Aktualnie łatwo i dość czybko można dostać swoją pulę testowych adresów IPv6 od instytucji zwanej xs26, rejestrując się tam dostaniemy pule adresów 3ffe:80ee:xxxx::/48, gdzie x to cyfra, xxxx to cztery dowolnie wybrane cyfry szesnastkowe.
Należy sie tam zarejestrować i poczekać na e-mail od admina/adminów. Zazwyczaj kilka sekund do kilku minut.
IPv6@linux [Krok 2]
Następnie musimy utworzyć nowy tunel do naszego konta na xs26, w którym należy zawrzeć numer IP naszego komputera, dzięki któremu komputery będą wiedziały gdzie tunelować wasze IP.
Aby tego dokonać logujemy się z użyciem loginu i hasła, które nam wybrali i wchodzimy do sekcji "Tunnels", wpisujemy to, o co nas proszą i klikamy na Create. Następnie przy utworzonym tunelu wciskamy "Show details". Po wyświetleniu sie następnej strony wybieramy z 8 PoPów od 1. do 4., gdzie zaczynać sie będzie nasz tunel. Najlepiej sprawdzić wszystkie osiem traceroutem (choć niektórych sie nie da) i wybrać te, w których trasa jest jak najkrótsza. Klikamy na "Submit changes" i mamy tunel stworzony.
IPv6@linux [Krok 3]
Jeszcze nie mamy żadnej puli IPv6, tutaj musimy podać czy będziemy brać od nich IP przez stałe IP czy zmienne.
Oto jak to zrobić:
Jeżeli zmienne wybieramy z Tunnel object "Dynamic/dial-up", w przeciwnym wypadku IP podane krok wcześniej. Opcjonalnie wpisujemy dowolny opis, zaś obowiązkowo jakiś musi być. Po utworzeniu strefy zapisujemy sobie naszą pulę (a zwłaszcza xxxx z 3ffe:80ee:xxxx::/48). Jeżeli ktoś chce sobie zrobić badziewne i lamerskie hosty na IRCa, czego nie pochwalam musi wykonać krok niezalecany i obciążony dożywotnią klątwą i wieczną impotencją.
IPv6@linux [Krok niezalecany i obciążony dożywotnią klątwą i wieczną impotencją]
Aby takie coś zrobić musimy utworzyć konto na freedns.sgh.waw.pl lub na czymś innym, co daje możliwość utworzenia strefy odwrotnej DNS dla IPv6. Dokładniej opisze to zapewne w innym kursie.
Jeżeli sami doszliśmy do tego jak to zrobić należy kliknąć w "DNS Settings" i wpisać dwa serwery DNS, które hostować będą nasze strefy odwrotne DNS. Dla FreeDNS.sgh.waw.pl będzie to fns1.sgh.waw.pl i fns2.sgh.waw.pl.
IPv6@linux [Krok 4]
Tutaj należy zadbać o support IPv6 na naszej maszynie, czyli konkretniej:
- kernel conajmniej 2.4.x z wkompilowanym IPv6 lub z modułem, lecz musi być ładowany przed initem IPv6,
- ifconfig conajmniej 1.52,
- iproute2.
Kernel ściągamy z ftp.kernel.org, pozostałe dwa ustrojstwa zapewne z ftp.icm.edu.pl. Jak wszystko sie kompiluje zakładam, że wiecie. Jeżeli nie módlcie sie o artykul w tej sprawie.
IPv6@linux [Krok 5]
Musimy dodać w /etc/rc.d lub /etc/init.d (w zależności od posiadanej dystrybucji linuksa) plik o nazwie rc.ipv6, o treści:
Kod:
#!/bin/sh
#
# IPv6 networking Slackware-style startup script for XS26
# Provided by Jakub Jankowski <shasta [at] atn.pl>
#
# Translated by kaboom na poczekaniu
#
# TEN SKRYPT WYMAGA ZAINSTALOWANEGO (o czym mówiłem) iproute2
#
# Ten plik powinien znajdować sie w /etc/rc.d jako rc.ipv6 i powinien być wywoływany
# z /etc/rc.d/rc.local w ten sposób (edytujemy oczywiście ten plik):
#
# if [ -x /etc/rc.d/rc.ipv6 ]; then
# . /etc/rc.d/rc.ipv6 start
# fi
#
# Ten skrypt przypisze Tobie pule 3ffe:80ee:XXXX::/48 która z resztą jest błędna
# i powinna być zmieniona na właściwą.
#
# Nasze IPv4
# Wpisz tutaj swoje IPv4 jako miejsce, gdzie tunel będzie miał jeden z końców
LOCAL_IPV4="123.123.123.123"
# Nie-nasze IPv4
# Wpisz tutaj IP PoPa, z którym chciałeś pracować w punkcie nr 2.
REMOTE_IPV4="222.222.222.222"
# Twoja pula IPv6 od xs26
# Pula, która będzie przypisana Tobie w połączeniu LOCAL_IPV4 <==> REMOTE_IPV$
ZONE="3ffe:80ee:XXXX::/48"
# Adresy IPv6 do użycia. Muszą należeć do ZONE
# Wybierz kilka adresów IPv6, które będą Tobie przypisane. Znaczy tej maszynie
# Notka: Musisz wybrać conajmniej jeden.
IPV6_ADDRS="3ffe:80ee:XXXX::1/128 3ffe:80ee:XXXX::2/128"
#
# NIE ZMIENIAJ NIC PONIŻEJ TEJ LINNI CHYBA, ŻE WIESZ CO ROBISZ.
# BIERZ PRZYKŁAD Z TŁUMACZA, ON TEŻ SIE DO TEGO ZASTOSOWAŁ.
#
# Start ipv6:
ipv6_start() {
echo "Starting IPv6 tunnel from $LOCAL_IPV4 to $REMOTE_IPV4"
# Just in case, remove already existing tunnel
/sbin/ip tun del xs26 2>/dev/null 1>/dev/null
# Add tunnel device
/sbin/ip tun add xs26 mode sit remote $REMOTE_IPV4 local $LOCAL_IPV4 ttl 64
/sbin/ip link set xs26 up
# Add addrs
for ADDR in $IPV6_ADDRS; do
/sbin/ip addr add $ADDR dev xs26
done
# Setup nullroute so packets to unused ips from our zone aren't sent back
/sbin/ip route add $ZONE dev lo
# Setup routing to the world
/sbin/ip route add 2000::/3 dev xs26
Możesz pisać nowe tematy Możesz odpowiadać w tematach Nie możesz zmieniać swoich postów Nie możesz usuwać swoich postów Nie możesz głosować w ankietach Nie możesz załączać plików na tym forum Możesz ściągać załączniki na tym forum