Standard IPv4 i IPv6 1.doc

(80 KB) Pobierz
Burzliwy rozwój Internetu sprawia, że niektóre ze stosowanych w nim rozwiązań informatycznych nie spełniają stawianych im obec

Standard IPv4 i IPv6

 

Internet Protocol - IP, protokół internetowy, protokół komunikacyjny warstwy 3 (warstwy sieciowej). Zdefiniowano dwie wersje IP: IPv4 (Internet Protokol v4, standard RFC791) i IPv6 (Internet Protokol v6, standard RFC2460). IPv4 posługuje się adresami IP 32-bitowymi, a IPv6 adresami 128-bitowymi.

 

IPv4 - Internet Protocol v4 - protokół internetowy wersja 4, standard RFC791. IPv4 jest bezpołączeniowym protokołem komunikacyjnym, Komunikacja w sieci Internet działa w oparciu o wymianę pakietów IP między hostami, które mają przydzielone adresy IP. Adresy IPv4 składają się z 32 bitów i maski podsieci, która jednoznacznie identyfikuje podsieć, w której jest dany host. By ta komunikacja miała miejsce, niezbędny jest routing IP, czyli obecność routerów IP, wymieniających informację o dostępności sieci IP (podsieci IP) między sobą przy wykorzystaniu protokołów routingu IPv4 takich jak RIP, OSPF, ISIS, BGP. W każdym pakiecie IPv4, w jego nagłówku, znajduje się adres IPv4 nadawcy i adres IPv4 odbiorcy. Routery podejmują decyzję w oparciu o adres IPv4 odbiorcy (czyli dokąd wysłać pakiet).

 

Protokół IPv6 został opracowany 10 lat temu przez IEEEE i wykorzystuje 128-bitowy schemat adresowania (IPv4 jest oparty na 32-bitowym schemacie adresowania), co pozwala adresować właściwie nieograniczoną liczbę systemów podłączanych do Internetu.

 

Burzliwy rozwój Internetu sprawia, że niektóre ze stosowanych w nim rozwiązań informatycznych nie spełniają stawianych im obecnie wymagań. Dotyczy to również najbardziej podstawowego protokołu Sieci, czyli IP.

 

Obecnie w Internecie używany jest protokół IP w wersji 4. Sprawdza się wyjątkowo dobrze, jeśli weźmie się pod uwagę czas, w którym był projektowany. Od momentu zaistnienia IPv4 w Sieci zmieniło się prawie wszystko sprzęt, oprogramowanie, liczba użytkowników, protokoły i usługi. Konieczne stało się stworzenie nowej wersji protokołu IP.

 

Powodów było kilka:

1. Liczba adresów

Astronomiczna liczba 232 adresów nie wystarcza już, gdy bierze się pod uwagę wykładniczy wzrost liczby komputerów dołączonych do Internetu oraz schemat adresowania. Obecnie adres IP stał się towarem deficytowym, a więc takim, za który trzeba osobno płacić dostawcom Internetu. Pierwotny podział na sieci klasy A, B i C dawno już przestał obowiązywać.

 

2. QoS (Quality of Service)

Kiedy siecią IP podróżowały wyłącznie dane, ważne było tylko to, aby w ogóle dotarły do miejsca przeznaczenia. Pojęcie blokady, znane z sieci telefonicznej, nie istniało. Gdy z sieci korzystała większa liczba użytkowników, każdy przesyłał dane z mniejszą szybkością, zmieniało się również opóźnienie poszczególnych pakietów. Niektóre nowe usługi czasu rzeczywistego wymagają jednak ściśle zdefiniowanych parametrów QoS. Prowadząc rozmowę lub telekonferencję w sieci IP, musimy mieć zagwarantowane zarówno minimalne pasmo przenoszenia, jak i maksymalne opóźnienie pakietów należących do połączenia.

 

3. Struktura adresowa

Płaska struktura adresowa sieć-host, pochodząca z czasów, gdy Internet tworzyło kilka sieci, powoduje przeciążenie tablic routingu na routerach. Istnieje co prawda mechanizm przydzielania adresów w zależności od lokalizacji sieciowej, ale nie daje on gwarancji, że wszystkie adresy są z nim zgodne.

 

