of 64 /64
Politechnika Śląska Instytut Informatyki Porównanie protokołów IPv4 i IPv6 mgr Magdalena Michniewicz Praca napisana pod kierunkiem mgr inż. Piotra Kasprzyka

Porównanie protokołów IPv4 i IPv6 - Magdalena Michniewiczmagdalenamichniewicz.pl/pages/materialy/Porownanie_protokolow_IPv4... · Modele TCP/IP i ISO/OSI mają wiele cech wspólnych

Embed Size (px)

Text of Porównanie protokołów IPv4 i IPv6 - Magdalena...

Politechnika lskaInstytut Informatyki

Porwnanie protokow IPv4 i IPv6

mgr Magdalena Michniewicz

Praca napisana pod kierunkiemmgr in. Piotra Kasprzyka

Spis treci

Wstp..................................................................................................................................................................2

1. Model TCP/IP a model ISO/OSI....................................................................................................................3

1.1. Model TCP/IP.........................................................................................................................................3

1.2. Model ISO/OSI.......................................................................................................................................4

1.3. Porwnanie modeli TCP/IP i ISO/OSI...................................................................................................6

2. Protok IP i ICMP ........................................................................................................................................9

2.1. Protok IP..............................................................................................................................................9

2.2. Protok ICMP......................................................................................................................................10

3. Protok IPv4................................................................................................................................................12

3.1. Nagwek protokou IPv4.....................................................................................................................12

3.2. Format adresu IPv4 i adresy specjalnego przeznaczenia .....................................................................14

3.3. Klasy adresw IPv4..............................................................................................................................16

3.4. ICMPv4.................................................................................................................................................19

4. Protok IPv6................................................................................................................................................22

4.1. Nagwek protokou IPv6.....................................................................................................................22

4.2. Nagwki rozszerze protokou IPv6...................................................................................................24

4.3. Format adresu IPv6 i adresy specjalnego przeznaczenia.....................................................................29

4.4. Rodzaje adresw IPv6..........................................................................................................................30

4.4.1. Adres jednostkowy (Unicast).......................................................................................................30

4.4.2. Adres rozsyania grupowego (Multicast address)........................................................................36

4.4.3. Adres grona (Anycast)..................................................................................................................37

4.5. ICMPv6.................................................................................................................................................38

4.6. Autokonfiguracja adresu IPv6..............................................................................................................41

5. Porwnanie protokow IPv4 i IPv6.............................................................................................................44

5.1. Rnice w budowie nagwka i pakietu...............................................................................................44

5.2. Rnica w formatach adresw i adresach specjalnych IPv4 i IPv6.....................................................46

5.3. Rnica w klasyfikacji i hierarchii adresw IPv4 i IPv6......................................................................47

5.4. Rnica pomidzy protokoami ICMPv4 i ICMPv6............................................................................48

5.5. Rnice w sposobie konfigurowania hostw uywajcych IPv4 i IPv6..............................................51

6. Migracja z protokou IPv4 na IPv6...............................................................................................................53

Podsumowanie..................................................................................................................................................56

Spis rysunkw...................................................................................................................................................58

Spis dokumentw RFC zwizanych z IPv4 i IPv6...........................................................................................60

Literatura...........................................................................................................................................................62

1

Wstp

Tematem pracy jest przedstawienie i porwnanie protokow IPv4 i IPv6. Oba protokoy s

czci modelu i protokow TCP/IP. Prace nad modelem TCP/IP rozpoczto w latach 70, by to

pierwszy model jaki opracowano na potrzeby sieci. Badania nad protokoami TCP/IP prowadzia

Advanced Research Project Agency (ARPA) a finansowaa armia USA. 1 stycznia 1983 roku

protokoy TCP/IP stay si standardowymi protokoami w sieci ARPANET. W wielu krajach na

caym wiecie zaczy powstawa lokalne sieci, podczane do ARPANETu. Tym co pomogo

poczy liczne sieci lokalne w jedn ogromn sie zwan Internetem by zestaw protokow

TCP/IP.

Zadaniem zestawu protokow TCP/IP byo udostpnienie jednolitego systemu

komunikacyjnego. Protok IPv4 mia za zadanie okrelenie podstawowej jednostki przesyania

danych datagramu, regu przetwarzania i przenoszenia datagramw, metodyki generowania

komunikatw o bdach oraz schematu adresowania. Adres IPv4 jest 32-bitowym adresem

identyfikujcym docelow sie i okrelajcym konkretny komputer w tej sieci.

W 1990 roku zakoczya swoje funkcjonowanie sie ARPANET, jednak sie internetowa bya

rozwijana nadal. Do Internetu z kadym rokiem bya podczana coraz wiksza ilo sieci

lokalnych i komputerw osobistych. Projektanci zestawu protokow TCP/IP nie przewidzieli

moliwoci tak gwatownego rozwoju Internetu. W latach 90 zaczto przewidywa wyczerpanie

zapasu adresw IPv4. Wtedy te rozpoczto prac nad now wersj protokou IPv6. Prace nad

rozwojem protokou IP nadzoruje zesp Internet Engineering Task Force (IETF). Nowy protok

IPv6 jest protokoem 128-bitowym co daje znacznie wiksz pul adresw IP.

Pierwsza cz tej pracy przedstawi model warstwowy TCP/IP oraz porwnanie tego modelu

z modelem odniesienia ISO/OSI. Druga cz przedstawi oglne zasady dziaania protoku IP i

dziaajcego w tej samej warstwie protokou ICMP. W czci trzeciej zostanie zaprezentowany

protok IPv4, oraz protok ICMPv4. W czci czwartej opisany zostanie protok IPv6, oraz

ICMPv6. W czci pitej porwnane zostan oba protokoy ich podobiestwa i rnice. Natomiast

w czci szstej i ostatniej przedstawiona zostanie migracja z protokou IPv4 Na IPv6

i towarzyszce jej mechanizmy.

2

1. Model TCP/IP a model ISO/OSI

1.1. Model TCP/IP

Model TCP/IP powsta w latach 70. Zosta stworzony, gdy do ARPANETU zaczto podcza

coraz wiksz liczb sieci lokalnych za pomoc innych mediw transmisyjnych ni linie

telefonicznie, takich jak linie satelitarne i radiowe. Aby poczy te sieci potrzebna bya jednolita

architektura protokow. Architektur t sta si model TCP/IP, ktry zosta opisany przez Cerf'a i

Kahn'a w 1974 roku.17

WARSTWA APLIKACJI

WARSTWA TRANSPORTOWA

TCP/UDP

WARSTWA INTERNET

IP/ICMP

WARSTWA DOSTPU DO SIECI

Rysunek 1. Warstwy modelu TCP/IP

Warstwa dostpu do sieci - najnisza warstwa w hierarchii protokow TCP/IP. Modelodniesienia TCP/IP nie dostarcza zbyt wiele informacji o tej warstwie. Mwi on tylko o tym, e

host musi by poczony do sieci, uywajc jakiego protokou tak aby mg wysa pakiet IP w

sie. Protok ten nie zosta zdefiniowany i bywa rny w zalenoci od hosta, ktry go uywa i od

sieci do ktrej dany host jest podczony.

Warstwa Internet jest to warstwa, ktra scala ca architektur modelu TCP/IP razem.

Gwnym protokoem tej warstwy jest protok IP. Warstwa ta okrela format pakietw

przesyanych w sieci oraz metody przekazywania pakietw od nadawcy do odbiorcy. Realizuje ona

funkcje doboru trasy dla pakietw na podstawie czterobajtowego lub szesnastobajtowego adresu IP

identyfikujcego rdo informacji oraz ich przeznaczenie.

Warstwa transportowa warstwa ta okrela sposb realizacji usug niezawodnegoprzesyania danych. Warstwa transportowa obejmuje dwa protokoy: TCP i UDP. Protok TCP

realizuje usug poczenia wirtualnego. Protok ten odbiera strumie danych z warstwy aplikacji,

segmentuje dane, transmituje pakiety z wykorzystaniem protokou IP oraz odtwarza dane

uytkowe. Protok TCP retransmituje take bdne lub zagubione pakiety, a rwnie ustawia

3

odebrane pakiety w prawidowej kolejnoci logicznej. Protok UDP uywany jest przez aplikacje

obsugiwane w trybie datagramowym. Protok ten nie daje gwarancji przekazania datagramu.

Warstwa aplikacji najwysza warstwa modelu TCP/IP. Kady z protokow tej warstwy

odpowiada jednemu programowi uytkowemu w sieci. Warstwa ta realizuje wiele usug

sieciowych takich jak np. SNMP (Simple Network Management Protocol), Telnet, FTP (File

Transport Protocol), SMTP (Simple Mail Transport Protocol), Ping.

1.2. Model ISO/OSI

Model ISO/OSI powsta w latach 80. Model ten zosta stworzony i przedstawiony przez

International Standard Organization (ISO). Stworzenie tego modelu byo pierwszym krokiem w

stron midzynarodowej standaryzacji protokow uywanych w rnych warstwach.17

WARSTWA APLIKACJI

WARSTWA PREZENTACJI

WARSTWA SESJI

WARSTWA TRANSPORTOWA

WARSTWA SIECIOWA

WARSTWA CZA DANYCH

WARSTWA FIZYCZNA

Rysunek 2. Model ISO/OSI

Warstwa fizyczna najnisza warstwa zestawu protokow ISO/OSI. Jej zadaniem jestprzesyanie bitw przez kana transmisyjny. Podstawowymi zadaniami tej warstwy jest ustalenie

pomidzy czcymi si ze sob hostami: ile woltw bdzie uytych aby zaprezentowa 1 a ile,

eby zaprezentowa 0; ile nanosekund ma trwa 1 bit; czy transmisja moe odbywa si

rwnoczenie w obu kierunkach; w jaki sposb zostanie nawizane poczenie a w jaki zakoczone;

oraz ile pinw ma posiada gniazdo poczeniowe i do czego ma suy kady z pinw. Tak wiec

warstwa fizyczna zajmuje si mechanicznymi, elektrycznymi oraz czasowymi cechami medium

transmisyjnego, znajdujcego si poniej warstwy fizycznej.

4

Warstwa cza danych - jest warstw ktrej zadaniem jest odebranie z warstw wyszych

ramek danych, doczanie do nich cigw synchronizujcych, znacznika pocztku ramki, adresu

nadajnika, dugoci bloku danych, wypeniacza i pola CRC a nastpnie wysyanie ich kolejno w

sie do hosta odbiorcy. Warstwa ta take odbiera szereg ramek danych od hosta nadawcy i po

sprawdzeniu poprawnoci danych przekazuje je do warstw wyszych. Innym zadaniem warstwy

cza danych tak jak i warstw wyszych jest regulacja szybkoci przesyania danych pomidzy

hostami o rnych prdkociach czy. Czsto te dwie powysze funkcje, czyli kontrola bdw

transmisji i szybko przesyania danych s zintegrowane. W sieciach natychmiastowych posiada

jeszcze jedn bardzo wan funkcj, kontroluje ona zasady dostpu do wspdzielonego medium

transmisyjnego. Za poprawne wykonanie tego zadania odpowiada podwarstwa warstwy cza

danych podwarstwa kontroli dostpu do medium transmisyjnego.

Warstwa sieciowa kontroluje dziaanie podsieci. Gwnym zadaniem tej warstwy jestokrelenie jak pakiety s rutowane od hosta rdowego do hosta docelowego. Trasy routingu mog

by zapisane w sposb statyczny w tablicach routing i rzadko zmieniane. Trasy mog by tworzone

take wraz z nawizaniem kadego poczenia np. w czasie logowania to zdalnego hosta. Mog by

take tworzone dynamicznie dla kadego pakietu osobno. Drugim zadaniem warstwy sieciowej

jest take kontrola nad jakoci usug (opnieniami, czasem transmisji, przecieniami). Kolejnym

zadaniem warstwy sieciowej jest przezwycienie rnorodnych problemw (rnice w

adresowaniu, rne wielkoci pakietw, rne protokoy) w sieciach heterogenicznych, aby mogy

zosta poczone w jedn sie. W sieciach broadcastowych problem routingu jest bardzo may tak

wic warstwa sieciowa w tych sieciach jest czsto cienka albo nawet nie istnieje.

Warstwa transportowa odbiera dane z warstwy sesji, dzieli je na mniejsze czci (jeli jestto konieczne), przesya je do warstwy sieciowej upewniajc si czy wszystkie czci dotary

poprawnie na drugi koniec. Wszystko to musi zosta wykonane wydajnie i w taki sposb aby

