6to4: Różnice pomiędzy wersjami

Z Polskie Wiki IPv6
(Zasada działania: poprawki ortograficzno-stylistyczne)
(Spacje, literówki, ogonki)
 
(Nie pokazano 8 wersji utworzonych przez 6 użytkowników)
Linia 5: Linia 5:
 
Mechanizm 6to4 polega na pakowaniu (tunelowaniu) pakietów IPv6 w pakiety IPv4. Pole protokołu w nagłówku otrzymuje wartość 41. Tak utworzone pakiety wysyłane są do komputera stanowiącego bramę pomiędzy siecią opartą o IPv4 a "prawdziwą" siecią IPv6. Komputerów taki może być w całym internecie dowolna ilość lecz w celu uproszczenia konfiguracji po stronie użytkownika wszystkim im powinien zgodnie z [http://www.apps.ietf.org/rfc/rfc3068.html RFC 3068] być przypisany adres 192.88.99.1. Następnie od konfiguracji routingu IPv4 zależy który konkretnie komputer stanowi domyślną bramę dla wybranego użytkownika internetu. Przy poprawnej konfiguracji zawsze jest to komputer najbliższy a zatem zapewniający najszybsze połączenie. Pakiety powracać mogą całkiem inną drogą i nosić praktycznie dowolny adres IPv4 nadawcy. Trzeba to wziąć pod uwagę przy konfiguracji zapór sieciowych.
 
Mechanizm 6to4 polega na pakowaniu (tunelowaniu) pakietów IPv6 w pakiety IPv4. Pole protokołu w nagłówku otrzymuje wartość 41. Tak utworzone pakiety wysyłane są do komputera stanowiącego bramę pomiędzy siecią opartą o IPv4 a "prawdziwą" siecią IPv6. Komputerów taki może być w całym internecie dowolna ilość lecz w celu uproszczenia konfiguracji po stronie użytkownika wszystkim im powinien zgodnie z [http://www.apps.ietf.org/rfc/rfc3068.html RFC 3068] być przypisany adres 192.88.99.1. Następnie od konfiguracji routingu IPv4 zależy który konkretnie komputer stanowi domyślną bramę dla wybranego użytkownika internetu. Przy poprawnej konfiguracji zawsze jest to komputer najbliższy a zatem zapewniający najszybsze połączenie. Pakiety powracać mogą całkiem inną drogą i nosić praktycznie dowolny adres IPv4 nadawcy. Trzeba to wziąć pod uwagę przy konfiguracji zapór sieciowych.
  
Trochę inaczej traktowane są pakiety przeznaczone do innych komputerów podłączonych z użyciem 6to4. Z ich adresu skonstruowanego tak jak to opisano poniżej odczytywany jest adres IPv4, pod który dane są wysyłane bezpośrednio z pominięciem bramy. Wygląda to tak jakby wszyscy użtykonicy 6to4 podłączeni byli do jednej sieci o przedrostku 2002:/16.
+
Trochę inaczej traktowane są pakiety przeznaczone do innych komputerów podłączonych z użyciem 6to4. Z ich adresu skonstruowanego tak jak to opisano poniżej odczytywany jest adres IPv4, pod który dane są wysyłane bezpośrednio z pominięciem bramy. Wygląda to tak jakby wszyscy użytkownicy 6to4 podłączeni byli do jednej sieci o przedrostku 2002:/16.
  
 
==Adresy IPv6==
 
==Adresy IPv6==
  
Użytkownik dysponujący conajmniej jednym publicznym adresem IPv4 (dalej oznaczanym jako V4ADDR) korzystający z 6to4 dostaje do dyspozycji 48 bitowy przedrostek (prefix) skonstruowany według następujących zasad:
+
Użytkownik dysponujący co najmniej jednym publicznym adresem IPv4 (dalej oznaczanym jako V4ADDR) korzystający z 6to4 dostaje do dyspozycji 48 bitowy przedrostek (prefix) skonstruowany według następujących zasad:
 
   
 
   
 
* FP: 2
 
* FP: 2
Linia 27: Linia 27:
 
==Zastosowania==
 
==Zastosowania==
  
6to4 jest bardzo wygodnym mechanizmem i łatwo się go konfiguruje dla większości systemów operacyjnych. Obsługę zapewniają FreeBSD, NetBSD, Linux, Solaris oraz Windows. Najprostrzym jest rozwiązanie jeżeli router 6to4 oraz router IPv4 dla danej sieci to ta sama maszyna.  
+
6to4 jest bardzo wygodnym mechanizmem i łatwo się go konfiguruje dla większości systemów operacyjnych. Obsługę zapewniają FreeBSD, NetBSD, Linux, Solaris oraz Windows. Najprostszym jest rozwiązanie jeżeli router 6to4 oraz router IPv4 dla danej sieci to ta sama maszyna.  
  
  
Linia 62: Linia 62:
 
* FreeBSD, strona [http://www.freebsd.org/cgi/man.cgi?query=stf&apropos=0&sektion=0&manpath=FreeBSD+5.3-RELEASE+and+Ports&format=html stf(4)] podręcznika systemowego.
 
* FreeBSD, strona [http://www.freebsd.org/cgi/man.cgi?query=stf&apropos=0&sektion=0&manpath=FreeBSD+5.3-RELEASE+and+Ports&format=html stf(4)] podręcznika systemowego.
  
 +
==Przykłady==
 +
 +
Jakie polecenia wydać by skonfigurować końcówkę tunelu 6to4.
 +
 +
===Linux===
 +
Wariant współczesny za pomocą ''iproute''(8).
 +
<pre>
 +
# /sbin/ip tunnel del tun6to4                    # na wszelki wypadek
 +
# /sbin/ip tunnel add tun6to4 mode sit ttl 64 remote any local <lokalny-adres-ipv4>
 +
# /sbin/ip link set dev tun6to4 up
 +
# /sbin/ip -6 addr add <prefix-6to4>::/16 dev tun6to4
 +
# /sbin/ip -6 route add default via ::192.88.99.1 dev tun6to4 metric 1
 +
</pre>
 +
 +
Wersja bardziej tradycyjna przy użyciu programów ''ifconfig''(8) oraz ''route''(8).
 +
<pre>
 +
# /sbin/ifconfig sit0 down                        # na wszelki wypadek
 +
# /sbin/ifconfig sit0 up <lokalny-adres-ipv4> netmask 0xffffffff
 +
# /sbin/ifconfig sit0 add <prefix-6to4>::/16
 +
# /sbin/route -A inet6 add default gw ::192.88.99.1
 +
</pre>
 +
 +
; <prefix-6to4> : Obliczony na podstawie '''publicznego''' adresu IPv4 za pomocą którego będziemy komunikować się ze światem. Gdy stosujemy NAT (patrz [[6to4#Zastosowania|Zastosowania]], rys. 2)jest to adres zewnętrzny routera
 +
; <lokalny-adres-ipv4> : Adres IPv4 interfejsu sieciowego na komputerze stanowiącym zakończenie tunelu. W przypadku bezpośredniego połączenia do internetu (patrz [[6to4#Zastosowania|Zastosowania]] rys. 1)jest to ten sam adres od którego pochodzi <prefix-6to4>. Gdy zaś router 6to4 znajduje się za NAT jest to, najczęściej prywatny, adres IPv4 przypisany do karty sieciowej.
 
==Bezpieczeństwo==
 
==Bezpieczeństwo==
  
 
6to4 może stwarzać pewne problemy na polu bezpieczeństwa. Większość z do tej pory rozpoznanych stanowią ataki typu DoS wykorzystujące możliwość łatwego podszywania się pod przekaźnik 6to4.
 
6to4 może stwarzać pewne problemy na polu bezpieczeństwa. Większość z do tej pory rozpoznanych stanowią ataki typu DoS wykorzystujące możliwość łatwego podszywania się pod przekaźnik 6to4.
 +
 +
==Lista publicznych routerów 6to4==
 +
* [http://www.ipv6tf.org/using/connectivity/6to4.php Public 6to4 relays] na portalu www.ipv6tf.org
 +
* Lista obiektów [http://www.ripe.net/fcgi-bin/whois?form_type=simple&full_query_string=&searchtext=192.88.99.0%2F24&do_search=Search  route 192.88.99.0/24] i [http://www.ripe.net/fcgi-bin/whois?form_type=simple&full_query_string=&searchtext=2002%3A%3A%2F16&do_search=Search route6 2002::/16] w bazie whois RIPE.

Aktualna wersja na dzień 17:49, 6 lut 2011

Mechanizm automatycznych tuneli 6to4 pozwala podłączyć się do sieci IPv6 każdemu kto dysponuje choćby jednym publicznym adresem IPv4. Przy uruchamianiu tunelu nie są konieczne żadne formalności. Ważne jest jednak by poprzez sieć usługodawcy osiągalny był adres 192.88.99.1 oraz możliwa była transmisja pakietów IPv4 oznaczonych protokołem 41 (dziesiętnie). Dokładny opis zawarty jest w RFC 3056.

Spis treści

Zasada działania

Mechanizm 6to4 polega na pakowaniu (tunelowaniu) pakietów IPv6 w pakiety IPv4. Pole protokołu w nagłówku otrzymuje wartość 41. Tak utworzone pakiety wysyłane są do komputera stanowiącego bramę pomiędzy siecią opartą o IPv4 a "prawdziwą" siecią IPv6. Komputerów taki może być w całym internecie dowolna ilość lecz w celu uproszczenia konfiguracji po stronie użytkownika wszystkim im powinien zgodnie z RFC 3068 być przypisany adres 192.88.99.1. Następnie od konfiguracji routingu IPv4 zależy który konkretnie komputer stanowi domyślną bramę dla wybranego użytkownika internetu. Przy poprawnej konfiguracji zawsze jest to komputer najbliższy a zatem zapewniający najszybsze połączenie. Pakiety powracać mogą całkiem inną drogą i nosić praktycznie dowolny adres IPv4 nadawcy. Trzeba to wziąć pod uwagę przy konfiguracji zapór sieciowych.

Trochę inaczej traktowane są pakiety przeznaczone do innych komputerów podłączonych z użyciem 6to4. Z ich adresu skonstruowanego tak jak to opisano poniżej odczytywany jest adres IPv4, pod który dane są wysyłane bezpośrednio z pominięciem bramy. Wygląda to tak jakby wszyscy użytkownicy 6to4 podłączeni byli do jednej sieci o przedrostku 2002:/16.

Adresy IPv6

Użytkownik dysponujący co najmniej jednym publicznym adresem IPv4 (dalej oznaczanym jako V4ADDR) korzystający z 6to4 dostaje do dyspozycji 48 bitowy przedrostek (prefix) skonstruowany według następujących zasad:

  • FP: 2
  • TLA: 0x0002
  • NLA: V4ADDR
     | 3 |  13  |    32     |   16   |          64 bits               |
     +---+------+-----------+--------+--------------------------------+
     |FP | TLA  | V4ADDR    | SLA ID |         Interface ID           |
     |001|0x0002|           |        |                                |
     +---+------+-----------+--------+--------------------------------+

V4ADDR to adres, który pozwoli na dostarczenie tunelowanych pakietów do komputera stanowiącego bramę pomiędzy tunelem a siecią użytkownika korzystającą z naturalnego IPv6. W większości przypadków będzie to router tej sieci. Np. adres 150.254.166.146 (www.pl.ipv6tf.org) da w efekcie przedrostek 2002:96fe:a692:. Posiadając zatem jeden adres IPv4 użytkownik zyskuje możliwość podłączenia praktycznie nieograniczonej liczby komputerów do sieci IPv6. W przypadku adresów przydzielanych dynamicznie konieczna jest oczywiście rekonfiguracja za każdą zmianą adresu IPv4.

Zastosowania

6to4 jest bardzo wygodnym mechanizmem i łatwo się go konfiguruje dla większości systemów operacyjnych. Obsługę zapewniają FreeBSD, NetBSD, Linux, Solaris oraz Windows. Najprostszym jest rozwiązanie jeżeli router 6to4 oraz router IPv4 dla danej sieci to ta sama maszyna.


        IPv6-w-IPv4      IPv6
     <==============...........> 
                          +--| K1
         \                |
Internet  |--| router |---+--| K2
         /
     <------------------------>
              IPv4

Istnieje jednak możliwość żeby rolę router-a 6to4 pełniła maszyna wewnątrz sieci nawet jeśli znajduje się za NAT. Wówczas należy tak skonfigurować NAT by wszystkie pakiety IPv4 z protokołem 41 trafiały do wybranego komputera wewnątrz sieci pełniącego rolę router-a 6to4. Z taką konfiguracją źle radzi sobie FreeBSD.

              IPv6-w-IPv4
                   +=============
                  ||  ...........
                  ||  .   +--| 6to4 router
                  ||  .   |
    <==============+  ..> +--| K1
         \                |
Internet  |--| router |---+--| K2
         /
     <------------------------>
              IPv4

Dokładny sposób konfiguracji jest bardzo mocno zależny od systemu operacyjnego i po szczegóły należy sięgnąć do jego konfiguracji należy sięgnąć do odpowiedniej dokumentacji.

  • Windows opis znajduje się w pomocy dostarczonej z systemem.
  • Linux, Linux+IPv6-HOWTO.
  • FreeBSD, strona stf(4) podręcznika systemowego.

Przykłady

Jakie polecenia wydać by skonfigurować końcówkę tunelu 6to4.

Linux

Wariant współczesny za pomocą iproute(8).

# /sbin/ip tunnel del tun6to4                     # na wszelki wypadek
# /sbin/ip tunnel add tun6to4 mode sit ttl 64 remote any local <lokalny-adres-ipv4>
# /sbin/ip link set dev tun6to4 up
# /sbin/ip -6 addr add <prefix-6to4>::/16 dev tun6to4
# /sbin/ip -6 route add default via ::192.88.99.1 dev tun6to4 metric 1

Wersja bardziej tradycyjna przy użyciu programów ifconfig(8) oraz route(8).

# /sbin/ifconfig sit0 down                        # na wszelki wypadek
# /sbin/ifconfig sit0 up <lokalny-adres-ipv4> netmask 0xffffffff
# /sbin/ifconfig sit0 add <prefix-6to4>::/16
# /sbin/route -A inet6 add default gw ::192.88.99.1
<prefix-6to4> 
Obliczony na podstawie publicznego adresu IPv4 za pomocą którego będziemy komunikować się ze światem. Gdy stosujemy NAT (patrz Zastosowania, rys. 2)jest to adres zewnętrzny routera
<lokalny-adres-ipv4> 
Adres IPv4 interfejsu sieciowego na komputerze stanowiącym zakończenie tunelu. W przypadku bezpośredniego połączenia do internetu (patrz Zastosowania rys. 1)jest to ten sam adres od którego pochodzi <prefix-6to4>. Gdy zaś router 6to4 znajduje się za NAT jest to, najczęściej prywatny, adres IPv4 przypisany do karty sieciowej.

Bezpieczeństwo

6to4 może stwarzać pewne problemy na polu bezpieczeństwa. Większość z do tej pory rozpoznanych stanowią ataki typu DoS wykorzystujące możliwość łatwego podszywania się pod przekaźnik 6to4.

Lista publicznych routerów 6to4