4. Nagłówek

W IPv4 nagłówek pakietu jest bardzo skomplikowany. Niektóre tworzące go pola wcale nie są używane. Także fragmentacja i defragmentacja powoduje znaczne obciążenie routera. Często w przypadku tuneli i szyfrowania fragmentacja okazuje się być raczej wadą niż zaletą wiele metod ataku wykorzystuje ten właśnie mechanizm.

 

Wiele było prób rozwiązania powyższych problemów. Mamy między innymi protokoły RTP (Real Time Protocol) i RSVP (Resource ReSerVation Protocol) dla zachowania odpowiednich QoS w usługach czasu rzeczywistego, jak również powszechne używanie NAT (Network Address Translation) dla zwiększenia puli adresowej i bezpieczeństwa. Niektórzy uważają, że komputery w sieciach lokalnych nie powinny mieć widzianych z zewnątrz numerów IP te należą się tylko serwerom. Można przyjąć, że ograniczona liczba adresów nie jest wielkim problemem. Do rozstrzygnięcia pozostaje jednak kwestia QoS. Aby usługa miała zapewnioną Quality of Service, wszystkie węzły po drodze muszą gwarantować te same parametry transmisji. Nawet jeśli ten warunek jest spełniony w danej chwili, to ze względu na specyfikę IPv4 nie mamy żadnej gwarancji, że za chwilę połączenie będzie realizowane przez te same węzły.

 

 

Wszystko to powoduje, że dawna przejrzystość stosu protokołów TCP/IP ustępuje miejsca gmatwaninie protokołów. Ich poprawne zaimplementowanie w milionach węzłów umożliwia co prawda normalne działanie Sieci, ale koszty tego będą znaczne ogromne moce obliczeniowe są pożerane w każdym routerze na analizowanie kilku protokołów, a pasmo efektywnie kurczy się ze względu na olbrzymi narzut nagłówków.

 

Jeżeli projekt rozrasta się, jest ciągle modyfikowany, zmieniane są jego założenia, włącza się do niego kolejne łaty, a na dodatek robi się to osobno dla każdej z kilku odmian tej samej wersji, to najlepszą metodą wprowadzenia zmian dotyczących całości jest napisanie tego wszystkiego od początku. Tak też się stało w przypadku IP. Podjęto prace nad IPng Internet Protocol next generation (obecna nazwa IPv6).

 

Nowa wersja protokołu internetowego ma: większą przestrzeń adresową, mechanizmy zapewnienia QoS, stałą długość nagłówka. Charakteryzuje się też brakiem fragmentacji. W sposobie adresowania sięgnięto do sprawdzonych w telekomunikacji wzorców, zastosowano hierarchiczną strukturę adresu: dwupoziomowa hierarchia publiczna + adres miejsca (side) + adres interfejsu. Rozwiązanie to pozwala na znaczne uproszczenie tablic routingu, a także na zastosowanie w Internecie niektórych rozwiązań z telefonii, np. dotyczących abonentów mobilnych.

 

Warto zauważyć, że struktura adresu jest elastyczna, istnieje też możliwość wprowadzenia wielu innych formatów adresu w ramach standardu IPv6. Być może hierarchiczna struktura adresowa wraz z zapewnionymi parametrami QoS pozwoli połączyć Internet z tradycyjną telefonią ­ wystarczy wprowadzić drugą klasę adresowania w IPv6 numer telefoniczny. Nie stanie się to jednak szybko, chociażby ze względu na problemy z taryfikacją. Zaletą jest również możliwość autokonfiguracji stanowej lub bezstanowej. Stanowa jest odmianą DHCP; nowością jest bezstanowa. Dzięki analizie ruchu internetowego i wykorzystaniu mechanizmu wykrywania w sieci komputera o tym samym adresie IP, urządzenie może samo nadać sobie adres o zasięgu globalnym, lokalnym lub w ramach pojedynczego łącza. Jest to stosowane wtedy, gdy potrzebujemy dowolnego unikatowego adresu IP, a nie interesuje nas, jaki to konkretnie jest adres (choć po autokonfiguracji jest już stały).

 