odizolowa warstwy wysze od nieuniknionych zmian sprztowych. Warstwa transportowa okrela

take jaki rodzaj usugi zostanie dostarczony do warstwy sesji. Rodzaj usugi zostaje okrelony, gdy

poczenie zostaje ustanowione (np. poczenie punkt-punkt, ktre dostarcza wiadomoci lub bajty

w kolejnoci, w ktrej zostay wysane; przesyanie pojedynczych wiadomoci bez gwarancji

kolejnoci ich dostarczenia; oraz broadcast wiadomoci do wielu odbiorcw). Warstwa

transportowa jest prawdziw warstw punkt-punkt na caej drodze od rda do celu. Oznacza to, e

program na hocie rdowym prowadzi rozmow z podobnym programem na hocie docelowym

uywajc nagwkw wiadomoci oraz wiadomoci kontrolnych.

Warstwa sesji pozwala uytkownikom na rnych hostach na nawizanie sesji pomidzy

sob. Sesje oferuj rne usugi takie jak np. kontrola dialogu (pilnowanie kolejnoci transmisji

danych), zarzdzanie etonem (ochrona przed prb wykonania tej samej, tak samo istotnej

5

operacji w tym samym czasie), i synchronizacja (wstawianie punktw kontrolnych w czasie dugich

transmisji, aby moliwa bya kontynuacja od miejsca w ktrym transmisja zostaa zerwana).

Warstwa prezentacji zajmuje si skadni i semantyk transmitowanej informacji. Rne

hosty mog mie rne formaty danych. Aby takie hosty mogy porozumiewa si ze sob oraz aby

bya moliwa wymiana struktur danych, s one zdefiniowane w sposb abstrakcyjny wraz ze

standardowym kodowaniem na czu. Warstwa prezentacji zarzdza tymi abstrakcyjnymi danymi,

pozwala aby struktury danych warstw wyszych zostay zdefiniowane i wymieniane.

Warstwa aplikacji zawiera wiele protokow, ktrych potrzebuj uytkownicy. Protokoy teto np. HTTP (HyperText Transfer Protocol), ktry jest podstawowym protokoem dla World Wide

Web. Inne protokoy s uywane do transportu danych, poczty elektronicznej, lub sieciowych

newsw.17

1.3. Porwnanie modeli TCP/IP i ISO/OSI

Modele TCP/IP i ISO/OSI maj wiele cech wsplnych. Oba s oparte na idei stosu

niezalenych protokow. Take funkcjonowanie warstw jest podobne np. w obu modelach

wszystkie warstwy, do warstwy transportowej wcznie dostarczaj niezalen od sieci usug

transportow punkt-punkt dla procesw, ktre komunikuj si ze sob. W obu modelach warstwy

wysze s uytkownikami warstw niszych zorientowanymi na aplikacje.

Poza tymi dwoma podobiestwami modele te posiadaj wiele rnic. Zasadnicz rnic

midzy modelem TCP/IP a ISO/OSI jest liczba protokow wystpujcych w obu modelach. Model

TCP/IP ma 4 warstwy a model ISO/OSI ma 7 warstw.

WARSTWA APLIKACJI WARSTWA APLIKACJI

WARSTWA PREZENTACJI

WARSTWA SESJI

WARSTWA TRANSPORTOWA WARSTWA TRANSPORTOWA

WARSTWA INTERNET WARSTWA SIECIOWA

WARSTWA DOSTPU DO SIECI WARSTWA CZA DANYCH

WARSTWA FIZYCZNA

Rysunek 3. Model TCP/IP i Model ISO/OSI

6

W obydwch modelach wystpuj warstwy sieciowa (Internet), transportowa i aplikacji.

Pozostae warstwy w obu modelach s rne.

Kolejn rnic pomidzy modelem TCP/IP i ISO/OSI s 3 koncepcje uywane w modelu

ISO/OSI a nie uywane w modelu TCP/IP. W modelu ISO/OSI wystpuj 3 zasadnicze koncepcje:

USUGA kada warstwa wykonuje pewne usugi dla warstwy wyszej. Definicja usugi mwi

co dana warstwa robi, a nie w jaki sposb warstwy wysze maj do niej dostp lub w jaki sposb

dziaa. Usuga definiuje semantyk warstwy.

INTERFEJS informuje proces warstwy wyszej w jaki sposb mona si do niego dosta.

Okrela on parametry i to, jakich rezultatw naley oczekiwa. Nie informuje natomiast w jaki

sposb dziaa dana warstwa.

PROTOKOY s wewntrzn spraw warstw. Warstwa moe uywa kadego protokou

jakiego potrzebuje aby wykona dane zadanie. Warstwa moe take zmieni protok bez

wpywu na oprogramowanie warstw wyszych.

Model TCP/IP nie rozrnia usug, interfejsw, ani protokow. Konsekwencj tego jest to, e

protokoy w modelu ISO/OSI s lepiej ukryte ni w modelu TCP/IP i mog by w atwiejszy

sposb zamienione gdy zmiany w technologii bd tego wymaga. Dokonywanie tego typu zmian

jest podstawowym celem stworzenia protokow.17

Ewidentn rnic pomidzy TCP/IP a modelem ISO/OSI jest to, e protok moe do

realizacji swoich funkcji wykorzystywa protok nalecy do warstwy niszej bez koniecznoci

przechodzenia przez warstw poredni (np. Aplikacja ping korzysta z protokou ICMP

bezporednio, bez uciekania si do mechanizmw warstwy transportowej, a protok ten przypisany

jest do warstwy sieciowej). Innym przykadem nieprzestrzegania cisej hierarchii w zestawie

protokow TCP/IP jest sytuacja, gdy protok niszy zamyka protok wyszy bez komunikacji

protokow wyszych.7

Kolejn rnic pomidzy modelami TCP/IP i ISO/OSI bya kolejno tworzenia modelu i

samych protokow. Model ISO/OSI zosta utworzony najpierw a nastpnie odpowiadajce mu

protokoy. Ta kolejno oznacza, e ten model nie jest zwizany z adnym zbiorem protokow i w

zwizku z tym jest on oglny. Gdy zaczto budowa sieci oparte na modelu ISO/OSI i istniejce

protokoy, okazao si, e te sieci nie pasuj do wymaganych specyfikacji usug. Dlatego te

musiano doda podobne podwarstwy do modelu, aby stworzy dokumentacj dla zaistniaych

rnic. Kolejno tworzenia modelu TCP/IP i protokow bya odwrotna. Najpierw powstay

protokoy a sam model by po prostu opisem ju istniejcych protokow. W tym przypadku nie

byo problemu z tym aby protokoy pasoway do modelu. Jedynym problemem jest to, e model

TCP/IP nie pasuje do adnego innego stosu protokow, wic nie moe by uywany do

opisywania sieci innych ni TCP/IP.

7

Jeszcze jedn rnic jest rozbieno w sposobie komunikacji zorientowanej poczeniowo

lub bezpoczeniowo. Model ISO/OSI wspiera oba rodzaje komunikacji w warstwie sieciowej,

jednak w warstwie transportowej tylko komunikacj zorientowan poczeniowo. Model TCP/IP w

warstwie sieciowej wspiera tylko komunikacj zorientowan bezpoczeniowo, natomiast w

warstwie transportowej wspiera oba rodzaje komunikacji, dajc w ten sposb moliwo wyboru

midzy nimi uytkownikowi.

Podsumowujc, modele TCP/IP i ISO/OSI rni si w zasadniczy sposb. Model ISO/OSI z

wykluczeniem warstw sesji i prezentacji jest bardzo uyteczny do opisywania sieci

komputerowych. Jednak protokoy tego modelu nie stay si popularne. W przeciwiestwie model

TCP/IP nie jest uywany, jednak jego protokoy s szeroko uywane. Jednak w modelu TCP/IP

warstwa dostpu do sieci nie jest waciwie warstw. Jest ona raczej interfejsem pomidzy

warstwami cza danych i sieciow. Dlatego te w wielu opracowaniach mona spotka hybrydowy

model stworzony z dwch omawianych wyej modeli TCP/IP i ISO/OSI.17

WARSTWA APLIKACJI

WARSTWA TRANSPORTOWA

WARSTWA SIECI

WARSTWA CZA DANYCH

WARSTWA FIZYCZNA

Rysunek 4. Hybrydowy model TCP/IP i ISO/OSI

W tej pracy jako model odniesienia bdzie uywany model hybrydowy, ktry bdzie nazwany

modelem odniesienia TCP/IP.

8

2. Protok IP i ICMP

2.1. Protok IP

Zadaniem sieci internetowej jest udostpnianie jednolitego systemu komunikacyjnego. Aby

ten cel mona byo zrealizowa oprogramowanie protokow sieci logicznych musi ukrywa

szczegy sieci fizycznych. Zasadnicz rnic pomidzy sieci logiczn a fizyczn jest to, e sie

logiczna jest jedynie modelem opracowanym przez jego projektantw i dziaa tylko dziki

oprogramowaniu. Projektanci takich sieci mog w dowolny sposb dobiera adresy, metody

dostarczania oraz formaty pakietw niezalenie od szczegw sprztowych.

Krytycznym elementem modelu sieci logicznej jest adresacja. Aby nada obraz pojedynczemu

systemowi, wszystkie komputery musz mie jednolity schemat adresowania a kady adres musi

by jednoznaczny. Tak wic, najwikszym problemem w sieciach logicznych jest to, e sie

logiczna moe by budowana na wielu technikach sieciowych, co powoduje, e fizyczny adres sieci

nie wystarcza.

Aby zagwarantowa jednolite adresowanie we wszystkich wzach sieci logicznej,

oprogramowanie protokow okrela schemat adresowania, ktry jest niezaleny od bazowych

adresw fizycznych, co pozwala na stworzenie wielkiej, jednolitej sieci.

W stosie protokow TCP/IP adresowanie jest zdefiniowane w protokole warstwy internetowej

IP. IP jest najwaniejszym protokoem usug bezpoczeniowych, okrelajcym podstawow

jednostk przesyania danych w sieciach TCP/IP, reguy przetwarzania i przenoszenia datagramw,

metodyk generowania komunikatw o bdach oraz schemat adresowania. Standard adresowania

okrela dla kadego wza adres wza w protokole internetowym, ktry jest 32-bitowym lub 128-

bitowym numerem przypisanym wzowi, nazywany adresem IP lub adresem internetowym.Pakiet wysyany przez sie zawiera zarwno adres IP nadawcy jaki i odbiorcy.7

Protok IP jest protokoem bezpoczeniowym, tzn. e przed przesyaniem danych protok

ten nie wymienia adnych informacji sterujcych do ustanowienia logicznego poczenia po obu

stronach. Protok IP zdaje si na inne warstwy, gdy konieczna jest realizacja usug wymagajcych

poczenia. Take wykrywanie i ewentualne usuwanie bdw protok IP zrzuca na protokoy

innych warstw.2

Adres IP jest dzielony na dwie czci, co zapewnia efektywne wyznaczanie tras:

prefiks jest to adres identyfikujcy sie fizyczn, do ktrej jest podczony dany komputer

sufiks wskazuje konkretny komputer w danej sieci

9

Oznacza to, e w kadej sieci fizycznej jest przypisana jednoznaczna warto numer sieci.

Pojawia si on jako prefiks w adresie kadego komputera podczonego do danej sieci. Kady

komputer w danej sieci fizycznej ma przypisany jednoznaczny sufiks adresu. adne dwie sieci nie

mog mie przyznanego tego samego numeru ani te adne dwa komputery w ustalonej sieci nie

mog mie przyznanego tego samego sufiksu. Warto sufiksu moe by jednak wykorzystywana

w wicej ni jednej sieci.

Hierarchia adresw IP zapewnia dwie istotne wasnoci:

Kady komputer ma przyznany jednoznaczny adres dany adres nie jest nigdy przypisany do

wicej ni jednego komputera. Wasno ta jest zapewniona, gdy peny adres zawiera zarwno

prefiks, jak i sufiks, ktre s przyznane tak, aby zagwarantowa jednoznaczno. Jeli dwa

komputery s przyczone do rnych sieci fizycznych, to ich adresy maj rne prefiksy. Jeli

za dwa komputery s podczone do tej samej sieci fizycznej, to ich adresy maj rne sufiksy.

Pomimo, e przypisania numerw sieci musz by koordynowane globalnie, sufiksy musz by

przyznane lokalnie bez globalnego uzgadniania.7

Istniej 2 rodzaje protokou IP w warstwie internetowej. 32-bitowy protok IPv4 oraz 128-

