6to4

Mechanizm automatycznych tuneli 6to4

Mechanizm 6to4 umożliwia każdemu, kto ma przynajmniej jeden publiczny adres IPv4, podłączenie się do sieci IPv6. Nie są wymagane żadne formalności przy uruchamianiu tunelu. Istotne jest jednak, aby adres 192.88.99.1 był osiągalny przez sieć usługodawcy, a także aby możliwa była transmisja pakietów IPv4 oznaczonych protokołem 41 (w systemie dziesiętnym). Szczegółowy opis tego mechanizmu można znaleźć w RFC 3056.

Zasada działania

Mechanizm 6to4 polega na pakowaniu (tunelowaniu) pakietów IPv6 w pakiety IPv4. W nagłówku tych pakietów pole protokołu ma wartość 41. Tak przygotowane pakiety są następnie wysyłane do komputera pełniącego rolę bramy pomiędzy siecią IPv4 a „prawdziwą” siecią IPv6. W internecie może znajdować się dowolna liczba takich komputerów, ale dla uproszczenia konfiguracji po stronie użytkownika, zgodnie z RFC 3068, powinny one mieć przypisany adres 192.88.99.1. Następnie to od konfiguracji trasowania IPv4 zależy, który komputer będzie działał jako domyślna brama dla danego użytkownika. Przy właściwej konfiguracji, zawsze będzie to najbliższy komputer, co zapewnia najszybsze połączenie. Pakiety mogą wracać inną drogą i mieć praktycznie dowolny adres IPv4 nadawcy, co należy uwzględnić przy konfiguracji zapór sieciowych.

W nieco inny sposób traktowane są pakiety przeznaczone dla innych komputerów podłączonych za pomocą 6to4. Z adresu skonstruowanego zgodnie z poniższym opisem odczytywany jest adres IPv4, na który dane są przesyłane bezpośrednio, omijając bramę. Wygląda to tak, jakby wszyscy użytkownicy 6to4 byli częścią jednej sieci z przedrostkiem 2002:/16.

Adresy IPv6

Użytkownik, który ma przynajmniej jeden publiczny adres IPv4 (oznaczany jako V4ADDR) i korzysta z 6to4, otrzymuje 48-bitowy przedrostek (prefiks) skonstruowany według następujących zasad:

  • FP: 2
  • TLA: 0x0002
  • NLA: V4ADDR

Wizualizacja struktury przedrostka:

| 3 | 13 | 32 | 16 | 64 bits |

+—+——+———–+——–+——————————–+

|FP | TLA | V4ADDR | SLA ID | Interface ID |

|001|0x0002| | | |

+—+——+———–+——–+——————————–+

V4ADDR to adres, który umożliwia dostarczenie tunelowanych pakietów do komputera pełniącego rolę bramy pomiędzy tunelem a siecią użytkownika korzystającego z naturalnego IPv6. W większości przypadków będzie to router tej sieci. Na przykład adres 207.142.131.205 (www08.wikipedia.org) wygeneruje przedrostek 2002:cf8e:83cd:. Posiadając zatem jeden adres IPv4, użytkownik zyskuje możliwość podłączenia praktycznie nieograniczonej liczby komputerów do sieci IPv6. W przypadku dynamicznie przydzielanych adresów, konieczna będzie rekonfiguracja przy każdej zmianie adresu IPv4.

Bibliografia

  • B.B. Carpenter, K.K. Moore, Connection of IPv6 Domains via IPv4 Clouds, RFC 3056, IETF, luty 2001, DOI: 10.17487/RFC3056, ISSN 2070-1721, OCLC 943595667 (ang.).
  • R.R. Gilligan, E.E. Nordmark, Transition Mechanisms for IPv6 Hosts and Routers, RFC 2893, IETF, sierpień 2000, DOI: 10.17487/RFC2893, ISSN 2070-1721, OCLC 943595667 (ang.).
  • C.C. Huitema, An Anycast Prefix for 6to4 Relay Routers, RFC 3068, IETF, czerwiec 2001, DOI: 10.17487/RFC3068, ISSN 2070-1721, OCLC 943595667 (ang.).
  • P.P. Savola, C.C. Patel, Security Considerations for 6to4, RFC 3964, IETF, grudzień 2004, DOI: 10.17487/RFC3964, ISSN 2070-1721, OCLC 943595667 (ang.).