Klasa |
Pier. bity |
1 oktet |
2 oktet |
3 oktet |
4 oktet |
||
A |
0 |
cz. sieci |
cz. hosta |
cz. hosta |
Cz hosta |
||
B |
10 |
cz. sieci |
cz. sieci |
cz. hosta |
cz. hosta |
||
C |
110 |
cz. sieci |
cz. sieci |
cz sieci |
cz. hosta |
||
D |
1110 |
Adresy specjalne |
|||||
E |
1111 |
Adresy specjalne |
|||||
Klasa A- część sieci składa się z 8 bitów (I oktet), a część hosta z pozostałych 24 bitów (II, III, IV oktet). Pierwszy bit adresu zawsze jest ustawiony na 0. Maksymalnie można zaadresować: 2^24- 2 hosty = 16777214 hostów. Zakres: 1.0.0.1 - 127.255.255.254. Maska: 255.0.0.0 Klasa B- część sieci składa się z 16 bitów (I, II oktet), a część hosta z pozostałych 16 bitów (III, IV oktet). Pierwsze 2 bity adresu zawsze są ustawione na 10. Maksymalnie można zaadresować: 2^16- 2 hosty = 65534 hostów. Zakres: 128.0.0.1 - 191.255.255.254. Maska: 255.255.0.0 Klasa C- część sieci składa się z 24 bitów (I, II, III oktet), a część hosta z pozostałych 8 bitów (IV oktet). Pierwsze 3 bity adresu zawsze są ustawione na 110. Maksymalnie można zaadresować: 2^8- 2 hosty = 254 hosty. 192.0.0.1 - 223.255.255.254. Maska: 255.255.255.0 Klasa D- pierwsze 4 bity adresu zawsze są ustawione na 1110. Klasa E- pierwszy 4 bity adresu zawsze są ustawione na 1111. Zakresy adresów prywatnych IP: 10.0.0.0-10.255.255.255 172.16.0.0 - 172.31.255.255 192.168.0.0 - 192.168.255.255 Adres 127.0.0.1 to część klasy A, jest zarezerwowane dla adresu pętli zwrotnej komputera lokalnego dlatego nie można ich używać. Subnetting: |
|||||||
Ilosc |
2 |
4 |
8 |
16 |
32 |
64 |
128 |
maska |
128 |
192 |
224 |
240 |
248 |
252 |
254 |
Dzielenie na podsieci: Sprawdzamy klasę IP, zapisujemy domyślną maskę, dodajemy do kolejnego oktetu wartość maski z tabelki odpowiadająca ilości podsieci, a potem postępujemy jak ze zwykłym adresowaniem, czyli liczymy: 1 host, broadcast i ostatni host, itd. 10101111 00010101 00000000 00000000 - adres sieci 11111111 11111111 11110000 00000000 - maska podsieci 10101111 00010101 00001111 11111111 - adres rozgłoszeniowy Sprawdzanie adresu sieci: Podany adres IP hosta zapisujemy binarnie, sprawdzamy do której klasy należy i pod spodem dopisujemy binarnie domyślną maskę. Następnie przepisujemy zapisany binarnie adres IP hosta do miejsca gdzie maska zaczyna mieć same zera, od tego miesca do końca wszystko zerujemy 10101111 00010101 00010010 10001101 - adres IP hosta 11111111 11111111 11110000 00000000 - maska podsieci 10101111 00010101 00010000 00000000 - adres podsieci |
IPv4: Budowa: |
|||||
bity |
0-3 |
4-7
|
8-15
|
16-18
|
19-31
|
0 |
Wersja |
Długość nagłówka |
Typ usługi |
Całkowita długość
|
|
32 |
Numer identyfikacyjny |
Flagi |
Kontrola przesunięcia |
||
64 |
Czas życia pakietu |
Protokół warstwy wyższej |
Suma kontrolna nagłówka |
||
96 |
Adres źródłowy IP |
||||
128 |
Adres źródłowy IP |
||||
160 |
Opcje IP |
Uzupełnienie |
|||
192 |
Dane |
||||
Pierwsze, 4-bitowe pole zawiera numer wersji protokołu IP (dla IPv4 jest to 4). Kolejne 4-bitowe pole zawiera długość samego nagłówka protokołu (bez danych). Następne 8 bitów prezentuje tzw. "typ usługi" (ang. Type of Service). Jest to najbardziej podstawowy sposób wyznaczania priorytetu danego datagramu. Na podstawie ToS routery mogą szybciej (np. dla sesji SSH), lub wolniej (np. dla przesyłania danych) przepuszczać przez siebie dane datagramy, zwiększając bądź też zmniejszając w ten sposób interaktywność transmisji. Kolejnym 16-bitowym polem jest całkowita długość pakietu (razem z danymi). Jego długość (wynosząca 2^16) umożliwia ustawienie rozmiaru pakietu na 65536 bajtów. Warto dodać, że minimalny rozmiar pakietu to 20 bajtów. Kolejne 16-bitowe pole to numer identyfikacyjny, potrzebny między innymi do fragmentacji i defragmentacji pakietów. Kolejnym 3-bitowym polem są flagi, które są używane przy fragmentacji pakietów. Następne 13-bitowe pole służy do odpowiedniego "poukładania" pofragmentowanych pakietów w taki sposób, aby dane zawarte w tych pakietach miały taki sam układ, jak w pakiecie przed fragmentacją. Pole TTL (8 bitów) to czas życia pakietów. Jest to liczba z zakresu 0-255. Przy przechodzeniu pakietu przez router jest ona zmniejszana o jeden. W momencie osiągnięcia przez TTL zera, router nie przekazuje pakietu do kolejnego urządzenia sieciowego. Kolejne, 8-bitowe pole to numer protokołu warstwy wyższej, takimi jak ICMP (1), TCP (6) czy UDP (17). Następnym polem jest suma kontrolna nagłówka pakietu. Służy ona kontroli, czy wszystkie dane zostały przetransmitowane. Przy każdej zmianie zawartości pakietu, router oblicza sumę kontrolną dla pakietu i zapisuje ją w odpowiednim polu. Dalsze pola zawierają adres źródłowy i docelowy. To właśnie na podstawie nich można określić pochodzenie i miejsce docelowe pakietu w sieci. Ostatnim, 32-bitowym polem są opcje, które w normalnej transmisji zwykle nie są używane. Pole Padding (wypełnienie) jest opcjonalne i jego zawartością są zera dopełniające długośćnagłówka do wielokrotności 32 bitów. |
IPv6: W przeciwieństwie do protokołu IPv4, którego długość nagłówka wynosi od 20 do 60 bajtów, długość nagłówka protokołu IPv6 jest stała i wynosi 40 bajtów. Jego znaczną część zajmują adresy źródłowy oraz docelowy - 32 bajty, łatwo więc obliczyć, że na pozostałe dane pozostaje tylko 8 bajtów. Dzięki stałej długości nagłówek IPv6 jest dużo prostszy niż nagłówek poprzedniej wersji protokołu a zarazem dużo łatwiejszy w przetwarzaniu. Jest także dużo bardziej elastyczny - dodatkowe opcje protokołu mogą być umieszczane w opcjonalnych nagłówkach rozszerzających (ang. extension headers), następujących po nagłówku głównym IPv6. Takie rozwiązanie umożliwia zwiększenie możliwości protokołu bez wprowadzania zmian do podstawowego nagłówka. |
||||||||
Bity |
0-8 |
4-7 |
8-11 |
12-15 |
16-19 |
20-23 |
24-27 |
28-31 |
0 |
We |
Priorytet |
Etykieta przepływu |
|||||
32 |
Długość danych |
Następny nagłówek |
Limit przeskoków |
|||||
64 |
Adres źródłowy (128 bitów) |
|||||||
96 |
|
|||||||
128 |
|
|||||||
160 |
|
|||||||
192 |
Adres docelowy (128 bitów)
|
|||||||
224 |
|
|||||||
256 |
|
|||||||
288 |
|
|||||||
Wersja (4 bity) - definiująca wersję protokołu, w przypadku IPv6 pole te zawiera wartosć 6 (bitowo 0110) Klasa ruchu (8 bitów) - określa sposób w jaki ma zostać potraktowany pakiet danych. W poprzedniej wersji protokoły pole te nazywało się Type of Service, jednak ze względu na to, że w IPv6 stosowane są inne mechanizmy priorytetowania danych, nazwę tego pola zmieniono Etykieta przepływu (20 bitów) - pomagające odróżnić pakiety, które wymagają takiego samego traktowania (ich pole klasy ruchu ma tę samą wartość) Długość danych (16 bitów) - wielkość pakietu, nie wliczając długości podstawowego nagłówka (wliczając jednak nagłówki rozszerzające) Następny nagłówek (8 bitów) - identyfikuje typ następnego nagłówka, pozwalając określić czy jest to nagłówek rozszerzający czy nagłówek warstwy wyższej. W przypadku tego drugiego, wartość pola jest identyczna z wartością pola w protokole IPv4 Limit przeskoków (8 bitów) - określa ilość węzłów po odwiedzeniu których pakiet zostaje porzucony. W poprzedniej wersji protokołu pole te nosiło nazwę time to live i zawierało liczbę skoków, która była zmniejszana przez każdy odwiedzony węzeł Adres źródłowy (128 bitów) - adres węzła, który wysłał pakiet Adres docelowy (128 bitów)- adres węzła do którego adresowany jest pakiet |
||||||||
|
RIPv1: protokół bram wewnętrznych (IGP), oparty jest na zestawie algorytmów wektorowych, służących do obliczania najlepszej trasy do celu. Używany jest w Internecie w sieciach korzystających z protokołu IP (zarówno wersji 4 jak i 6). Dzisiejszy otwarty standard protokołu RIP jest opisany w dokumentach RFC 1058 i STD 56. Obecnie najczęściej wykorzystywana jest druga wersja protokołu RIP (RIPv2). Cechy protokołu RIP Jest to protokół trasowania działający na podstawie wektora odległości, Do utworzenia metryki stosuje się jedynie liczbę przeskoków (liczba kolejnych routerów na danej trasie), Jeżeli liczba przeskoków osiągnie 15, pakiety na następnym routerze zostaną odrzucone Aktualizacje trasowania są rozgłaszane tylko do ruterów sąsiednich, RIP wysyła informacje o trasach w stałych odstępach czasowych (domyślnie co 30 sekund) oraz po każdej zmianie topologii sieci, Pomimo wieku, oraz istnienia bardziej zaawansowanych protokołów wymiany informacji o trasach, RIP jest ciągle w użyciu. Jest szeroko używany, dobrze opisany i łatwy w konfiguracji i obsłudze, Wadami protokołu RIP są wolny czas konwergencji (inaczej długi czas osiągania zbieżności), niemożliwość skalowania powyżej 15 skoków a także wybór mało optymalnych ścieżek i brak mechanizmów równoważenia obciążenia przez nadmiarowe łącza, Uaktualnienia protokołu RIP przenoszone są przez UDP na porcie 520 (w wersji drugiej wykorzystywana jest technologia Multicast na adres 224.0.0.9), RIP w wersji pierwszej jest protokołem trasowania klasowego (ang. classful), w wersji drugiej - bezklasowego (ang. classless), Standardowy dystans administracyjny dla protokołu RIP wynosi 120.
|
|||
Bity |
0-7 |
8-15 |
16-31 |
0 |
Polecenie |
Numer Wersji |
Pole zerowe 1 |
32 |
Identyfikator rodziny adresów AFI |
Poze zerowe 2 |
|
64 |
Adres sieciowy |
||
96 |
Pole zerowe 3 |
||
128 |
Pole zerowe 4 |
||
160 |
Metryka |
||
Polecenie Opisuje, czy pakiet jest żądaniem uaktualnienia, czy odpowiedzią na żądanie. Numer wersji Opisuje numer wersji protokołu (1 lub 2). Pole zerowe (1) Musi być wyzerowane w RIPv1. W RIPv2 jest to numer domeny routingu. Identyfikator Rodziny Adresów Opisuje rodzinę adresów, do której należy adres w polu adresu sieciowego. Dla rodziny adresów IP wartość AFI równa jest liczbie 2. Pole zerowe (2) W RIPv1 musi być wyzerowane, w RIPv2 jest to znacznik trasy (ang. Route Tag) Adres sieciowy Ponieważ protokołu RIP używa się w sieciach IP, to adres ten jest adresem IP. W zależności, czy pakiet ten jest żądaniem czy odpowiedzią (określone jest to w polu "Polecenie"), zawiera odpowiednio adres nadawcy, lub adres z przesyłanej tabeli tras nadawcy. Pole zerowe (3) W RIPv1 musi być wyzerowane, w RIPv2 w tym miejscu ustawiona jest maska podsieci adresu z pola wcześniejszego. Pole zerowe (4) W RIPv1 musi być wyzerowane, w RIPv2 w tym miejscu ustawiony jest adres IP następnego rutera pośredniczącego w przekazywaniu pakietów dla danej trasy (ang. Next Hop) - tylko, gdy pakiet jest odpowiedzią (przesyła wpisy ze swojej tablicy trasowania). Metryka Wartość metryki dla danej trasy. Reprezentuje odległość (w sensie logicznym, nie fizycznym) do celu, jest sumą kosztów poszczególnych łącz pośredniczących (najczęściej równa się ilości przeskoków, gdyż łącza pośredniczące mają domyślny koszt równy 1). |
EIGRP zastrzeżony protokół trasowania Cisco Systems operujący na wektorze odległości. Jest przeznaczony do trasowania wewnątrz systemu autonomicznego (IGP). Do przeliczania tras używa maszyny DUAL FSM (Diffused Update Algorithm Finite State Machine). Używany w sieciach o wielkości nieprzekraczającej 50 routerów. Używa płaskiej struktury sieci z podziałem na systemy autonomiczne. Do transportu pakietów wykorzystuje protokół Reliable Transport Protocol. Używa złożonej metryki. Od protokołów typu link-state odróżnia go fragmentaryczna wiedza o strukturze sieci (jedynie połączenia do sąsiadów), a co za tym idzie nie wykorzystuje algorytmu Dijkstry Shortest Path First do przeliczania tras. Chętnie wykorzystywany ze względu na łatwą konfigurację, obsługę VLSM i krótki czas konwergencji. OSPF protokół trasowania typu stanu łącza (ang. Link State). Zdefiniowany został jako OSPF wersji 2 w RFC 2328 (1998) dla IPv4.[1], a aktualizacja dla IPv6 jako OSPF wersji 3 w RFC 5340 (2008).[2] Jest zalecanym protokołem wśród protokołów niezależnych (np. RIP, ang. Routing Information Protocol). W przeciwieństwie do protokołu RIP, OSPF charakteryzuje się dobrą skalowalnością, wyborem optymalnych ścieżek i brakiem ograniczenia skoków powyżej 15, przyspieszoną zbieżnością. Przeznaczony jest dla sieci posiadających do 500 routerów w wyznaczonym obszarze trasowania. Cechami protokołu OSPF są: trasowanie wielościeżkowe, trasowanie najmniejszym kosztem i równoważne obciążenia. OSPF jest protokołem wewnątrzdomenowym - IGP (ang. Interior Gateway Protocol). Routery korzystające z tego protokołu porozumiewają się ze sobą za pomocą pięciu komunikatów: Hello - nawiązywanie i utrzymywanie relacji sąsiedzkich, database descriptions - opis przechowywanych baz danych, requests link-state - żądanie informacji na temat stanów połączeń, updates link-state - aktualizacja stanów połączeń, acknowledgments links-state - potwierdzenia stanów połączeń. Protokół OSPF używa hierarchicznej struktury sieci z podziałem na obszary z centralnie umieszczonym obszarem zerowym (ang. area 0), który pośredniczy w wymianie tras między wszystkimi obszarami w domenie OSPF. OSPF jest protokołem typu link-state jedynie wewnątrz obszaru. Oznacza to, że w ramach pojedynczego obszaru wszystkie routery znają całą jego topologię i wymieniają się między sobą informacjami o stanie łączy, a każdy z nich przelicza trasy samodzielnie (algorytm Dijkstry). Między obszarami OSPF działa jak protokół typu distance-vector, co oznacza, że routery brzegowe obszarów wymieniają się między sobą gotowymi trasami. Istnienie obszaru zerowego umożliwia trasowanie pakietów pomiędzy obszarami bez powstawania pętli. OSPF, aby zmniejszyć ilość pakietów rozsyłanych w sieci, wybiera router desygnowany DR (ang. designated router) oraz zapasowy BDR (ang. backup designated router), które służą do wymiany informacji o stanie łączy z pozostałymi routerami OSPF. Komunikat hello służy tutaj do wyboru DR i BDR oraz do wykrywania nieaktywnych sąsiednich routerów OSPF. IS-IS protokół trasowania typu stanu łącza (link-state) oparty na otwartych standardach. IS-IS jest protokołem wewnętrznej bramy - IGP (ang. Interior Gateway Protocol), czyli używany jest wewnątrz systemu autonomicznego. Opisany jest w dokumencie RFC 1142. Używa algorytmu Dijkstry, by znaleźć najlepszą ścieżkę w sieci. |