bitowy protok IPv6. Obydwa protokoy zostan przedstawione w dalszych rozdziaach tej pracy.

2.2. Protok ICMP

Internet Control Message Protocol (ICMP) jest protokoem nalecym do rodziny protokow

TCP/IP. ICMP jest protokoem kontrolnym. Suy wymianie informacji na temat dziaania sieci.

Informuje o bdach i innych wanych sytuacjach oraz pomaga kontrolowa poczenie. Protok IP

jest zawodny i zdarzaj si sytuacje, kiedy ktry z routerw nie moe dostarczy pakietu do

odbiorcy. Router musi wtedy poinformowa o tym nadawc. Uywa do tego pakietw ICMP.

Protok ICMP uywa protokou IP do przesyania wiadomoci. Kada informacja ICMP jest

zawarta w pakiecie IP.

Nagwek IP Komunikat ICMP

Rysunek 5. Enkapsulacja protokou ICMP w pakiecie IP

10

Bezporednio za nagwkiem rozpoczyna si obszar przeznaczony na dane komunikatu ICMP.

Jego wielko jest zmienna a umieszczane w nim informacje s rne w zalenoci od typu

komunikatu. W przypadku wysyania komunikatu o bdzie na kocu obszaru danych zawsze

umieszczany jest pocztek pakietu, podczas przesyania ktrego wystpi bd. Dziki temu

urzdzenie wysyajce pakiet moe, po odebraniu komunikatu ICMP o bdzie, sprawdzi ktry

program wysya pakiet i poinformowa go o sytuacji jaka wystpia.

Pakiet ICMP skada si z nagwka i danych. Nagwek ma zawsze wielko 32 bitw (4

bajtw) i znajduj si w nim trzy pola. Pierwsze z nich ma wielko 8 bitw i przeznaczone jest na

typ wiadomoci ICMP. Drugie rwnie ma wielko 8 bitw i jest przeznaczone na kod

wiadomoci, ktry pozwala bardziej szczegowo zidentyfikowa rodzaj komunikatu. Kody maj

rne znaczenia w zalenoci od typu komunikatu ICMP, przy czym pole kodu nie jest

wykorzystywane przez kady typ wiadomoci. Trzecie pole nagwka ICMP zajmuje 16 bitw i

zawiera sum kontroln obliczon z caej wiadomoci ICMP (nagwka i danych). Suma kontrolna

pozwala wykry ewentualne uszkodzenia przesyanego pakietu. Uzyskiwana jest na podstawie

takiego samego algorytmu jak suma kontrolna nagwka IP. Do jej obliczenia musi by

skompletowana caa wiadomo ICMP a miejsce przeznaczone na sum wypenia si zerami.8

0 8 16 31

Typ Kod Suma kontrolna

Wiadomo

Rysunek 6. Nagwek pakietu ICMP

11

3. Protok IPv4

3.1. Nagwek protokou IPv4

Budow pakietu IPv4 pokazuje rysunek 7. Pakiet IPv6 skada si z czci nagwka i czci

danych. Nagwek pakietu wynosi minimalnie 20 bajtw a maksymalnie 60 bajtw. Dane mog

mie rn dugo, jednak cay pakiet (nagwek + dane) nie moe wynosi wicej ni 65 535

bajtw15.

0 4 8 16 19 31

Wersja DugoNagwka Typ usugi Dugo

Identyfikator Flagi Przesunicie

Czas ycia Protok Suma kontrolna

Adres nadawcy

Adres odbiorcy

Opcje (zmienne) Uzupenienie(zmienne)

Dane

Rysunek 7. Nagwek protokou IPv4

Najwaniejsze pola nagwka IPv4 to:

Wersja podaje numer uywanej aktualnie wersji protokou IP. Pole to ma dugo 4 bitw. 4w tym polu oznacza, e jest to nagwek protokou IPv4.

Dugo nagwka pole to informuje jak dugi jest nagwek w sowach 32-bitowych (4-bajtowych). Pole to ma dugo 4 bitw. Minimalna warto tego pola wynosi 5, gdy nagwek nie

zawiera adnych opcji. Maksymalna warto tego pola wynosi 15, co ogranicza nagwek do 60

bajtw a tym samym pole opcji do 40 bajtw.

Typ usugi wskazuje ustawienia priorytetu pakietw w stosunku do innych pakietw z tegosamego rda. Pole to ma dugo 8 bitw. Zawiera ono informacje dotyczce, pierwszestwa,

opnienia, przepustowoci oraz parametry niezawodnoci. W praktyce, routery czsto ignoruj to

pole.

12

Dugo okrela rozmiar pakietu w bajtach (nagwek + dane). Maksymalny rozmiar pakietu

wynosi 65 535 bajtw. Pole to ma dugo 16 bitw.

Identyfikator identyfikuje okrelony pakiet IP. Jeli pakiet ulegnie fragmentacji podczas

przesyania, informacja zawarta w tym polu jest wykorzystywana do ponownego zoenia

informacji w miejscu przeznaczenia. Wszystkie fragmenty pakietu maj t sam warto w polu

identyfikator. Pole to ma dugo 16 bitw.

Flagi zawiera znaczniki fragmentacji. Pole to ma dugo 3 bitw, ale obecnie

wykorzystywane s tylko 2 spord nich. Bit najmniej znaczcy wskazuje czy jest to fragment

kocowy w datagramie, czy te bdzie ich wicej. Drugi bit najmniej znaczcy wskazuje, czy

datagram moe by fragmentowany, czy te nie.

Przesunicie wskazuje pozycj fragmentu w stosunku do oryginalnego adunku IP.

Wszystkie fragmenty z wyjtkiem ostatniego musz by wielokrotnoci 8 bajtw. Poniewa pole

to ma dugo 13 bitw, maksymaln liczb fragmentw przypadajc na jeden pakiet jest 8192,

powodujc tym samym, e maksymalna dugo pakietu wynosi 65 536 bajtw. Jest to o jeden bajt

wicej ni wskazuje pole dugo.

Czas ycia wskazuje w sekundach czas przez jaki dany datagram pozostaje w sieci(maksymalnie 255), zanim zostanie odrzucony. Ilekro dany datagram przechodzi przez router, czas

ycia zostaje zmniejszony conajmniej o jeden. Jeli pakiet czeka w kolejce przez duszy czas

warto tego pola zmniejszane jest wielokrotnie (co sekund o jeden). Poniewa router normalnie

przekazuje pakiet IP w czasie mniejszym ni jedna sekunda, ustawienia tego pola staje si

faktyczn liczb przeskokw. Pole to ma dugo 13 bitw. Warto tego pola ustawiana jest przez

komputer rdowy i zmniejszana w kadym wle sieci. Jeli warto czasu ycia spadnie do zera,

datagram jest niszczony, a protok ICMP wysya do hosta komunikat o wystpieniu bdu.

Dziaanie tego pola zabezpiecza sie przed przecieniem pakietami, ktre z rnych powodw nie

mog dotrze do hosta, a take zabezpiecza pakiety przed kreniem w sieci bez koca.

Protok wskazuje protok, ktry da protokoowi IP adunek do wysania. Pole to madugo 8 bitw. Informacja zawarta w tym polu jest wykorzystywana przez warstwy wysokiego

poziomu w hocie docelowym do przetwarzania adunku.

Suma kontrolna wykorzystywana jest wycznie do sprawdzania integralnoci nagwka.

Pole to ma dugo 16 bitw. Poniewa pole czas ycia zmienia swoj warto przy kadym

przeskoku, suma kontrolna jest ponownie obliczana ilekro datagram przechodzi przez router. Jest

ona wyznaczana z wykorzystaniem metody dopenie do jednoci wycznie dla danych zapisanych

w nagwku.

Adres nadawcy zawiera adres nadawcy. Pole to ma dugo 32 bitw.Adres odbiorcy zawiera adres odbiorcy. Pole to ma dugo 32 bitw.

13

Opcje pole to zostao stworzone, aby umoliwi kolejnym wersjom protokou doczenie

informacji, ktre nie zostay zawarte w oryginalnym projekcie. Opcje mog zajmowa przestrze

na kocu nagwka IP. Oryginalnie, zostao zdefiniowanych pi opcji , jednak z biegiem czasu

byy dodawane kolejne. List opcji mona znale na stronie http://www.iana.org/assignments/ip-

parameters.17

Opcje Dziaanie

Bezpieczestwo Okrela jak tajny jest pakiet

cisy routing Podaje dokadn tras, ktr musi pokona pakiet

Luny routing Podaje list routerw, ktre nie mog zosta pominite

Zapisywanie trasy Powoduje zapisanie adresw IP wszystkich routerw, przez ktreprzechodzi pakiet

Stempel czasowy Powoduje zapisanie adresw IP wraz z dokadnym czasem przejciapakietu przez kolejne routery

Rysunek 8. Pi podstawowych opcji nagwka IPv4

Uzupenienie jeli pole opcji nie zajmuje penego sowa to zostaje uzupenione do 32 bitw.7

3.2. Format adresu IPv4 i adresy specjalnego przeznaczenia

Adres IPv4 jest adresem 32 bitowym. Normaln praktyk zapisywania adresu IPv4 jest

dzielenie go na 4 bajty (oktety) a nastpnie obliczanie wartoci dziesitnej dla kadego z oktetw

(wartoci od 0 do 255). Oktety te oddzielone s kropkami i std wywodzi si termin kropkowanotacja dziesitna (np. szesnastkowo wyraony adres IPv4 C0290614 w notacji kropkowodziesitnej wyglda tak 192.41.6.20). Najmniejszym numerem IPv4 jest 0.0.0.0 a najwikszym

255.255.255.2551.Format dziesitny kropkowy wykorzystuje si do wpisywania i wywietlania

adresw IP w szerokiej gamie graficznych interfejsw uytkownika (GUI).7

Istnieje szereg adresw IPv4 specjalnego przeznaczenia. Dla wygody, zamiast przyznawania

adresu kademu komputerowi , mona okreli adresy, ktre mog by przypisywane do pewnej

sieci lub zbiorowi komputerw. IPv4 okrela zestawy adresw o szczeglnej postaci, ktre s

zarezerwowane nie s one nigdy przyznawane komputerom.

14

Prefiks Sufiks Typ adresu Przeznaczenie

Same zera Same zera Biecy komputer Uywany przy rozruchu

Sieciowy Same zera Sie Identyfikuje sie

Sieciowy Same jedynki Rozgaszanieukierunkowane

Rozgaszanie w okrelonejsieci

Same jedynki Same jedynki Rozgaszanie ograniczone Rozgaszanie w sieci lokalnej

127 Cokolwiek Ptla zwrotna Testowanie

Rysunek 9. Postacie adresw IPv4 specjalnego przeznaczenia

Adres biecego komputera zestaw protokow TCP/IP obejmuje protokoy, ktrych

komputer moe uywa przy automatycznym uzyskiwaniu adresu IPv4 przy starcie. Komputer

korzystajc z takich protokow uruchomieniowych nie moe poda prawidowego adresu IPv4

nadawcy. Radzi sobie w takich sytuacjach tak, e adres IPv4 skada si z samych zer i oznacza

adres biecego komputera.

Adresy sieciowe odnosz si do samej sieci, a nie do komputerw podczonych do niej. Niepowinien si nigdy pojawi jako adres docelowy w pakiecie. Adres sieci tworzony jest przez

przepisanie w niezmienionej postaci wszystkich bitw adresu IPv4, dla ktrych odpowiednie bity

maski maj warto jeden. Reszt naley uzupeni zerami.

Adres rozgaszania ukierunkowanego uywany jest do wysyania kopii pakietu dowszystkich wzw sieci fizycznej pod adres danej sieci. Przez sie podruje tylko jedna kopia

pakietu, a dotrze do danej sieci. Nastpnie pakiet ten jest dostarczany do wszystkich wzw tej

sieci. Adres ten jest tworzony przez dodanie do jej prefiksu sufiksu, ktry cay skada si z jedynek.

Adres rozgaszania ograniczonego odnosi si do rozgaszania w lokalnej sieci fizycznej.Jest ono uywane przy starcie systemu przez komputery, ktre nie znaj w tym momencie numeru

sieci. IPv4 na rozgaszanie ograniczone rezerwuje adres skadajcy si z samych jedynek. W ten

sposb pakiet wysyany pod tym adresem oprogramowanie IPv4 rozgosi w sieci lokalnej.

Adresy ptli zwrotnej su do komunikacji z wykorzystaniem protokou IPv4 z lokalnymkomputerem. Jest to adres zawsze przypisany komputerowi, na ktrym wanie pracujemy,