W uproszczeniu wygląda to tak: nasłuchując, host dowiaduje się, jaki jest adres miejsca, w którym się znajduje. Następnie losuje identyfikator i sprawdza, czy otrzymany adres jest unikatowy. Jeżeli nie, to czynność jest powtarzana. W ten sposób hosty IPv6 stają się hostami plug-and-play.

 

Wszyscy doceniają zalety nowej wersji IP, problemem staje się jednak określenie, kiedy i w jaki sposób przejść na nią. Wyłączenie wszystkich komputerów, załadowanie nowych sterowników i oprogramowania, włączenie sieci z powrotem nie wchodzi w grę. Nie było to już możliwe wtedy, gdy zmieniano NCP na TCP. Tak więc przez dłuższy czas (5 15 lat, a w pesymistycznych prognozach nawet kolejne 30 lat) IPv4 i IPv6 będą koegzystowały w sieci. Powstaną wyspy IPv6 połączone tunelami w IPv4 lub siecią szkieletową IPv6.

 

Współpraca sieci IPv6 będzie odbywać się na dwa sposoby. Pierwszy polega na translacji nagłówków. Zakłada się możliwość zaadresowania komputerów w sieci IPv6 za pomocą IPv4. Pakiet przechodzący przez sieć IPv4 ma tłumaczony nagłówek i tym samym część informacji pozostaje stracona. Wchodząc z powrotem do sieci IPv6, nagłówek ponownie jest tłumaczony na IPv6, przez to jednak niektóre fragmenty nagłówków mają nieokreślone wartości. Zaletą takiego sposobu jest możliwość komunikacji również między poszczególnymi sieciami. Nie pozwala on jednak na pełne wykorzystanie zalet IPv6.

 

Translacja IPv6 w IPv4

Drugim sposobem jest utworzenie tunelu między dwiema sieciami IPv6. Cały pakiet IPv6 na wejściu do tunelu jest traktowany jako payload pakietu IPv4. Po dojściu do końca tunelu pakiet IPv6 jest wyłuskiwany i wysyłany do adresata po sieci IPv6. Rozwiązanie to oczywiście nie pozwala na nawiązanie połączenia z hostem IPv4. Dla pełnej kompatybilności powinny być zaimplementowane oba tryby współpracy: tunelowanie i translacja. Poniżej opisujemy trzy rozwiązania dwa pierwsze dotyczą typowej sytuacji, kiedy zmieniamy sieć lokalną na IPv6, trzecie opisuje stan, gdy pracujemy na IPv4, a dostawca Internetu ma sieć szkieletową opartą już na IPv6.

 

1. LAN-y IPv6, WAN IPv4

Poszczególne LAN-y są połączone ze sobą za pomocą tuneli. W ten sam sposób podłączamy się także do sieci szkieletowej IPv6 (np. 6bone). W ramach sieci lokalnej przydzielamy adresy IP zgodne z wersją czwartą tym serwerom, które powinny być widziane na zewnątrz (WWW, FTP, poczta elektroniczna). Poszczególnym użytkownikom w sieci LAN przydzielamy adresy niezgodne z IPv4, zależnie od naszej polityki bezpieczeństwa o zasięgu globalnym lub lokalnym. W ten sposób, korzystając dodatkowo z możliwości szyfrowania oferowanej przez IPv6, możemy połączyć swoje LAN-y w pewnego rodzaju VPN, unikając zarówno NAT, jak i kupowania gotowych rozwiązań.

 

2. LAN-y IPv4/IPv6, WAN IPv4

Każdy komputer w sieci LAN ma dwa adresy: jeden IPv4, drugi IPv6. Adresy IPv4 mogą być zarówno globalne, jak i lokalne (nieroutowalne) albo przydzielane za pomocą DHCP. Adresy IPv6 mogą być dowolne. W przypadku komunikacji wewnątrz sieci LAN wykorzystywany jest protokół IPv6. Przy komunikacji z innym adresem IPv6 wykorzystany zostanie tunel w sieci IPv4. W przypadku połączenia z zewnętrznym adresem IPv4 sieć zachowuje się jak zwykła sieć IPv4, uwzględniając wszystkie jej mechanizmy. Nic nie tracimy w przypadku, gdyby IPv6 nie weszło do powszechnego użycia ­ nadal mamy pełną funkcjonalność sieci IPv4.

 