poniewa pakiety z takimi adresami nie powinny wydostawa si na zewntrz komputera, nie

powodujc adnych konfliktw. Protok IPv4 rezerwuje prefiks sieciowy klasy A rwny 127 na

adresy ptli zwrotnej. Adres wza (sufiks) uywany przy tym jest bez znaczenia.

Najpopularniejszym adresem ptli zwrotnej jest 127.0.01.7

15

3.3. Klasy adresw IPv4

Kady host i router w Internecie ma adres IP, ktry zawiera numer sieci i numer hosta. Po

wybraniu adresu IPv4 i podzieleniu go na dwie czci naley jeszcze okreli ile bitw umieci w

kadej czci. Prefiks musi mie wystarczajc liczb bitw, aby umoliwia przypisanie kadej

sieci fizycznej jednoznacznego numeru sieci. Sufiks musi mie wystarczajc liczb bitw, aby

umoliwi przypisanie jednoznacznego sufiksu kademu komputerowi podczonemu do sieci.

Opracowany zosta schemat adresowania, ktry moe dziaa przy kombinacji duych i maych

sieci. Przestrze adresowa zostaa podzielona na podstawowe klasy, z ktrych kada ma inny

rozmiar prefiksu i sufiksu.

Pierwsze cztery bity adresu okrelaj klas do ktrej naley adres, oraz sposb podziau

pozostaej czci adresu na prefiks i sufiks.7

Bity 0 1 2 3 4 8 16 24 31

Klasa A 0 Prefiks Sufiks

Klasa B 1 0 Prefiks Sufiks

Klasa C 1 1 0 Prefiks Sufiks

Klasa D 1 1 1 0 Adres rozsyania grupowego

Klasa E 1 1 1 1 Zarezerwowane na przyszo

Rysunek 10. Pi klas adresw IPv4

Na rysunku 10 zosta przedstawiony podzia adresw IP na 5 klas. Klasy A, B, i C s zwane

klasami pierwotnymi, gdy s przeznaczone na adresy komputerw. Klasa D jest wykorzystywana

przy rozsyaniu grupowym, ktre umoliwia dostarczenie informacji do zbioru komputerw. Aby

uy rozsyania grupowego IP, zbir wzw musi zgodzi si na wsplny adres rozsyania

grupowego. Po ustanowieniu grupy rozsyania kopia kadego pakietu wysanego pod dany adresem

rozsyania bdzie dostarczona do kadego komputera bdcego czonkiem grupy.7

16

Sieci klasy A w tej klasie tosamo sieci okrelana jest przez warto pierwszego oktetu

(omiu bitw). Dlatego s one czsto okrelane jako sieci/8. Poniewa zakres wartoci dla

pierwszego oktetu adresu klasy wynosi od 1 do 126, istnieje 126 niepowtarzalnych sieci klasy A.

pozostae 24 bity adresu identyfikuj hosta. Tosamoci hostw nie mog by wycznie

jedynkami, ani wycznie zerami, wic maksymalna liczba hostw w kadej sieci klasy A to 224-2.

Blok adresowy klasy A zawiera 231 indywidualnych adresw (cznie z zarezerwowanymi

wartociami pierwszego oktetu, wynoszcymi 0 oraz 27), a przestrze adresowa IPv4 zawiera 232

adresw. Std przestrze adresowa klasy A stanowi 50% cakowitej przestrzeni adresowej IPv4.

Przykadowy adres tej klasy ma posta: 10.0.0.0, gdzie id. sieci : 10.

Sieci klasy B w tej klasie tosamo sieciowa okrelana jest przez warto pierwszychdwch oktetw (16 bitw). Sieci klasy B s zatem okrelane jako sieci/16. Dwa pierwsze bity

identyfikuj dan sie jako sie klasy B, co pozostawia 14 bitw na okrelenie niepowtarzalnych

tosamoci sieciowych. Std te mona zdefiniowa 214, albo 16 384 sieci klasy B, przy czym kada

z nich moe mie 216-2 hostw. Blok adresowy klasy B zawiera 230 adresw i stanowi 25%

cakowitej przestrzeni adresowej IPv4. Przykadowy adres tej klasy ma posta: 128.3.2.3, gdzie id.

sieci: 128.3; id. wza: 2.3.

Sieci klasy C w tej klasie tosamo sieciowa okrelana jest przez warto pierwszych trzech

oktetw (24 bitw). Sieci klasy C s zatem okrelane jako sieci/24. Trzy pierwsze bity identyfikuj

dan sie jako sie klasy C, co pozostawia 21 bitw na okrelenie niepowtarzalnych tosamoci

sieciowych. Std te mona zdefiniowa 221 sieci klasy C, przy czym kada z nich moe mie do 28-

2, lub 254 hosty. Blok adresowy klasy C zawiera 229 adresw i stanowi 12,5% cakowitej

przestrzeni adresowej IPv4. Przykadowy adres tej klasy ma posta: 192.0.1.255, gdzie id. sieci:

192.0.1; id. wza: 255.

Sieci klasy D i E sieci klasy D wykorzystywane s do multiemisji, gdzie pojedynczy adressieciowy identyfikuje grup hostw. Sieci klasy E zarezerwowane s do celw dowiadczalnych.

Blok klasy D stanowi 6,25% cakowitej przestrzeni adresowej IPv4, a blok klasy E nieznacznie

mniejsz cz, poniewa 255 nie jest wykorzystywane jako warto pierwszego oktetu.7

Istnieje moliwo obliczenia klasy adresu na podstawie samego adresu, dlatego te adresy

IPv4 nazywane s samoidentyfikujcymi si. Poniej przedstawiona jest tablica, ktra moe by

wykorzystywana przy obliczaniu klasy adresu. Pierwsze 4 bity adresu s wydobywane i

wykorzystywane jako indeks w tablicy.

17

Pierwsze 4 bity adresu Indeks w tablicy (dziesitnie) Klasa adresu

0000 0 A

0001 1 A

0010 2 A

0011 3 A

0100 4 A

0101 5 A

0110 6 A

0111 7 A

1000 8 B

1001 9 B

1010 10 B

1011 11 B

1100 12 C

1101 13 C

1110 14 D

1111 15 E

Rysunek 11. Tablica, ktra moe by wykorzystywana przy obliczaniu klasy adresu.

Osiem kombinacji , ktre zaczynaj si od 0 odpowiadaj klasie A. Cztery kombinacje, ktre

zaczynaj si od 10 odpowiadaj klasie B, a dwie kombinacje zaczynajce si od 110 odpowiadaj

klasie C. Adres zaczynajcy si od 111 naley do klasy D. Adres, ktry zaczyna si od 1111 naley

do klasy E, ktra nie jest obecnie uywana.

Aby rozpozna klasy adresw w notacji dziesitnej z kropkami musimy zamieni pierwszy

oktet adresu na wartoci dziesitne.

Klasa Zakres wartoci

A Od 0 do 127

B Od 128 do 191

C Od 192 do 223

D Od 224 do 239

E Od 240 do 255

Rysunek 12. Zakresy wartoci dziesitnych odpowiadajce poszczeglnym klasom adresw

18

3.4. ICMPv4

Protok IPv4 przesya pakiety od nadawcy poprzez routery do odbiorcy. Jest on zawodny i

zdarzaj si sytuacje, kiedy ktry z routerw nie moe dostarczy pakietu do odbiorcy. Router

musi wtedy poinformowa o tym nadawc. Protok ICMPv4 umoliwia oznajmianie o rnego

rodzaju nieoczekiwanych sytuacjach w sieci.

Istnieje kilka regu przesyania pakietw ICMPv4. Komunikaty protokou ICMP informujce o

bdach nie mog by wysyane jako odpowied na:

inny komunikat ICMP o bdzie

pakiet, ktry nie przeszed testw poprawnoci nagwka IP podczas przesyania poprzez router

(RFC1812)

pakiet z nieprawidowym lub wskazujcym na wicej ni jeden host adresem rdowym

pakiet z adresem docelowym typu broadcast lub multicast (przeznaczony dla wicej ni jednego

urzdzenia)

pakiet wysyany jako broadcast lub multicast w warstwie drugiej modelu OSI - cza danych

pakiet zawierajcy inny ni pierwszy fragment przesyanego datagramu

Zasady te obowizuj po to, aby unikn lawinowego powstawania komunikatw ICMP, ktre

szybko doprowadziyby do przecienia sieci. Bez nich zdarzayby si sytuacje kiedy z

pojedynczego pakietu powstaway by bez koca kolejne komunikaty lub tworzyyby si tzw.

sztormy broadcastowe jako wynik bdnych pakietw broadcastowych. Ponadto komunikaty ICMP

o bdach zawieraj nagwek IP oraz co najmniej pierwsze 8 bajtw datagramu, podczas

przesyania ktrego wystpi bd. Nagwek IP i fragment datagramu musz by zwrcone w

takiej postaci, w jakiej znajdoway si podczas wystpienia bdu.3

Rysunek 13. Lista komunikatw ICMPv4

Typ Kody komunikatu Nazwa komunikatu Informacja Bd

8 Nieuywane zawsze 0 danie echa (EchoRequest) tak

0 Nieuywane zawsze 0 Odpowied na echo (EchoReply) tak

19

Typ Kody komunikatu Nazwa komunikatu Informacja Bd

3

- 0 - sie nieosigalna (Net unreachable)- 1 - host nieosigalny (Host unreachable)- 2 - protok niedostpny (Protocol unreachable)- 3 - port niedostpny (Port unreachable)- 4 - datagram zbyt duy, konieczna fragmentacja podczas

gdy w nagwku protokou IP ustawiony jest bit DF[do not fragment - nie fragmentuj] (Fragmentationneeded and DF set)

- 5 - (Source route failed)- 6 - nieznana sie docelowa (destination network

unknown)- 7 - nieznane urzdzenie docelowe (destination host

unknown)- 8 - urzdzenie rdowe odizolowane (source host

isolated)- 9 - komunikacja z sieci docelow zabroniona przez

administratora (communication with destinationnetwork administratively prohibited)

- 10 - komunikacja z hostem docelowym zabronionaprzez administratora (communication withdestination host administratively prohibited)

- 11 - pakiet nie moe zosta wysany do sieci ze wzglduna ustawienia TOS w nagwku IP (networkunreachable for type of service)

- 12 - pakiet nie moe zosta wysany do urzdzenia zewzgldu na ustawienia TOS w nagwku IP (hostunreachable for type of service)

- 13 - komunikacja zabroniona przez administratora(Communication Administratively Prohibited)

- 14 - (Host Precedence Violation)- 15 - (Precedence Cut off in Effect)

Cel nieosigalny (HostUnreachable) tak

4 Nieuywane zawsze 0 Tumienie rda (SourceQuench) tak

5

- 0 - przekierowanie datagramw do sieci (Redirectdatagrams for the Network)

- 1 - przekierowanie datagramw do hosta (Redirectdatagrams for the Host)

- 2 - przekierowanie datagramw z ustawionym polemTOS w nagwku IP do sieci (Redirect datagramsfor the Type of Service and Network)

- 3 - przekierowanie datagramw z ustawionym polemTOS w nagwku IP do hosta (Redirect datagramsfor the Type of Service and Host)

Przekierowanie (Redirect) tak

9- 0 - zwyke zgoszenie routera- 16 - zgoszenie routera nie przekazujcego zwykego

ruchu

Ogoszenie routera (RouterAdvertisment) tak

10 Nieuywane zawsze 0 Poszukiwanie routera(Router Solicitation) tak

11

- 0 - upyn czas na przesanie datagramu do hostadocelowego (time to live exceeded in transit)

- 1 - upyn czas na skompletowanie datagramu na hociedocelowym (fragment reassembly time exceeded)

Przekroczenie czasu (TimeExceeded) tak

12

- 0 - bd we wskazanym oktecie pakietu (pointerindicates the error)

- 1 - brak wymaganej opcji w nagwku (required optionis missing)

Problem z parametrem(Parameter Problem) tak

20

Typ Kody komunikatu Nazwa komunikatu Informacja Bd

13 Nieuywane zawsze 0 Pytanie o czas (TimestampRequest) tak

14 Nieuywane zawsze 0 Odpowied z czasem((Timestamp Reply) tak

15 Nieuywane zawsze 0danie informacji oadresie (Information

Request)tak

16 Nieuywane zawsze 0 Odpowied z informacj oadresie (Information Reply) tak

17 Nieuywane zawsze 0 Pytanie o mask (AddressMask Request) tak

18 Nieuywane zawsze 0 Odpowied z mask(Address Mask Reply) tak

30 - 0 - pakiet zosta dostarczony do kolejnego urzdzenia- 1 - brak dalszej drogi dla pakietu, pakiet porzuconyWyznaczanie trasy

(Traceroute) tak

Dokadne informacje o budowie i dziaaniu poszczeglnych komunikatw ICMPv4 znajduj

si na stronie http://www.republika.pl/wamarek/icmp/index.html.3

21

4. Protok IPv6

4.1. Nagwek protokou IPv6

Budow pakietu IPv6 pokazuje rysunek 14. Pakiet IPv6 skada si z czci nagwka i czci

danych. Nagwek pakietu wynosi 40 bajtw. Dane mog mie rn dugo, jednak cay pakiet

(nagwek + dane) nie moe wynosi wicej ni 65 535 bajtw. Pakiety wiksze od 65 535 bajtw

mog by wysyane przy uyciu opcji jambogramu w nagwku rozszerze midzywzowych

(Hop-by-Hop)3.

0 4 8 12 16 24 31

Wersja Priorytet Etykieta przepywu

Dugo danych Nastpnynagwek Limit etapw

Adres nadawcy

Adres odbiorcy

Nastpny nagwek / Dane

Rysunek 14. Nagwek protokou IPv6

Najwaniejsze pola nagwka IPv6 to:

Wersja - podaje numer uywanej aktualnie wersji protokou IP. Pole to ma dugo 4 bitw. 6

w tym polu oznacza, e jest to nagwek protokou IPv6.

Priorytet Okrela numer priorytet pakietu w stosunku do innych pakietw pochodzcych z

tego samego rda. Pole to wynosi 8 bitw3.

22

Wartopriorytetu Znaczenie pakietu

0 Brak priorytetu

1 Ruch w tle

2 Transfer danych bez nadzoru

3 Nie zdefiniowane

4 Nadzorowany przepyw danych

5 Nie zdefiniowane

6 Interaktywny przepyw danych

7 Informacje sterujce i zarzdzajce

Rysunek 15. Numery priorytetw nadawane pakietom IPv6 i ich znaczenie

Etykieta przepywu identyfikuje wymagajcy specjalnej obsugi przepyw pakietu przezwzy poredniczce ( np. transmisja w trybie rzeczywistym). Pole to wynosi 20 bitw.

Dugo danych okrela wyraon w oktetach dugo pozostaej nastpujcej po nagwkuczci pakietu. Pole to wynosi 16 bitw. Do wartoci pola dugo danych zaliczane s nagwki

rozszerze i PDU warstw wyszych. Jeli dane s wiksze ni 65 535 bajtw wtedy pole dugo

danych ma warto 0 i uyta zostaje opcja jambogramu w nagwku rozszerze midzywzowych

(Hop-by-Hop).

Nastpny nagwek identyfikuje pierwszy nagwek rozszerze nastpujcy po nagwku

IPv6 lub protok PDU wyszej warstwy np. TCP, UDP, lub ICMPv6. Pole to wynosi 8 bitw3.

Warto pola Znaczenie

0 Opcje midzywzowe

4 IPv6

6 TCP

17 UDP

41 Enkapsulacja nagwka IPv6

43 Routing

44 Fragmentacja

45 Procedura midzydomenowa

46 Rezerwacja zasobw

50 Bezpieczestwo enkapsulacji

51 Uwierzytelnianie

58 ICMPv6

59 Brak kolejnego nagwka

60 Miejsce przeznaczenia

Rysunek 16. Wartoci pola nastpny nagwek i ich znaczenie

23

Limit etapw liczba, ktra jest zmniejszana o jeden, gdy pakiet przechodzi przez wze.

Jeli limit etapw osignie 0, to pakiet zostaje zniszczony. Pole to wynosi 8 bitw.

Adres nadawcy zawiera adres nadawcy pakietu. Pole to wynosi 128 bitw.

Adres odbiorcy zawiera adres odbiorcy pakietu. Pole to wynosi 128 bitw.

4.2. Nagwki rozszerze protokou IPv6

Nagwek IPv6 ma dugo 40 bitw. Tak ma wielko otrzymano dziki przesuniciu

opcjonalnych funkcji przesyania i dostarczania do nagwkw rozszerze. Typowy pakiet IPv6 nie

posiada adnych nagwkw rozszerze. Jeli dodatkowe opcje s wymagane przez routery

poredniczce lub host docelowy, zostaj one umieszczone w nagwkach rozszerze przez host

rdowy. S one umieszczone pomidzy nagwkiem IPv6 oraz nagwkiem protokou warstwy

wyszej. Nagwkw rozszerze jest kilka rodzajw i s one definiowane przez rne wartoci

pola, nastpny nagwek znajdujcego si w poprzedzajcym nagwku.7 W dokumencie RFC 2460

zdefiniowano 6 nagwkw rozszerze.

Nagwek opcje midzywzowe (Hop-by-Hop Options Header) przenosi informacj,ktra musi by sprawdzana i przetwarzana w kadym wle wzdu drogi przesyania pakietu,

rwnie w wle docelowym. Istnienie tego nagwka sygnalizowane jest wartoci 0 w polu

nastpny nagwek w nagwku IPv611.

0 8 16 31

Nastpny nagwek Dugo nagwkarozszerze

Opcje

Rysunek 17. Format nagwka opcje midzywzowe

Jedn opcj zdefiniowan w nagwku opcji midzywzowych jest tak zwana opcja

jambogramu. Jambogram jest to pakiet wikszy ni 64K12.

24

0 16 24 31

Typ opcji Opcja dugo danych

Dugo jambogramu

Rysunek 18. Format jambogramu

Nagwek opcji miejsca przeznaczenia (Destination Options Header) przenosiinformacj, ktra wymaga sprawdzenia tylko w miejscu przeznaczenia. Istnienie tego nagwka

sygnalizowane jest wartoci 60 w polu nastpny nagwek poprzedzajcego nagwka11.

0 8 16 31

Nastpny nagwek Dugo nagwkarozszerze

Opcje

Rysunek 19. Format nagwka opcji miejsca przeznaczenia

Nagwek routing (Routing header) zawiera adres jednego lub wicej wzw porednich,

przez ktre pakiet powinien przej na drodze od nadawcy do miejsca przeznaczenia. Istnienie tego

nagwka sygnalizowane jest wartoci 43 w polu nastpny nagwek poprzedzajcego nagwka11.

0 8 16 24 31

Nastpny nagwek Dugo nagwkarozszerze Typ routingu Pozostae segmenty

Zarezerwowane

Adres[1]

Adres[2]

.

.

.

Adres[n]

Rysunek 20. Format nagwka routing typu 0

25

Nagwek fragmentacji (Fragment header) - wykorzystywany jest przez nadawc

pracujcego z protokoem IPv6 do przesyania pakietw wikszych od MTU (Maximal Transport

Unit) cieki, po ktrej pakiet ma trafi do miejsca przeznaczenia. Istnienie tego nagwka

sygnalizowane jest wartoci 44 w polu nastpny nagwek poprzedzajcego nagwka11.

0 8 16 28 30 31

Nastpny nagwek Zarezerwowane Przesunicie Zarezerw.Fl

Identyfikator

Rysunek 21. Format nagwka fragmentacji

Fragmentacja danych w protokole IPv6 wykonywana jest tylko w wle, ktry wysya pakiety, nie

odbywa si natomiast w routerach poredniczcych w przekazywaniu pakietu, znajdujcych si na

jego ciece. Gdy pakiet IPv6 jest fragmentowany jest on pocztkowo dzielony na dwie czci:

cz nie podlegajcej fragmentacji (przetwarzana, przez kady poredniczcy router i skadajca

si z nagwka IPv6, nagwka opcji midzywzowych, nagwka opcji miejsca przeznaczenia,

nagwka routingu) i czci podlegajcej fragmentacji (przetwarzanej tylko przez router docelowy i

skadajca si z pozostaych nagwkw rozszerze oraz nagwka i danych warstwy wyszej).

Nastpnie tworzone s fragmenty pakietu IPv6. Kady fragment pakietu skada si z czci nie

podlegajcej fragmentacji, nagwka fragmentacji i czci podlegajcej fragmentacji.

Cz nie podlegajcafragmentacji Cz podlegajca fragmentacji

Rysunek 22. Oryginalny pakiet IPv6

Cz nie podlegajcafragmentacji

Nagwekfragmentu

Pierwszy fragment

Cz nie podlegajcafragmentacji

Nagwekfragmentu

Drugi fragment

.

.

.

Cz nie podlegajcafragmentacji

Nagwekfragmentu

Ostatni fragment

Rysunek 23. Proces fragmentacji IPv6

26

Nagwek uwierzytelnianie (Authentication Header) - zapewnia integralno oraz

weryfikowanie autentycznoci bez zapewnienia poufnoci. Istnienie tego nagwka sygnalizowane

jest wartoci 51 w polu nastpny nagwek poprzedzajcego nagwka9.

0 8 16 31

Nastpny nagwek Dugo danych Zarezerwowane

Indeks parametrw bezpieczestwa(SPI)

Pole z numerem sekwencyjnym

Uwierzytelnione dane (zmienne)

Rysunek 24. Format nagwka uwierzytelniania

Nagwek bezpieczestwo enkapsulacji (Encapsulating Security Payload) - zapewniaintegralno i poufno danych, moe rwnie zapewnia weryfikowanie autentycznoci. Istnienie

tego nagwka sygnalizowane jest wartoci 50 w polu nastpny nagwek poprzedzajcego

nagwka10.

0 8 16 24 31

Indeks parametrw bezpieczestwa(SPI)

Numer sekwencyjny

Dane

Uzupenienie (0-255 bitw)

Dugo uzupenienia Nastpny nagwek

Uwierzytelnione dane (zmienne)

Rysunek 25. Format nagwka bezpieczestwo enkapsulacji

27

Nagwki rozszerze nie s egzaminowane i przetwarzane przez kady wze sieci, a tylko

przez odbiorc (lub odbiorcw jeeli mamy doczynienia z multicastem), zdefiniowanego w polu

adres przeznaczenia nagwka IPv6. Istnieje jeden wyjtek od reguy, e nagwki rozszerze

musz by przetwarzane tylko przez odbiorc. Jest nim nagwek, opcje midzywzowe (Hop-by-

Hop Options) zawierajcy informacje, ktre musz by analizowane i przetwarzane przez kady

wze w ciece wczajc w to nadawc i odbiorc.4

Pakiet IPv6 moe zawiera zero, jeden lub wicej nagwkw rozszerze. Jednak, poniewa

tylko jeden z nich musi by przetwarzany przez wszystkie porednie wzy w sieci zostaa

zdefiniowana kolejno nagwkw w jakiej powinny si one znajdowa w pakiecie IPv6:

1. Nagwek opcji midzywzowych (Hop-by-Hop Option header)

2. Nagwek opcji miejsca przeznaczenia dla wzw porednich ( Destionation Options header)

3. Nagwek routingu (Routing header)

4. Nagwek fragmentacji (Fragment header)

5. Nagwek uwierzytelnienia (Authentication header)

6. Nagwek bezpieczestwo enkapsulacji ( Encapsulating Security Payload)

7. Nagwek opcji miejsca przeznaczenia dla wza docelowego ( Destionation Options header)5

Nagwek IPv6Nastpny nagwek = 6

(TCP)Segment TCP

Nagwek IPv6Nastpny nagwek = 43

(Routing)

Nagwek IPv6Nastpny nagwek = 6

(TCP)Segment TCP

Nagwek IPv6Nastpny nagwek = 43

(Routing)

Nagwek IPv6Nastpny nagwek = 44

(Fragmentacja)

Nagwek IPv6Nastpny nagwek = 6

(TCP)Segment TCP

Rysunek 26. Kolejno wystpowania nagwkw rozszerze w pakiecie IPv6

28

4.3. Format adresu IPv6 i adresy specjalnego przeznaczenia

Adres IPv6 jest adresem 128 bitowym. Adres IPv6 jest dzielony na osiem 16-bitowych czci.

Kada z tych czci zamieniana jest na 4-cyfrowy numer zapisany szesnastkowo a czci te s

oddzielane od siebie dwukropkami. Ta notacja adresu IPv6 nazywana jest dwukropkow notacj

szesnastkow.5

Poniej przedstawiony zosta adres IPv6 w zapisany w systemie dwjkowym

0010000111011010000000001101001100000000000000000010111100111011

0000001010101010000000001111111111111110001010001001110001011010

Ten 128-bitowy adres zosta podzielony na osiem 16-bitowych grup

0010000111011010 0000000011010011 0000000000000000 0010111100111011 0000001010101010 0000000011111111 1111111000101000 1001110001011010

Nastpnie kady z blokw zamieniany jest na system szesnastkowy i kolejne czci zostaj

rozdzielone dwukropkami. Utworzony w ten sposb adres IPv6 wyglda tak:

21DA:00D3:0000:2F3B:02AA:00FF:FE28:9C5A

Adres ten moe zosta uproszczony przez usunicie przednich zer w kadym 16-bitowym

bloku. Jednak kady blok musi posiada przynajmniej jedna cyfr. Po usuniciu zer ten sam adres

wyglda tak:

21DA:D3:0:2F3B:2AA:FF:FE28:9C5A

Wiele adresw IPv6 moe zawiera kilka blokw z samymi zerami. W takim przypadku

mona jeszcze bardziej uproci adres IPv6 uywajc kompresji zer blok lub kilka blokw

skadajcy si z samych zer mona zamieni na podwjny dwukropek. Po takiej kompresji adres

przedstawiony powyej moe wyglda tak:

21DA:D3::2F3B:2AA:FF:FE28:9C5A

Innymi przykadami adresw IPv6 z kompresj zer mog by:

FE80:0:0:0:2AA:FF:FE9A:4CA2 FE80::2AA:FF:FE9A:4CA2

FF02:30:0:0:0:0:0:5 FF02:30::5

29

Kompresja zer moe wystpowa tylko raz w danym adresie IPv6. W innym wypadku nie byo by

moliwe odtworzenie poprawnej liczby blokw zawierajcych same zera.5

W adresacji IPv6 wystpuj 2 adresy specjalne:

0:0:0:0:0:0:0:0 lub :: - informuje on o braku adresu. Moe on by wykorzystany przy starcie

systemu gdy wze nie ma jeszcze przypisanego adnego adresu.

0:0:0:0:0:0:0:1 lub ::1 - jest uywany przez wze do wysyania pakietw adresowanych do

samego siebie. Pakiet z adresem przeznaczenia ptli zwrotnej nie moe by nigdy wysany poza

pojedynczy wze oraz nie moe by przesyany przez routery IPv6.

4.4. Rodzaje adresw IPv6

Kady host i router w Internecie ma adres IP, ktry zawiera numer sieci i numer hosta. Prefiks

i sufiks w adresie IPv6 mog mie rne wartoci i nie mona wyznaczy granicy midzy nimi na

podstawie samego adresu. Jednak, kademu adresowi moe by przypisana dugo prefiksu dziki

czemu moliwe jest okrelenie gdzie koczy si prefiks.

Adresy IPv6 maj struktur hierarchiczn. Kady z adresw IPv6 naley do jednego z trzech

podstawowych typw:

4.4.1. Adres jednostkowy (Unicast)

Okrela pojedynczy interfejs (pakiet wysyany pod adres jednostkowy zostanie dostarczony dointerfejsu skojarzonego z tym adresem).

Wrd adresw jednostkowych mona rozrni 3 rodzaje adresw:

Globalny adres jednostkowy (Global Unicast Addresses) jest to adres IPv6 dostpny iroutowalny globalnie w czci Internetu zbudowanego na bazie adresw IPv6. Poniewa IPv6 ma

struktur hierarchiczn a nie klasow globalny adres jednostkowy jest unikalny w caym Internecie

opartym na bazie adresw IPv6.5

30

3 bity 45 bitw 16 bitw 64 bity

001 Prefiks globalnegoroutingu ID podsieci ID interfejsu

48 bitw

Rysunek 27. Format globalnego adresu jednostkowego

Najwaniejsze pola globalnego adresu jednostkowego:

Stae pole 001 trzy najstarsze bity ustawione na 001. Prefiks adresu dla dotychczas nadanychglobalnych adresw jednostkowych wynosi 2000::/3

Prefiks globalnego routingu wskazuje prefiks globalnego routingu miejsca organizacji

(sieci organizacji lub firmy, lub jej czci, ktry ma zdefiniowane umiejscowienie geograficzne np.

biuro, kompleks biur lub miasteczko uniwersyteckie). Kombinacja trzech staych bitw i 45-bitw

prefiksu globalnego routingu jest uywana, aby stworzy 48-bitowy prefiks, ktry jest skojarzony z

indywidualnym miejscem organizacji. Gdy ten 48-bitowy prefiks zostanie raz skojarzony z

miejscem organizacji przez routery dziaajce w Internecie zbudowanym na bazie adresw IPv6,

cay ruch pakietw zawierajcych adres z tym prefiksem zostaje skierowany do routerw miejsca

organizacji.ID podsieci jest uywane w miejscu organizacji do identyfikacji podsieci. Pole to ma

wielko 16-bitw. Miejsce organizacji moe uy tego pola, aby stworzy 65 536 podsieci lub

wielopoziomow hierarchi adresw i sprawn infrastruktur routingu.ID interfejsu wskazuje interfejs w danej podsieci w miejscu.5

Pola w globalnym adresie jednostkowym tworz 3-poziomow struktur pokazan poniej.

48 bitw 16 bitw 64 bity

001 Prefiks globalnegoroutingu ID podsieci ID interfejsu

Topologia publicznaTopologia

miejscaorganizacji

Identyfikator interfejsu

Rysunek 28. 3-poziomowa struktura globalnego adresu jednostkowego

31

Adresy jednostkowe lokalnego uytku (Local-Use Unicast Addresses):Adres jednostkowy lokalnego uytku dla cza (Link-local Address) jest uywany przez

pojedynczy wze do komunikacji z innymi ssiednimi wzami na tym samym czu. Np. na czu

IPv6 gdzie nie ma routera, adres jednostkowy lokalnego uytku dla cza jest uywany do

porozumiewania si przez hosty na tym czu. Adres jednostkowy lokalnego uytku dla cza jest

wymagany przy procesie odkrywania adresu (Neighbor Discovery). Jest on zawsze automatycznie

konfigurowany nawet gdy inne jednostkowe adresy s niedostpne w sieci. Adres ten zawsze

zaczyna si od FE80::/64. Router IPv6 nigdy nie przesya pakietw o tym adresie poza cze5.

10 bitw 54 bity 64 bity

1111 1110 10 000 ... 000 ID interfejsu

Rysunek 29. Adres jednostkowy lokalnego uytku dla cza

Adres jednostkowy lokalnego uytku dla miejsca (Site-local Address) jest adresem, ktrymoe by uywany przez prywatne sieci, ktre nie maj bezporedniego, routowalnego poczenia

do Internetu zbudowanego na bazie adresw IPv6, bez powodowania konfliktu z globalnym

adresem jednostkowym. Adresy jednostkowe lokalnego uytku dla miejsca nie s dostpne z

innych miejsc a routery nie mog kierowa ruchu poza dane miejsce. Adresy te mog by uywane

rwnolegle z globalnymi adresami jednostkowymi. Adresy jednostkowe lokalnego uytku dla

miejsca nie s konfigurowane automatycznie tak jak adresy jednostkowe lokalnego uytku dla

cza, dlatego te musz by konfigurowane za pomoc stanowej (host otrzymuje adres od serwera

DHCPv6) lub bezstanowej (host konstruuje swj adres IPv6 po uzyskaniu identyfikatora interfejsu,

unikalnego na czu do ktrego jest on podczony Ethernet oraz przedrostka adresu dla podsieci

nadawanego przez router) konfiguracji. Pierwsze 10 bitw adresu jest stae i tworzy prefiks

FEC0::/105.

10 bitw 54 bity 64 bity

1111 1110 11 ID podsieci ID interfejsu

Rysunek 30. Adres jednostkowy lokalnego uytku dla miejsca

32

Specyficzne typy adresw IPv6 s identyfikowane przez pocztkowe bity w adresie. Bity

pocztkowe nazywane s rwnie prefiksem formatu (ang. Format Prefix FP)13.

Prefix (binarnie) Typ adresu Zajmowana czprzestrzeni adresowej

0000 0000 Nieprzydzielony 1/256

0000 0001 Nieprzydzielony 1/256

0000 001 Adresy NSAP 1/128

0000 01 Nieprzydzielony 1/64

0000 1 Nieprzydzielony 1/32

0001 Nieprzydzielony 1/16

001 Zarezerwowane na globalne adresyjednostkowe 1/8

010 Nieprzydzielony 1/8

011 Nieprzydzielony 1/8

100 Nieprzydzielony 1/8

101 Nieprzydzielony 1/8

110 Nieprzydzielony 1/8

1110 Nieprzydzielony 1/16

1111 0 Nieprzydzielony 1/32

1111 10 Nieprzydzielony 1/64

1111 110 Nieprzydzielony 1/128

1111 1110 0 Nieprzydzielony 1/512

1111 1110 10 Zarezerwowane na adresy jednostkowelokalnego uytku dla cza 1/1024

1111 1110 11 Zarezerwowane na adresy jednostkowelokalnego uytku dla miejsca 1/1024

1111 1111 Zarezerwowane na adresy rozsyaniagrupowego 1/256

Rysunek 31. Architektura adresw IPv6

ID interfejsu wszystkie adresy jednostkowe, ktre uywaj prefiksw 001 przez 111 musztake uywa 64-bitowego ID interfejsu, ktry jest tworzony z adresu EUI-6413. Adres EUI-64 jest

przypisany do karty sieciowej lub moe by wyliczony z adresu IEEE 8025.

33

adres IEEE 802 - Jest to 48-bitowy adres. Skada si z 24-bitowego ID wytwrcy i 24-bitowego

ID karty sieciowej. Te dwie czci pierwsza unikalna dla wytwrcy a druga unikalna dla karty

sieciowej tworz 48-bitowy globalnie unikalny adres ( MAC).

24 bity 24 bity

ccccccug cccccccc cccccccc xxxxxxxx xxxxxxxx xxxxxxxx

Administrowane przez IEEE ID wytwrcy ID karty wybrane przez wytwrc

Rysunek 32.Adres IEEE 802

Uniwersalny/Lokalny (U/L) suy do okrelenia czy adres jest administrowany uniwersalnie

czy lokalnie. Jeli bit ten wynosi 0, oznacza to, e adres administrowany jest uniwersalnie przez

wytwrc. Jeli bit ten wynosi 1, oznacza to, e administrator zmieni adres nadany przez wytwrc

swoim wasnym. Na rysunku bit ten oznaczony jest jako u.Indywidualny/Grupowy (I/G) suy do okrelenia czy adres jest adresem jednostkowym,

czy te adresem rozsyania grupowego. Gdy bit ten jest ustawiony na 0, oznacza to, e adres jest

adresem jednostkowym. Gdy bit ten ustawiony jest na 1, oznacza to, e adres jest adresem

rozsyania grupowego. Na rysunku bit ten oznaczony jest jako g.

Adres IEEE EUI-64 w tym adresie ID wytwrcy ma tak jak w adresie IEEE 802 24-bity,

jednak ID karty sieciowej ma ju 40 bitw5.

24 bity 40 bitw

ccccccug cccccccc cccccccc xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

Administrowane przez IEEE IDwytwrcy

ID karty wybrane przez wytwrc

Rysunek 33. Adres EUI-64

34

Mapowanie adresu IEEE 802 na adres EUI-64

Aby stworzy adres EUI-64 z adresu IEEE 802 naley wstawi pomidzy ID wytwrcy a ID

karty sieciowej 16 bitw 1111 1111 1111 11105.

Administrowane przez IEEE IDwytwrcy

ID karty wybrane przez wytwrc

24 bity 24 bity

ccccccug cccccccc cccccccc xxxxxxxx xxxxxxxx xxxxxxxx

ccccccug cccccccc cccccccc 1111 1111 1111 1110 xxxxxxxx xxxxxxxx xxxxxxxx

24 bity 0xFF 0xFE 24 bity

64 bity

Rysunek 34. Konwersja adresu IEEE 802 na EUI-64

Mapowanie adresu EUI-64 na ID interfejsuAby dokona mapowania adresu EUI-64 na ID interfejsu naley zamieni warto bitu U/L na

warto przeciwn5.

Administrowane przez IEEE IDwytwrcy

ID karty wybrane przez wytwrc

24 bity 24 bity

cccccc00 cccccccc cccccccc xxxxxxxx xxxxxxxx xxxxxxxx

cccccc00 cccccccc cccccccc 1111 1111 1111 1110 xxxxxxxx xxxxxxxx xxxxxxxx

cccccc10 cccccccc cccccccc 1111 1111 1111 1110 xxxxxxxx xxxxxxxx xxxxxxxx

64 bity

Rysunek 35. Zmiana adresu IEEE 802 na EUI-64 a nastpnie na ID interfejsu

35

Przykad konwersji adresu IEEE 802 na ID interfejsu

1) Adres MAC hosta 00-AA-00-3F-2A-1C2) Konwersja na adres EUI-64 przez wstawienie FF-FE pomidzy trzeci i czwarty bajt 00-AA-