3. LAN-y IPv4, WAN IPv6

Translacja adresów następuje na styku LAN-WAN. Co prawda niektórych miejsc w sieci nie możemy już zaadresować, ale nadal mamy pełną łączność z kurczącym się Internetem w wersji czwartej.

 

Czy migracja do IPv6 jest konieczna i czy wiąże się z nowymi wydatkami? to pytanie z pewnością nurtuje większość użytkowników Internetu. Odpowiedź na pierwszą część pytania jest twierdząca migracja jest konieczna, w przeciwnym razie zostaniemy w tyle w kurczących się z wolna zasobach dotychczasowego Internetu. Coraz więcej serwisów będzie dostępnych tylko dla posiadaczy nowej wersji.

Pierwszy etap migracji jest wspólny dla wszystkich. Niezależnie od tego, czy zamierzamy w przyszłości przechodzić na wersję szóstą, wybieramy sprzęt i oprogramowanie pozwalające na obsługę obu wersji dzięki temu, w razie potrzeby, przejście na nową wersję odbędzie się bezboleśnie. Urządzenie "dual-stack" może mieć dwa odrębne numery interfejsów jeden dla IPv6, drugi dla IPv4 ­ i używać jednego albo drugiego w zależności od tego, z jakim komputerem się łączy. Może też mieć jeden adres IPv6 kompatybilny z IPv4 (same zera + adres IPv4).

Dalszą rozbudowę należy przeprowadzać segmentami. Na początku wszystkie urządzenia w segmencie powinny znać oba protokoły. Każdemu oprócz dotychczasowego adresu IPv4 (stałego bądź dynamicznego) przypisujemy adres IPv6 o zasięgu lokalnym albo IPv6 zgodny z IPv4. Komunikacja wewnątrz segmentu powinna się odbywać po IPv6, na zewnątrz po IPv4. Jeżeli nie chcemy, aby któreś z urządzeń było widziane na zewnątrz segmentu, możemy je zaopatrzyć wyłącznie w adres IPv6 widziany lokalnie, nie przydzielając mu adresu IPv4.

Kiedy już niektóre z naszych segmentów są gotowe, możemy zacząć stosować routing IPv6 między poszczególnymi segmentami. Możemy też podłączyć naszą sieć do sieci szkieletowej, np. 6bone, i zacząć nadawać niektórym z naszych komputerów adresy o zasięgu globalnym.

Z czasem, kiedy wszystkie segmenty w sieci będą obsługiwały IPv6, możemy przejść na nowy protokół i dołączać urządzenia wyłącznie IPv6 oraz wyłączyć routing IPv4. W czasie przeprowadzki na IPv6 należy zrobić listę serwerów, które powinny być dostępne z zewnątrz. Do nich jeszcze przez długi czas powinien istnieć dostęp poprzez IPv4. Trzeba liczyć się z tym, że jeszcze przez lata wiele komputerów będzie wykorzystywało wyłącznie starszą wersję protokołu internetowego. Poważnym zagrożeniem dla interesów firmy byłaby sytuacja, gdyby w efekcie migracji z IPv4 do IPv6 część internautów straciła dostęp np. do firmowego serwera WWW.

 

Szkielet 6bone

Jedyną działającą siecią o zasięgu ogólnoświatowym jest sieć 6bone. Powstała w celu praktycznego przetestowania protokołu IPv6. Jak na razie korzysta z adresów IPv6 przeznaczonych wyłącznie do celów testowych (niedawno nastąpił pierwszy i jak dotąd jedyny przydział adresów IPv6 spoza puli adresów testowych.

Prawdopodobnie jednak w niedalekiej przyszłości 6bone przestanie być siecią testową i stanie się sercem IPv6 trudno sobie wyobrazić, by przestała istnieć, zważywszy, że skupia większość użytkowników IPv6 na świecie. Jak większość sieci szkieletowych IPv6, 6bone zbudowana jest głównie za pomocą tuneli w IPv4; tak samo zrealizowany jest dostęp do niej.

2

 

Zgłoś jeśli naruszono regulamin