00-FF-FE-3F-2A-1C

3) Bit U/L zostaje zamieniony (sidmy bit w pierwszym bajcie). Pierwszy bajt w systemie

binarnym wynosi 0000 0000. Po zmianie 7 bitu bajt ten wynosi 0000 0010. Po tej zmianie

adres EUI-64 wynosi 02-AA-00-FF-FE-3F-2A-1C.

4) Adres zostaje zmieniony na ID interfejsu o szesnastkowej notacji dwukropkowej

2AA:FF:FE3F:2A1C5

4.4.2. Adres rozsyania grupowego (Multicast address)Odpowiada zbiorowi hostw znajdujcych si by moe w rnych miejscach. Gdy pod takim

adresem wysyany jest pakiet, jest on dostarczany za pomoc IPv6 do kadego czonka grupy.

Hosty mog nasuchiwa na kilku na raz adresach rozsyania grupowego. Hosty mog w dowolnym

czasie docza si lub opuszcza dan grup multikastow. Pierwsze 8 bitw adresu rozsyania

grupowego jest stae i wynosi 1111 1111. Prefiks tego adresu wynosi FF. Adresy te nie mog byuywane jako adresy rdowe i jako adresy porednie w nagwku routingu5.

8 bitw 4 bity 4 bity 112 bitw

1111 1111 Flagi Zakres ID grupy

Rysunek 36. Adres rozsyania grupowego IPv6

Flagi W dokumencie RFC 3513 zostaa zdefiniowana tylko jedna flaga T. Gdy flaga ta

ustawiona jest na 0 oznacza dobrze znany stay adres rozsyania grupowego przypisany przez

IANA (Internet Assigned Numbers Authority). Gdy flaga ta jest ustawiona na 1 oznacza adres

tymczasowy rozsyania grupowego.Zakres okrela zakres sieci IPv6 dla ktrej zosta ustalony adres rozsyania grupowego. Pole

to moe mie rne wartoci:

36

Warto Zakres

0 Zarezerwowane

1 Zakres lokalnego uytku dla interfejsu

2 Zakres lokalnego uytku dla cza

3 Zarezerwowane

4 Zakres lokalnego uytku dla administratora

5 Zakres lokalnego uytku dla miejsca

8 Zakres lokalnego uytku dla organizacji

E Zakres globalny

F Zarezerwowane

Rysunek 37. Wartoci pola zakres w adresie rozsyania grupowego IPv6

ID grupy identyfikuje dan grup multicastow

Z 112-bitowym ID grupy mona utworzy 2112 grup ID. Jednak dokument RFC 3513 mwi, e

ID grupy naley przypisa tylko 32 ostatnie bity adresu rozsyania grupowego z powodu sposobu w

jaki adresy rozsyania grupowego s mapowane na Ethernetowe MAC adresy rozsyania

grupowego. Pozostae 80 bitw nie uwzgldnione w ID grupy powinno by ustawione na wartoci

0. Gdy zostanie uyty 32-bitowy ID grupy, moe on zosta zamapowany na unikatowy

Ethernetowy MAC adres rozsyania grupowego5.

8 bitw 4 bity 4 bity 80 bitw 32 bity

1111 1111 Flagi Zakres 000 ... 000 ID grupy

Rysunek 38. Zmodyfikowany adres rozsyania grupowego IPv6

4.4.3. Adres grona (Anycast)Odpowiada zbiorowi hostw ze wsplnym prefiksem adresowym. Pakiet przesyany jest

najkrtsz drog dokadnie do jednego komputera grupy. W chwili obecnej adresy grona s

uywane tylko jako adresy docelowe i s przydzielane tylko routerom.

37

n bitw 128-n bitw

Prefiks podsieci 00000000000000

Rysunek 39. Adres grona

Prefiks podsieci prefiks identyfikujcy okrelone cze. Ten adres grona jest syntaktycznie

taki sam jak adres jednostkowy dla interfejsu na czu z identyfikatorem ID ustawionym na 0.

4.5. ICMPv6

W protokole ICMPv6 jest wyrane rozrnienie komunikatw o bdach i komunikatw

informacyjnych. Wiadomoci o bdach maj typy mniejsze ni 128 a wiadomoci informacyjne od

128 w gr8.

Rysunek 40. Lista komunikatw ICMPv6

Typ Kody komunikatu Nazwa komunikatu Informacja Bd

1

- 0 - brak drogi do urzdzenia docelowego (no route todestination)

- 1 - komunikacja z sieci docelow zabroniona przezadministratora (communication with destinationnetwork administratively prohibited

- 3 - adres nieosigalny (address unreachable)- 4 - port niedostpny (port unreachable)

Cel nieosigalny(Destination Unreachable) tak

2 Nieuywane zawsze 0 Za duy pakiet (Paket TooBig) tak

3

- 0 - upyn czas na przesanie datagramu do hostadocelowego (hop limit exceeded in transit)

- 1 - upyn czas na skompletowanie datagramu nahocie docelowym (fragment reassembly timeexceeded)

Przekroczenie czasu (TimeExceeded) tak

4

- 0 - bdne pole nagwka (erroneous header fieldencountered)

- 1 - nieznany typ nastpnego nagwka w polu nagwkaIPv6 (unrecognized Next Header type encountered)

- 2 - nieznana opcja IPv6 (unrecognized IPv6 optionencountered)

Problem z parametrem(Parameter Problem) tak

128 Nieuywane zawsze 0 danie echa (EchoRequest) tak

38

Typ Kody komunikatu Nazwa komunikatu Informacja Bd

129 Nieuywane zawsze 0 Odpowied na echo (EchoReply) tak

133 Nieuywane zawsze 0 Poszukiwanie routera(Router Solicitation) tak

134 Nieuywane zawsze 0 Ogoszenie routera (RouterAdvertisement) tak

135 Nieuywane zawsze 0 Poszukiwanie adresu(Neighbor Solicitation) tak

136 Nieuywane zawsze 0 Ogaszanie adresu(Neighbor Advertisement) tak

137 Nieuywane zawsze 0 Przekierowanie (Redirect) tak

Komunikaty informujce o bdach w protokole ICMPv6 nie mog by wysyane jako

odpowied na:

inny komunikat ICMPv6 o bdzie

pakiet z adresem rdowym wskazujcym na wicej ni jeden host

pakiet z adresem docelowym typu multicast z wyjtkiem komunikatu typu 2 za duy pakiet

(Packet too big) oraz typu 4 kod 2 Problem z parametrem (Parameter problem).

pakiet wysany jako broadcast lub multicast w warstwie drugiej modelu OSI - cza danych, z

wyjtkiem komunikatw wymienionych w poprzednim punkcie

Kady komunikat o bdzie w protokole ICMPv6 zawiera pocztek pakietu, podczas

przesyania ktrego wystpi bd. Ilo zwracanych danych jest taka, aby wiadomo ICMPv6 nie

przekroczya rozmiaru rwnego najmniejszej wartoci MTU (Maximum Transmission Unit)

protokou IPv6. W przypadku gdy urzdzenie otrzymuje wiadomo ICMPv6, musi podj pewne

dziaania. Jeeli typ wiadomoci nie jest znany oprogramowaniu, ICMPv6 musi przekaza

komunikat protokoom wyszych warstw w przypadku gdy jest to komunikat o bdzie (typ jest

mniejszy ni 128). Komunikat informacyjny ICMPv6 nieznanego typu musi by przez

oprogramowanie protokou odrzucony. Gdy wiadomo o bdzie ICMPv6 musi by przekazana do

oprogramowania pracujcego w wyszych warstwach modelu OSI, proces ktry powinien j

otrzyma rozpoznawany jest na podstawie protokou wyszej warstwy (np. TCP) i numeru portu.

Informacje te s uzyskiwane z fragmentu pakietu wywoujcego bd zawartego w wiadomoci

ICMPv6. Moe si jednak zdarzy tak, e bdny pakiet IPv6 zawiera duo nagwkw rozszerze

(extension headers). Nagwek protokou wyszej warstwy nie moe wtedy zosta doczony do

39

wiadomoci poniewa przekroczyaby ona dopuszczaln wielko. W takim przypadku komunikat

o bdzie jest odrzucany. Protok ICMPv6 musi ogranicza ilo wysyanych komunikatw o

bdach aby nie obcia zbytnio czy. Przykadami takich ogranicze s:

ograniczenie iloci wysyanych komunikatw do najwyej jednego w cigu T milisekund

ograniczenie wykorzystania maksymalnej przepustowoci cza przez ICMPv6 do F procent

W kadym urzdzeniu musi by moliwo ustawienia parametrw ograniczajcych (T oraz F)

a przykadowymi wartociami domylnymi mog by np. T=1 sekunda, F=2%.8

Niektre z komunikatw ICMPv6 mog zawiera dodatkowe opcje w wiadomoci.

0 8 16 31

Typ Dugo

Dane

Rysunek 41. Format opcji ICMPv6

Pole typu zawiera rodzaj zawartej opcji. Natomiast dugo to liczba cakowita oznaczajca ile

sw 64 bitowych zajmuje caa opcja wraz z polami typ i dugo. Opcje tego samego typu mog

si powtarza w jednym komunikacie ICMPv6.5

Numer Typ Nazwa opcji

1 1 Adres rda cza danych (Source Link-Layer Address)

2 2 Adres przeznaczenia cza danych (Target Link-Layer Address)

3 3 Informacja o prefiksie (Prefix Information)

4 1 Nagwek przekierowania (Redirected Header)

5 1 MTU

Rysunek 42. Lista opcji ICMPv6

Dokadne informacje o budowie i dziaaniu poszczeglnych komunikatw ICMPv6 znajduj

si na stronie http://www.republika.pl/wamarek/icmp/index.html.8

40

4.6. Autokonfiguracja adresu IPv6

Jedn z najbardziej uytecznych cech IPv6 jest moliwo jego automatycznej konfiguracji,

nawet bez uycia protokou konfiguracji stanowej takiej jak DHCPv6. Kady host moe domylnie

automatycznie skonfigurowa adres lokalnego uytku dla cza dla kadego interfejsu. Przy uyciu

Odkrywania Adresu (Neighbor Discovery) host moe take okreli adresy routerw, inne

parametry potrzebne do konfiguracji, dodatkowe adresy i prefiksy obecne na czu. W wiadomoci

Ogoszenie Routera (Router Advertisement) zawarta jest informacja czy powinna by uywana

stanowa konfiguracja adresu.

Wystpuj 3 rodzaje autokonfiguracji:

1. Autokonfiguracja bezstanowa konfiguracja adresu bazuje na otrzymaniu wiadomociOgoszenie Routera (Router Advertisement) zawierajcej flagi Zarzdzana Konfiguracja Adresu

(Managed Address Configuration flags) i flagi Inna Konfiguracja Stanowa (Other Stateful

Configuration flags) ustawione na warto 0 i jedn lub wicej opcji Informacja Prefiksu (Prefix

Information options).2. Autokonfiguracja stanowa konfiguracja adresu bazuje na otrzymaniu adresu i innych opcji

konfiguracji od protokou stanowej konfiguracji adresu takiego jak DHCPv6. Host uywa

stanowej konfiguracji adresu, gdy otrzymuje wiadomo Ogoszenie Routera (Router

Advertisement message) bez opcji prefiksu, gdzie flagi Zarzdzana Konfiguracja Adresu

(Managed Address Configuration flags) lub flagi Inna Konfiguracja Stanowa (Other Stateful

Configuration flags) s ustawione na warto 1. Host uyje take protokou stanowej

konfiguracji adresu gdy nie ma obecnych adnych routerw na czu.3. Konfiguracja stanowo-bezstanowa konfiguracja adresu bazuje na otrzymaniu wiadomoci

Ogoszenie Routera (Router Advertisement) zawierajcej opcje Informacja Prefiksu (Prefix

Information options) i flagi Zarzdzana Konfiguracja Adresu (Managed Address Configuration

flags) lub flagi Inna Konfiguracja Stanowa (Other Stateful Configuration flags) ustawione na

warto 1.5

Autokonfiguracja adresu skada si z kilku stanw. Autokonfigurowany adres moe si

znajdowa w jednym lub wicej ni jednym z poniszych stanw:

Wstpny (Tentative) adres w czasie sprawdzania jego unikalnoci. Weryfikacja ta ma na celu

wykrywanie zduplikowanych adresw. Wze nie moe otrzymywa jednostkowego ruchu

pakietw skierowanego na adres wstpny. Moe natomiast otrzymywa i przetwarza

wiadomoci Ogaszanie Adresu rozsyania grupowego (multicast Neighbor Advertisment

41

messages) wysyane w odpowiedzi na wiadomo Poszukiwanie Adresu (Neighbor Solicitation

message), ktra zostaje wysana podczas wykrywania zduplikowanego adresu. Wany (Valid) adres , ktrego unikatowo zostaa sprawdzona i z ktrego jednostkowy ruch

pakietw moe by wysyany i otrzymywany. Stan wany trwa przez stany preferowany i

ulegajcy przedawnieniu. Ilo czasu jak adres pozostaje w stanach wstpnym i wanym jest

okrelona przez pole Czas ycia Stanu Wany (Valid Lifetime) w opcji Informacja Prefiksu

(Prefix Information option) wiadomoci Ogoszenie Routera (Router Advertisement message).

Czas ycia stanu wany musi by wikszy ni, lub taki sam jak czas ycia stanu preferowany.

Wany adres musi by albo adresem preferowanym lub adresem ulegajcym przedawnieniu. Preferowany (Preferred) wze moe wysya i otrzymywa ruch jednostkowy pakietw do

i z adresu preferowanego. Ulegajcy przedawnieniu (Deprecated) adres, ktry jest cigle wany, jednak nie jest

uywany przez nowe poczenia. Istniejce sesje komunikacyjne mog nadal uywa adresu

ulegajcego przedawnieniu. Wze moe wysya i otrzymywa jednostkowy ruch pakietw do i

z adresu ulegajcego przedawnieniu. Niewany (Invalid) adres do ktrego wze nie moe wysya i otrzymywa od niego

jednostkowego ruch pakietw.

Wany

Wstpny Preferowany Ulegajcyprzedawnieniu Niewany czas

Czas ycia stanu preferowany

Czas ycia stanu wany

Rysunek 43. Stany i czasy ycia dla autokonfigurowanych adresw

Autokonfiguracja (z wyjtkiem autokonfiguracji adresu lokalnego uytku dla cza) jest

sprecyzowana tylko dla hostw. Adresy IPv6 w routerach musz by konfigurowane rcznie.5

Przykad procesu autokonfiguracji

Konfiguracja adresu dla interfejsu wza IPv6:1) Wstpny adres uytku lokalnego dla cza zostaje utworzony z prefiksu adresu uytku

lokalnego dla cza FE80::/64 i 64-bitowego ID interfejsu hosta.

42

2) Uywajc wykrywania zduplikowanego adresu do zweryfikowania unikalnoci wstpnego

adresu uytku lokalnego dla cza, interfejs hosta wysya wiadomo Poszukiwanie Adresu

(Neighbor Solicitation) z polem adresu docelowego ustawionym na wstpny adres uytku

lokalnego dla cza.

3) Jeli host otrzyma wiadomo Ogaszanie Adresu (Neighbor Advertisement) w odpowiedzi

na wiadomo Poszukiwanie Adresu (Neighbor Solicitation), oznacza to, e inny host na

czu lokalnym uywa wstpnego adresu uytku lokalnego dla cza. W tym momencie

autokonfiguracja zatrzymuje si i musi zosta przeprowadzona konfiguracja rczna.

4) Jeli host nie otrzyma wiadomoci Ogaszanie Adresu (Neighbor Advertisement) w

odpowiedzi na wiadomo Poszukiwanie Adresu (Neighbor Solicitation), wstpny adres

lokalnego uytku dla cza jest uznawany za unikalny i wany. W tym momencie adres

uytku lokalnego dla cza zostaje zainicjalizowany dla interfejsu hosta. Zostaje te

zarejestrowany korespondujcy adres rozgaszania grupowego dla cza w karcie sieciowej

wza poszukujcego 5.

Dalsza konfiguracja adresu dla hosta IPv6:

1) Host wysya domylnie do 3 wiadomoci Poszukiwanie Routera (Router Solicitation).

2) Jeli host nie otrzyma wiadomoci Ogaszanie Routera (Router Advertisement), host uywa

stanowej konfiguracji adresu aby otrzyma adres i inne parametry konfiguracyjne.

3) Jeli host otrzyma wiadomoci Ogaszanie Routera (Router Advertisement), limit

przeskokw, czas dostpnoci, licznik retransmisji, i MTU jeli jest obecne, zostaj

ustawione.

4) Jeli opcja Informacja Prefiksu (Prefix Information) jest obecna a w niej:

flaga Na czu (On-Link) jest ustawiona na 1, prefiks zostaje dodany do listy prefiksw

flaga Autonomiczny (Autonomous) jest ustawiona na 1, prefiks i 64-bitowy ID interfejsu

zostaj uyte do stworzenia adresu wstpnego-

5) Jeli flaga Zarzdzana Konfiguracja Adresu (Managed Address Configuration) w wiadomoci

Ogaszanie Routera (Router Advertisement) jest ustawiona na 1, do ustalania dodatkowych

adresw uywany jest protok stanowej konfiguracji adresu.

6) Jeli flaga Inna Konfiguracja Stanowa (Other Stateful Configuration) w wiadomoci

Ogaszanie Routera (Router Advertisement) jest ustawiona na 1, do ustalania dodatkowych

parametrw konfiguracji uywany jest protok stanowej konfiguracji adresu.5

43

5. Porwnanie protokow IPv4 i IPv6

Wersja protokou IPv4 osigna na wiecie ogromny sukces. Protok ten umoliwi

poczenie rnego rodzaju sieci w jedn globaln sie nazywan Internetem (zdefiniowa jednolity

format pakietw oraz zdefiniowa zbir adresw niezalenych od rnych rodzajw adresw

sprztowych). IPv4 potrafi si te dostosowa do zmian w technologii sprztu. Protok IPv4 jest

obecnie stosowany w sieciach dziaajcych o kilka rzdw wielkoci szybciej, od tych , ktre byy

wykorzystywane w czasie jego projektowania. Jednak popularno Internetu i jego stale

wzrastajcy rozmiar sprawiy, e w latach 90 zaczto przewidywa wyczerpanie zapasu adresw

IPv4. Wtedy te rozpoczto prac nad now wersj protokou IPv6. Protok ten w przeciwiestwie

do protokou IPv4 jest 128-bitowym protokoem co daje znaczny wikszy zakres adresw. Protok

IPv6 w przyszoci ma zastpi protok IPv4.

Pomimo tego, e protokoy IPv4 i IPv6 maj podobne nazwy i dziaaj w tej samej warstwie

modelu TCP/IP warstwie Internetu, i to, e oba s protokoami bezpoczeniowymi (kady

datagram zawiera adres odbiorcy i ma wyznaczon tras niezalenie od innych datagramw) oba

protokoy rni si w znacznym stopniu od siebie.5

5.1. Rnice w budowie nagwka i pakietu

a) rnica w wielkoci nagwka protokow IPv4 i IPv6

nagwek protokou IPv4 wynosi od 20 do 60 bajtw

nagwek protokou IPv6 ma sta wielko wynoszca 40 bajtw

b) porwnanie nagwkw protokow IPv4 i IPv65

44

Rysunek 44. Porwnanie nagwka IPv4 i IPv6

Pola nagwka IPv4 Pola nagwka IPv6

Wersja warto pola 4 Wersja warto pola 6

Dugo nagwka od 20 do 60 bajtw(zaley od wielkoci nagwka opcji)

Usunite - kady nagwek ma sta wielko40 bajtw; nagwki rozszerze opcjonalniedodawane do niego maj albo warto sta,albo maj pole z wasn dugoci

Typ usugi Priorytet

Dugo dugo nagwka + dugodanych

Dugo danych tylko dugo danych

Identyfikator

Flagi

Przesunicie

Usunite informacje o fragmentacji nie szawarte w nagwku, s one zawarte wnagwku rozszerze fragmentacji

Czas ycia Limit etapw

Protok Nastpny nagwek

Suma kontrolna Usunite sprawdzanie poprawnoci pakietuwykonywane jest przez warstw cza

Adres nadawcy 32-bitowy Adres nadawcy 128-bitowy

Adres odbiorcy 32-bitowy Adres odbiorcy 128-bitowy

Opcje Usunite zastpione przez nagwkirozszerze

Niedostpne Etykieta przepywu

c) rnice we fragmentacji pakietw IPv4 i IPv6

pakiet IPv4 moe by fragmentowany przez nadawc oraz wzy poredniczce

(nagwek kadego pakietu zawiera pola dotyczce fragmentacji identyfikator, flagi,

przesunicie)

pakiet IPv6 moe by fragmentowany tylko przez nadawc, nigdy przez wzy

poredniczce (nadawca dodaje do nagwka IPv6 nagwek rozszerze fragmentacji)

d) rnice w bezpieczestwie i uwierzytelnianiu danych w pakietach IPv4 i IPv6

IPv4 nie wspiera bezpieczestwa i uwierzytelniania danych w przesyanych pakietach

IPv6 wspiera bezpieczestwo i uwierzytelnianie danych w wysyanych pakietach dziki

nagwkom rozszerze uwierzytelniania i bezpieczestwa enkapsulacji danych

e) rnica w wielkoci pakietw IPv4 i IPv6

pakiety IPv4 mog mie maksymaln wielko 65 535 bajtw

pakiety IPv6 mog mie wielko wiksz ni 65 535 bajtw (nagwek rozszerze

midzywzowych jambogramy)

45

f) rnice w obsudze transmisji czasu rzeczywistego przez nagwki pakietw IPv4 i IPv6

brak w nagwku IPv4 pola identyfikujcego ustawie jakoci przepywu (QoS) przez

routery

nagwek pakietu IPv6 zawiera pole etykieta przepywu identyfikujce ustawienia

jakoci przepywu (QoS) przez routery

Dziki tym rnicom nagwek IPv6 moe by efektywnej przetwarzany przez routery

porednie. Uzyskano to dziki usuniciu zbdnych opcji z nagwka i przeniesieniu ich do

nagwkw rozszerze. Tylko jeden z nagwkw rozszerze nagwek opcji midzywzowych

musi by sprawdzany przez wszystkie routery. Inna cech nagwka IPv6 przypieszajc jego

przetwarzanie w routerach porednich jest to, e routery porednie nie mog fragmentowa pakietu.

Fragmentacji moe dokonywa tylko host wysyajcy pakiet dziki nagwkowi rozszerze

fragmentacji. Dziki usuniciu zbdnych opcji z nagwka i przesuniciu ich do nagwkw

rozszerze, nagwek IPv6 zyska jeszcze jedn bardzo wan cech pomimo tego, e adres IPv6

jest 4 razy wikszy od adresu IPv6, to nagwek pakietu IPv6 jest tylko 2 razy wikszy ni

nagwek IPv4. W nagwku IPv4 zawarto te opcje bezpieczestwa, ktre nie byy dostpne w

nagwku IPv4.

5.2. Rnica w formatach adresw i adresach specjalnych IPv4 i IPv6

a) rnica w dugoci adresw:

adresy IPv4 s adresami 32-bitowymi (4-bajtowymi). Przestrze adresowa IPv4 wynosi 232

adresw

adresy IPv6 s adresami 128-bitowymi (16-bajtowymi). Przestrze adresowa IPv6 wynosi

3x1038 adresw (6x1023 adresw przypadajcych na kady metr kwadratowy powierzchni

ziemi)

b) rnice w notacji adresw IPv4 i IPv6

zapis adresw IPv4 dokonywany jest za pomoc dziesitnej notacji kropkowej np.

192.41.6.20

zapis adresw IPv6 dokonywany jest za pomoc szesnastkowej notacji dwukropkowej np.

FF02:30::5

46

c) porwnanie wystpowanie adresw specjalnych

Rysunek 45. Porwnanie adresw specjalnych IPv4 i IPv6

Adresy specjalne IPv4 Adresy specjalne IPv6

Adres biecego komputera 0.0.0.0 Adres nieokrelony - ::

Adresy sieciowe Niedostpne

Adresy rozgaszania kierunkowego Niedostpne

Adresy rozgaszania ograniczonego Niedostpne

Adres ptli zwrotnej 127.0.0.1 Adres ptli zwrotnej - ::1

Dziki temu, e adresy IPv6 s 128 bitowe, wzrasta przestrze adresowa. Ta cecha IPv6 jest

lekarstwem na koczc si prze