Sieci bezprzewodowe WLAN
Część 4: Warstwa 3 OSI w sieciach WLAN
1/58
Witajcie na czwartym wykładzie!

Wprowadzenie do warstwy sieciowej

  • Witam Państwa ponownie.
  • Po zgłębieniu warstwy fizycznej i łącza danych, które pozwoliły nam zbudować solidną, lokalną sieć bezprzewodową, nadszedł czas, aby wyjść poza jej granice.
  • Dzisiaj zajmiemy się warstwą 3, czyli warstwą sieciową.
  • To właśnie ta warstwa jest odpowiedzialna za to, co czyni Internet globalną siecią – za logiczne adresowanie i znajdowanie najlepszej drogi do odległych celów.
  • Zobaczymy, jak nasze urządzenia Wi-Fi uzyskują unikalne adresy IP, jak komunikują się ze światem poza naszą siecią lokalną i jaka jest w tym wszystkim rola routera, czyli kluczowego urządzenia warstwy 3.
Ilustracja dla slajdu 1
2/58
Zadania warstwy sieciowej

Wyznaczanie trasy przez Internet

  • Głównym zadaniem warstwy sieciowej jest zapewnienie komunikacji między hostami znajdującymi się w różnych sieciach.
  • Podczas gdy warstwa 2 zajmowała się dostarczaniem ramek w obrębie jednej sieci lokalnej (np. między laptopem a punktem dostępowym / routerem), warstwa 3 odpowiada za przesłanie danych z naszej sieci domowej do serwera znajdującego się na drugim końcu świata.
  • Aby to osiągnąć, warstwa sieciowa realizuje dwa kluczowe zadania: adresowanie logiczne (przypisywanie urządzeniom unikalnych adresów IP) oraz routing (wyznaczanie najlepszej ścieżki dla pakietów przez labirynt połączonych ze sobą sieci).
Ilustracja dla slajdu 2
3/58
Adres MAC vs. Adres IP

Tożsamość vs. Lokalizacja

  • Aby zrozumieć warstwę 3, musimy jasno rozróżnić adres MAC (warstwa 2) od adresu IP (warstwa 3).
  • Adres MAC jest jak numer seryjny urządzenia lub numer PESEL – jest unikalny, przypisany na stałe i nie zmienia się.
  • Identyfikuje on konkretną kartę sieciową.
  • Adres IP jest jak adres zamieszkania – jest logiczny, tymczasowy i zmienia się w zależności od tego, do jakiej sieci jesteśmy podłączeni.
  • Kiedy jesteśmy w domu, nasz laptop ma jeden adres IP; kiedy podłączymy się do Wi-Fi w kawiarni, otrzyma zupełnie inny.
  • Routery używają adresów IP do globalnej nawigacji, a gdy pakiet dotrze do docelowej sieci lokalnej, używany jest adres MAC do dostarczenia go do konkretnego urządzenia.
Ilustracja dla slajdu 3
4/58
Protokół IP: Język Internetu

Fundament komunikacji sieciowej

  • Koniem pociągowym warstwy sieciowej jest Protokół Internetowy (Internet Protocol - IP).
  • Jest to zbiór reguł, które definiują format pakietów oraz system adresowania, umożliwiając komunikację w Internecie.
  • Protokół IP jest protokołem bezpołączeniowym, co oznacza, że nie ustanawia on stałego połączenia między nadawcą a odbiorcą przed wysłaniem danych.
  • Każdy pakiet jest traktowany jako niezależna jednostka i wysyłany w sieć "w ciemno".
  • IP jest również protokołem zawodnym (unreliable) – nie gwarantuje on, że pakiety dotrą do celu, ani że dotrą w odpowiedniej kolejności.
  • Za zapewnienie niezawodności i uporządkowanie danych odpowiada dopiero warstwa transportowa (TCP), o której będziemy mówić na kolejnym wykładzie.
Ilustracja dla slajdu 4
5/58
Pakiet IP: Struktura

"Koperta" warstwy 3

  • Jednostką danych w warstwie sieciowej jest pakiet.
  • Każdy pakiet IP składa się z dwóch części: nagłówka i danych (ładunku).
  • Nagłówek IP zawiera wszystkie informacje niezbędne do jego przesłania przez sieć.
  • Najważniejsze z nich to oczywiście 32-bitowy źródłowy adres IP oraz 32-bitowy docelowy adres IP.
  • Oprócz tego w nagłówku znajdziemy takie informacje jak wersja protokołu (np. 4 dla IPv4), czas życia pakietu (TTL), informacje potrzebne do fragmentacji oraz sumę kontrolną samego nagłówka.
  • Ładunek pakietu to dane z wyższej warstwy, czyli najczęściej cały segment TCP lub datagram UDP.
Ilustracja dla slajdu 5
6/58
Adresacja IPv4

Świat 32-bitowych adresów

  • Najpopularniejsza wersja protokołu IP, wciąż dominująca w Internecie, to IPv4.
  • Adres IPv4 to 32-bitowa liczba.
  • Aby ułatwić ludziom jej odczytywanie, zapisujemy ją w postaci czterech 8-bitowych liczb (oktetów) oddzielonych kropkami, gdzie każda liczba jest w systemie dziesiętnym (np. `192.168.1.10`).
  • Każdy z czterech oktetów może przyjąć wartość od 0 do 255.
  • Teoretyczna liczba wszystkich możliwych adresów IPv4 to 2^32, czyli około 4.3 miliarda.
  • W czasach tworzenia Internetu wydawało się to astronomiczną liczbą.
  • Dziś wiemy, że pula ta jest na wyczerpaniu, co doprowadziło do stworzenia następcy – protokołu IPv6.
Ilustracja dla slajdu 6
7/58
Część sieciowa i hostowa adresu

Identyfikator ulicy i numer domu

  • Każdy adres IP składa się z dwóch części.
  • Część sieciowa (Network ID) identyfikuje sieć, w której znajduje się urządzenie – jest jak nazwa ulicy.
  • Wszystkie urządzenia w tej samej sieci lokalnej muszą mieć tę samą część sieciową adresu IP.
  • Część hosta (Host ID) identyfikuje unikalne urządzenie w tej sieci – jest jak numer domu na danej ulicy.
  • Żadne dwa urządzenia w tej samej sieci nie mogą mieć tej samej części hosta.
  • To, gdzie przebiega granica między częścią sieciową a hostową, jest określane przez maskę podsieci.
Ilustracja dla slajdu 7
8/58
Maska podsieci

Wyznaczanie granic sieci

  • Maska podsieci to 32-bitowa liczba, która służy komputerom i routerom do określenia, która część adresu IP jest częścią sieciową, a która hostową.
  • Maska w zapisie binarnym składa się z ciągu jedynek, po którym następuje ciąg zer.
  • Jedynki w masce odpowiadają bitom części sieciowej adresu IP, a zera – bitom części hostowej.
  • Najczęściej spotykaną maską w sieciach domowych jest `255.255.255.0`.
  • Oznacza to, że pierwsze trzy oktety adresu IP (24 bity) identyfikują sieć, a ostatni oktet (8 bitów) jest dostępny do adresowania hostów.
Ilustracja dla slajdu 8
9/58
Notacja CIDR

Skrócony zapis maski

  • Zapisywanie pełnej maski w formacie dziesiętnym jest niewygodne.
  • Dlatego powszechnie stosuje się notację CIDR (Classless Inter-Domain Routing).
  • Polega ona na dodaniu na końcu adresu IP ukośnika, po którym następuje liczba jedynek w masce podsieci.
  • Jest to prosty i zwięzły sposób na określenie, ile bitów adresu IP stanowi część sieciową.
  • Na przykład, adres `192.168.1.10` z maską `255.255.255.0` zapiszemy w notacji CIDR jako `192.168.1.10/24`, ponieważ maska ta ma 24 jedynki w zapisie binarnym (8+8+8=24).
  • Podobnie, adres `10.0.0.5` z maską `255.0.0.0` to `10.0.0.5/8`.
Ilustracja dla slajdu 9
10/58
Adresy prywatne i publiczne

Adresy do użytku wewnętrznego i zewnętrznego

  • Z powodu ograniczonej liczby adresów IPv4, organizacja IANA (Internet Assigned Numbers Authority) zarezerwowała pewne zakresy adresów do użytku w sieciach prywatnych.
  • Adresy te, zwane adresami prywatnymi, nie są unikalne globalnie i mogą być używane przez każdego w jego sieci lokalnej.
  • Nie są one jednak routowalne w publicznym internecie.
  • Aby urządzenie z adresem prywatnym mogło komunikować się z internetem, musi skorzystać z "usług" routera, który posiada adres publiczny – unikalny w skali globalnej i przydzielony przez dostawcę internetu (ISP).
  • Mechanizm, który na to pozwala, nazywa się NAT.
Ilustracja dla slajdu 10
11/58
NAT (Network Address Translation)

Tłumacz adresów, brama do Internetu

  • NAT (Network Address Translation) to mechanizm działający na routerze, który pozwala wielu urządzeniom w sieci lokalnej (z adresami prywatnymi) na współdzielenie jednego publicznego adresu IP.
  • Kiedy laptop z adresem `192.168.1.10` wysyła pakiet do serwera Google, router "łapie" ten pakiet.
  • W nagłówku IP zamienia on źródłowy adres prywatny `192.168.1.10` na swój własny adres publiczny (np. `83.10.20.30`) i zapisuje tę "transakcję" w swojej tablicy.
  • Gdy odpowiedź wraca z serwera Google na adres publiczny routera, ten sprawdza swoją tablicę, widzi, że odpowiedź dotyczy laptopa, ponownie zamienia adres docelowy na `192.168.1.10` i przesyła pakiet do sieci lokalnej.
Ilustracja dla slajdu 11
12/58
Jak urządzenie Wi-Fi uzyskuje adres IP?

Rola serwera DHCP

  • Ręczne konfigurowanie adresów IP na każdym urządzeniu byłoby koszmarem.
  • Dlatego w sieciach Wi-Fi (i nie tylko) używamy protokołu DHCP (Dynamic Host Configuration Protocol).
  • W typowej sieci domowej, serwer DHCP jest uruchomiony na naszym routerze Wi-Fi.
  • Kiedy nowe urządzenie (np. smartfon) łączy się z siecią, na poziomie warstwy 2 przechodzi proces asocjacji.
  • Zaraz po tym wysyła w sieć lokalną rozgłoszeniową (broadcast) wiadomość DHCP Discover z pytaniem: "Czy jest tu jakiś serwer DHCP, który może przydzielić mi adres IP?".
Ilustracja dla slajdu 12
13/58
Proces DHCP: Oferta (Offer)

"Mam dla Ciebie ten adres"

  • Serwer DHCP na routerze, po otrzymaniu wiadomości DHCP Discover, sprawdza swoją pulę wolnych adresów IP i przygotowuje ofertę dla klienta.
  • Następnie wysyła do niego (używając jego adresu MAC) wiadomość DHCP Offer.
  • Wiadomość ta zawiera proponowany adres IP dla klienta, a także inne kluczowe informacje konfiguracyjne: maskę podsieci, adres IP bramy domyślnej (czyli samego routera) oraz adresy serwerów DNS.
  • Oferta ta ma również określony "czas dzierżawy" (lease time), czyli informację, jak długo klient może używać tego adresu, zanim będzie musiał go odnowić.
Ilustracja dla slajdu 13
14/58
Proces DHCP: Żądanie i potwierdzenie

"Biorę!" - "Zatwierdzone."

  • Klient, po otrzymaniu oferty (lub kilku ofert, jeśli w sieci jest więcej niż jeden serwer DHCP), wybiera jedną z nich i wysyła wiadomość rozgłoszeniową DHCP Request.
  • Informuje w niej: "Akceptuję ofertę adresu 192.168.1.101 od serwera X".
  • Wiadomość jest wysyłana jako broadcast, aby inne serwery DHCP, które również mogły złożyć ofertę, wiedziały, że ich propozycja została odrzucona i mogą przydzielić oferowany adres komuś innemu.
  • Na koniec, serwer DHCP, którego oferta została wybrana, odsyła do klienta wiadomość DHCP ACK (Acknowledgement), która jest ostatecznym potwierdzeniem: "OK, adres 192.168.1.101 jest oficjalnie Twój".
  • Od tego momentu klient ma pełną konfigurację warstwy 3 i może komunikować się w sieci.
Ilustracja dla slajdu 14
15/58
Brama domyślna (Default Gateway)

Drzwi do świata zewnętrznego

  • Kiedy urządzenie chce wysłać pakiet IP, musi podjąć decyzję: czy odbiorca jest w mojej sieci lokalnej, czy na zewnątrz?
  • Sprawdza to, porównując adres IP odbiorcy ze swoim własnym adresem i maską podsieci.
  • Jeśli okaże się, że odbiorca jest w tej samej sieci (ma to samo ID sieci), pakiet jest wysyłany bezpośrednio do niego (przy użyciu warstwy 2).
  • Jeśli jednak odbiorca jest w sieci zewnętrznej (np. w internecie), urządzenie nie wie, jak do niego dotrzeć.
  • Wtedy wysyła pakiet na adres skonfigurowany jako brama domyślna (default gateway).
  • W sieciach domowych i biurowych, adresem bramy domyślnej jest zawsze adres IP naszego routera.
  • To on jest "drzwiami", przez które musi przejść cały ruch wychodzący z naszej sieci.
Ilustracja dla slajdu 15
16/58
Rola routera w sieci WLAN

Centrum dowodzenia siecią

  • W typowej domowej sieci Wi-Fi, urządzenie, które nazywamy "routerem", jest w rzeczywistości urządzeniem wielofunkcyjnym, łączącym w sobie rolę trzech różnych urządzeń.
  • Po pierwsze, jest to punkt dostępowy (Access Point), który zarządza warstwą 1 i 2, czyli komunikacją radiową z klientami.
  • Po drugie, jest to przełącznik (Switch), posiadający kilka portów Ethernet do podłączenia urządzeń przewodowych.
  • Po trzecie, i najważniejsze, jest to router, czyli urządzenie warstwy 3.
  • To właśnie ta funkcja odpowiada za przydzielanie adresów IP (serwer DHCP), translację adresów (NAT) i, co kluczowe, za przekazywanie pakietów między naszą siecią lokalną a siecią dostawcy internetu (WAN).
Ilustracja dla slajdu 16
17/58
Tablica rutingu

Mapa drogowa routera

  • Każdy router (oraz każdy komputer) posiada tablicę rutingu (routing table).
  • Jest to prosta tabela, która działa jak mapa drogowa dla pakietów IP.
  • Zawiera ona wpisy, które mówią: "Aby dotrzeć do sieci X, wyślij pakiet przez interfejs Y na adres następnego routera Z".
  • W najprostszej formie, na komputerze klienckim, tablica ta ma dwa wpisy.
  • Pierwszy mówi: "Sieć lokalna (np. 192.168.1.0/24) jest bezpośrednio podłączona".
  • Drugi, najważniejszy, to tzw. trasa domyślna (default route), która mówi: "Aby dotrzeć do WSZYSTKICH innych sieci (oznaczonych jako 0.0.0.0/0), wyślij pakiet do bramy domyślnej (czyli naszego routera)".
Ilustracja dla slajdu 17
18/58
Protokół ARP

Łącznik między warstwą 3 a 2

  • Wiemy już, że routery używają adresów IP do znajdowania drogi, ale w sieci lokalnej ramki są adresowane za pomocą adresów MAC.
  • Jak więc komputer, znając adres IP innego urządzenia w tej samej sieci, dowiaduje się, jaki jest jego adres MAC?
  • Służy do tego protokół ARP (Address Resolution Protocol).
  • Komputer A, chcąc wysłać pakiet do komputera B (o znanym IP), wysyła rozgłoszeniową (broadcast) ramkę z zapytaniem ARP: "Kto ma adres IP 192.168.1.20? Proszę, podaj mi swój adres MAC".
  • Wszystkie urządzenia w sieci odbiorą to zapytanie, ale tylko komputer B na nie odpowie, wysyłając (tym razem unicastem) odpowiedź ARP: "Ja mam ten IP, a mój MAC to...".
  • Komputer A zapisuje tę informację w swojej pamięci podręcznej (ARP cache) i może już zaadresować ramkę.
Ilustracja dla slajdu 18
19/58
DNS (Domain Name System)

Książka telefoniczna Internetu

  • Ludzie nie posługują się adresami IP; używamy łatwych do zapamiętania nazw, takich jak `www.google.com`.
  • Jak więc komputer dowiaduje się, jaki adres IP kryje się za tą nazwą?
  • Tutaj do gry wkracza DNS (Domain Name System), który działa jak globalna książka telefoniczna.
  • Kiedy wpisujemy w przeglądarce adres strony, nasz komputer wysyła zapytanie do serwera DNS (którego adres otrzymał z DHCP): "Jaki jest adres IP dla `www.google.com`?".
  • Serwer DNS odpytuje inne serwery w globalnej hierarchii DNS i w końcu odsyła odpowiedź, np. "Adres IP dla `www.google.com` to `142.250.203.196`".
  • Dopiero mając ten adres IP, nasz komputer może utworzyć pakiet i wysłać go w świat.
Ilustracja dla slajdu 19
20/58
Protokół ICMP

Posłaniec sieciowy

  • ICMP (Internet Control Message Protocol) to protokół pomocniczy w warstwie 3, który służy do przesyłania wiadomości kontrolnych i informacji o błędach.
  • Nie służy on do transportu danych użytkownika, ale jest niezbędny do diagnostyki sieci.
  • Najbardziej znanym zastosowaniem ICMP jest polecenie ping.
  • Kiedy "pingujemy" jakiś adres IP, nasz komputer wysyła do niego specjalny pakiet "ICMP Echo Request".
  • Jeśli docelowy host jest osiągalny i nie blokuje ICMP, odpowiada pakietem "ICMP Echo Reply".
  • Pozwala to na sprawdzenie, czy istnieje łączność z danym hostem i zmierzenie czasu odpowiedzi (opóźnienia).
Ilustracja dla slajdu 20
21/58
Inne komunikaty ICMP

Co może pójść nie tak?

  • Oprócz zapytań i odpowiedzi echo, ICMP definiuje wiele innych komunikatów, które informują nadawcę o problemach napotkanych na trasie pakietu.
  • Na przykład, jeśli router otrzyma pakiet, ale nie ma w swojej tablicy rutingu trasy do celu, odsyła do nadawcy komunikat "Destination Unreachable".
  • Jeśli czas życia pakietu (TTL) spadnie do zera, router, który go odrzuci, wysyła komunikat "Time Exceeded".
  • To właśnie ten mechanizm jest wykorzystywany przez narzędzie traceroute (tracert) do mapowania całej ścieżki, jaką pakiety pokonują w drodze do celu.
  • Inne komunikaty mogą informować o potrzebie fragmentacji czy prosić o spowolnienie transmisji.
Ilustracja dla slajdu 21
22/58
TTL (Time to Live)

Zabezpieczenie przed wiecznymi pętlami

  • W nagłówku każdego pakietu IP znajduje się 8-bitowe pole TTL (Time to Live).
  • Działa ono jak licznik "przeskoków".
  • Nadawca ustawia początkową wartość TTL (np. 64 lub 128).
  • Każdy router na trasie pakietu, zanim przekaże go dalej, zmniejsza wartość TTL o jeden.
  • Jeśli router otrzyma pakiet z TTL równym 1, zmniejsza go do 0, odrzuca pakiet i wysyła do nadawcy komunikat ICMP "Time Exceeded".
  • Mechanizm ten jest niezwykle ważny, ponieważ zapobiega sytuacji, w której pakiety, z powodu błędu w konfiguracji rutingów, krążyłyby w nieskończoność w pętlach sieciowych, zapychając łącza.
Ilustracja dla slajdu 22
23/58
Fragmentacja pakietów

Dzielenie zbyt dużych pakietów

  • Różne technologie sieciowe (warstwy 2) mają różne maksymalne rozmiary ramek (MTU).
  • Co się stanie, jeśli router musi przesłać duży pakiet (np. 1500 bajtów) z sieci Ethernet do sieci, której MTU wynosi tylko 576 bajtów?
  • Router musi dokonać fragmentacji.
  • Dzieli on oryginalny pakiet na mniejsze fragmenty, z których każdy staje się nowym, samodzielnym pakietem IP.
  • Wszystkie fragmenty dziedziczą większość oryginalnego nagłówka, ale mają specjalne flagi i pola "przesunięcia" (fragment offset), które informują odbiorcę, jak złożyć je z powrotem w całość.
  • Fragmentacja jest procesem niepożądanym, ponieważ obciąża routery i zwiększa ryzyko utraty danych (zgubienie jednego fragmentu unieważnia cały pakiet), dlatego stara się jej unikać.
Ilustracja dla slajdu 23
24/58
Wyczerpanie adresów IPv4

Koniec pewnej epoki

  • Jak wspomnieliśmy, pula około 4.3 miliarda adresów IPv4 okazała się niewystarczająca dla rosnącej liczby urządzeń podłączanych do Internetu – smartfonów, laptopów, serwerów, a teraz także miliardów urządzeń IoT.
  • Ostatnie wolne bloki adresów IPv4 zostały rozdysponowane przez regionalnych rejestratorów internetowych w latach 2011-2019.
  • Oznacza to, że nie ma już nowych, wolnych adresów do przydzielenia.
  • Obecnie adresy IPv4 są "odziedziczane", odsprzedawane lub współdzielone na jeszcze większą skalę (np. przez Carrier-Grade NAT).
  • Problem ten był przewidziany już dawno, co doprowadziło do opracowania nowej generacji protokołu IP.
Ilustracja dla slajdu 24
25/58
IPv6: Nowa generacja adresacji

Ocean adresów

  • IPv6 to następca protokołu IPv4, zaprojektowany w celu rozwiązania problemu wyczerpania adresów.
  • Adres IPv6 ma długość 128 bitów, w przeciwieństwie do 32 bitów w IPv4.
  • Daje to 2^128 możliwych adresów – jest to liczba tak niewyobrażalnie wielka (około 340 sekstylionów), że wystarczyłaby do przydzielenia bilionów adresów każdemu atomowi na powierzchni Ziemi.
  • Adresy IPv6 zapisuje się jako osiem 16-bitowych bloków w systemie szesnastkowym, oddzielonych dwukropkami, np. `2001:0db8:85a3:0000:0000:8a2e:0370:7334`.
  • Oprócz ogromnej przestrzeni adresowej, IPv6 wprowadza też inne ulepszenia, takie jak uproszczony nagłówek i wbudowane mechanizmy bezpieczeństwa (IPsec).
Ilustracja dla slajdu 25
26/58
IPv6 w sieciach WLAN

Jak klient Wi-Fi uzyskuje adres IPv6?

  • W świecie IPv6 nie ma już potrzeby stosowania NAT, ponieważ każde urządzenie może otrzymać swój własny, unikalny globalnie adres publiczny.
  • Konfiguracja adresu IPv6 na kliencie Wi-Fi jest znacznie bardziej zautomatyzowana.
  • Najczęściej wykorzystywany jest mechanizm SLAAC (Stateless Address Autoconfiguration).
  • Router rozgłasza w sieci lokalnej ramki "Router Advertisement", które zawierają prefiks sieciowy (odpowiednik części sieciowej w IPv4).
  • Klient, po otrzymaniu takiego prefiksu, sam generuje resztę swojego adresu (część hostową), najczęściej bazując na swoim adresie MAC.
  • W ten sposób urządzenie samo tworzy sobie globalnie unikalny adres IP, bez potrzeby pytania serwera DHCP.
Ilustracja dla slajdu 26
27/58
Dual Stack: Współistnienie IPv4 i IPv6

Życie w dwóch światach

  • Przejście całego Internetu z IPv4 na IPv6 jest procesem powolnym i długotrwałym.
  • Obecnie żyjemy w okresie przejściowym, w którym oba protokoły muszą współistnieć.
  • Najpopularniejszym mechanizmem, który to umożliwia, jest Dual Stack.
  • Polega on na tym, że urządzenia (zarówno klienci, jak i serwery) oraz routery mają jednocześnie skonfigurowane adresy z obu pul – posiadają zarówno adres IPv4, jak i IPv6.
  • Kiedy przeglądarka chce połączyć się z serwerem, najpierw próbuje uzyskać jego adres IPv6.
  • Jeśli się uda, komunikacja odbywa się natywnie przez IPv6.
  • Jeśli nie, przeglądarka prosi o adres IPv4 i komunikacja odbywa się "po staremu".
  • Dzięki temu zachowana jest pełna kompatybilność.
Ilustracja dla slajdu 27
28/58
Tunele: Kapsułkowanie protokołów

Przenoszenie IPv6 przez sieć IPv4

  • Innym mechanizmem przejściowym jest tunelowanie.
  • Stosuje się je w sytuacji, gdy dwie sieci obsługujące IPv6 są oddzielone od siebie siecią, która obsługuje tylko IPv4 (np. sieć starszego dostawcy internetu).
  • W takiej sytuacji router na granicy pierwszej sieci "pakuje" cały pakiet IPv6 do środka pakietu IPv4, tak jakby był on zwykłymi danymi.
  • Ten "opakowany" pakiet jest przesyłany przez sieć IPv4 do routera na granicy drugiej sieci.
  • Ten z kolei "rozpakowuje" oryginalny pakiet IPv6 i wysyła go dalej.
  • Z perspektywy obu sieci IPv6, są one ze sobą połączone bezpośrednio, a sieć IPv4 jest dla nich przezroczystym "tunelem".
Ilustracja dla slajdu 28
29/58
Firewall i listy kontroli dostępu (ACL)

Filtrowanie ruchu w warstwie 3

  • Jedną z najważniejszych funkcji bezpieczeństwa realizowanych w warstwie sieciowej jest filtrowanie pakietów.
  • Firewall (zapora sieciowa) to urządzenie lub oprogramowanie, które analizuje nagłówki pakietów IP i na podstawie zdefiniowanych reguł decyduje, czy dany pakiet może przejść, czy ma zostać odrzucony.
  • Reguły te, zwane listami kontroli dostępu (ACL - Access Control Lists), mogą filtrować ruch na podstawie różnych kryteriów, takich jak źródłowy adres IP, docelowy adres IP, a także informacji z warstwy 4, jak numer portu TCP/UDP.
  • W typowym routerze domowym firewall jest skonfigurowany tak, aby blokować cały ruch przychodzący z internetu, który nie jest odpowiedzią na wcześniejsze zapytanie z naszej sieci.
Ilustracja dla slajdu 29
30/58
Sieci gościnne i izolacja klientów

Oddzielanie zaufanych od niezaufanych

  • Wiele routerów Wi-Fi oferuje funkcję sieci gościnnej (Guest Network).
  • Z perspektywy warstwy 2 jest to po prostu osobne, wirtualne SSID, często przypisane do osobnego VLAN-u.
  • Jednak prawdziwa magia dzieje się w warstwie 3.
  • Router jest skonfigurowany tak, aby ruch z sieci gościnnej był całkowicie odizolowany od głównej sieci domowej.
  • Urządzenia w sieci gościnnej mogą uzyskać dostęp do internetu (ich ruch jest normalnie NAT-owany), ale firewall na routerze blokuje wszelkie próby komunikacji z urządzeniami w głównej sieci LAN.
  • Często włączana jest również izolacja klientów (Client Isolation), która uniemożliwia komunikację nawet między urządzeniami podłączonymi do tej samej sieci gościnnej, co dodatkowo zwiększa bezpieczeństwo.
Ilustracja dla slajdu 30
31/58
Routing statyczny vs. dynamiczny

Ręczne mapy czy GPS?

  • Skąd router wie, którędy wysłać pakiet?
  • Istnieją dwie metody budowania tablicy rutingu.
  • Routing statyczny polega na ręcznym wpisaniu wszystkich tras przez administratora.
  • Jest to rozwiązanie proste i bezpieczne, ale nieelastyczne – nie adaptuje się do zmian w topologii sieci.
  • Sprawdza się w małych, niezmiennych sieciach.
  • Routing dynamiczny polega na tym, że routery "rozmawiają" ze sobą, używając specjalnych protokołów (np. OSPF, EIGRP, BGP), i wymieniają się informacjami o znanych im sieciach.
  • Na tej podstawie same budują swoje tablice rutingu i potrafią dynamicznie znaleźć nową drogę, jeśli dotychczasowa ulegnie awarii.
  • To właśnie protokoły rutingu dynamicznego sprawiają, że globalny Internet jest w stanie funkcjonować.
Ilustracja dla slajdu 31
32/58
Protokoły bramy wewnętrznej i zewnętrznej

Routing wewnątrz firmy i między dostawcami

  • Protokoły rutingu dynamicznego dzielimy na dwie kategorie.
  • Protokoły bramy wewnętrznej (IGP - Interior Gateway Protocol), takie jak OSPF czy EIGRP, są używane do wymiany informacji o trasach wewnątrz jednej, dużej organizacji (zwanej Systemem Autonomicznym - AS), np. w sieci korporacyjnej czy uniwersyteckiej.
  • Ich celem jest znalezienie najszybszej ścieżki.
  • Natomiast protokół BGP (Border Gateway Protocol) jest jedynym używanym protokołem bramy zewnętrznej (EGP - Exterior Gateway Protocol).
  • Służy on do wymiany informacji o trasach między różnymi systemami autonomicznymi, czyli między dostawcami internetu, wielkimi korporacjami i uniwersytetami.
  • BGP jest "klejem", który spaja cały globalny Internet w jedną całość.
Ilustracja dla slajdu 32
33/58
Unicast, Multicast, Broadcast

Typy transmisji w warstwie 3

  • W warstwie sieciowej wyróżniamy trzy podstawowe typy transmisji, definiowane przez adres docelowy.
  • Unicast to komunikacja jeden-do-jednego, od jednego nadawcy do jednego, konkretnego odbiorcy.
  • Jest to najczęstszy typ ruchu.
  • Broadcast to komunikacja jeden-do-wszystkich, od jednego nadawcy do wszystkich hostów w danej podsieci.
  • Przykładem jest zapytanie DHCP Discover.
  • Multicast to komunikacja jeden-do-wielu, od jednego nadawcy do zdefiniowanej grupy odbiorców, którzy "zapisali się" na odbiór danego strumienia.
  • Multicast jest używany np. w telewizji internetowej (IPTV) czy wideokonferencjach, aby efektywnie wysyłać ten sam strumień do wielu odbiorców bez potrzeby tworzenia oddzielnych połączeń unicast.
Ilustracja dla slajdu 33
34/58
Multicast w sieciach Wi-Fi

Wyzwanie dla medium bezprzewodowego

  • Obsługa ruchu multicast w sieciach Wi-Fi jest problematyczna.
  • Ponieważ ramka multicast jest adresowana do grupy, a nie do jednego odbiorcy, jej dostarczenie nie jest potwierdzane ramką ACK.
  • W zawodnym medium radiowym oznacza to, że nie ma gwarancji, iż wszyscy członkowie grupy ją otrzymają.
  • Aby zwiększyć prawdopodobieństwo sukcesu, punkty dostępowe wysyłają ramki multicast z bardzo niską, podstawową prędkością (np. 6 Mb/s), która jest najbardziej niezawodna.
  • Ma to jednak katastrofalny skutek uboczny: jedna transmisja multicast o wysokiej przepływności (np. streaming wideo HD) może całkowicie "zapchać" całe pasmo radiowe, ponieważ jest wysyłana bardzo wolno, blokując czas antenowy dla wszystkich innych.
Ilustracja dla slajdu 34
35/58
Adresy specjalne: Loopback

Rozmowa z samym sobą

  • W puli adresów IPv4 zarezerwowano całą sieć `127.0.0.0/8` do celów specjalnych.
  • Adres z tej puli, najczęściej `127.0.0.1`, jest znany jako adres pętli zwrotnej (loopback).
  • Każdy komputer odnosi się do tego adresu, aby komunikować się "sam ze sobą" poprzez stos sieciowy.
  • Kiedy wysyłamy pakiet na adres `127.0.0.1`, nigdy nie opuszcza on naszego komputera i nie jest wysyłany do sieci.
  • Zamiast tego, jest on "zawracany" na wyższych warstwach stosu.
  • Jest to niezwykle użyteczne do testowania, czy oprogramowanie sieciowe na naszym komputerze działa poprawnie, bez angażowania fizycznej karty sieciowej.
  • Polecenie `ping 127.0.0.1` jest podstawowym testem diagnostycznym poprawności działania stosu TCP/IP.
Ilustracja dla slajdu 35
36/58
Adresy specjalne: APIPA/Link-Local

Co się dzieje, gdy DHCP zawiedzie?

  • Co się stanie, jeśli klient Wi-Fi połączy się z siecią, ale nie będzie w stanie znaleźć serwera DHCP, aby uzyskać adres IP?
  • W takiej sytuacji, zamiast pozostać bez adresu, systemy operacyjne (począwszy od Windows 98) implementują mechanizm APIPA (Automatic Private IP Addressing).
  • Urządzenie samo przydziela sobie losowy adres IP z zarezerwowanego zakresu `169.254.0.0/16`.
  • Przed przydzieleniem adresu, wysyła zapytanie ARP, aby upewnić się, że nikt inny w sieci go nie używa.
  • Adresy te, zwane też adresami link-local, pozwalają na komunikację tylko w obrębie lokalnego segmentu sieci.
  • Urządzenia z adresami APIPA nie mogą komunikować się z internetem.
  • Widząc taki adres na swoim komputerze, możemy być pewni, że wystąpił problem z DHCP.
Ilustracja dla slajdu 36
37/58
Podsieci (Subnetting)

Dzielenie dużej sieci na mniejsze

  • Subnetting to proces logicznego podziału jednej dużej sieci IP na wiele mniejszych podsieci.
  • Robi się to z kilku powodów: dla lepszej organizacji, zwiększenia bezpieczeństwa (można filtrować ruch między podsieciami) oraz dla poprawy wydajności (zmniejszenie ruchu rozgłoszeniowego).
  • Technicznie, subnetting polega na "pożyczeniu" bitów z części hostowej adresu IP i przeznaczeniu ich na identyfikację podsieci.
  • Osiągamy to poprzez "wydłużenie" maski podsieci.
  • Na przykład, sieć `192.168.1.0/24` możemy podzielić na dwie mniejsze podsieci, używając maski /25: `192.168.1.0/25` i `192.168.1.128/25`.
Ilustracja dla slajdu 37
38/58
VLSM (Variable Length Subnet Mask)

Podsieci o różnych rozmiarach

  • VLSM (Variable Length Subnet Mask) to technika, która pozwala na dzielenie przestrzeni adresowej na podsieci o różnych rozmiarach, w zależności od potrzeb.
  • Zamiast dzielić sieć na wiele równych części, możemy wydzielić małą podsieć dla połączenia punkt-punkt między routerami (która potrzebuje tylko 2 adresów), średnią dla działu księgowości (30 adresów) i dużą dla sieci Wi-Fi dla gości (200 adresów).
  • Pozwala to na znacznie bardziej efektywne wykorzystanie dostępnej puli adresów IP i uniknięcie marnotrawstwa.
  • VLSM jest podstawą projektowania nowoczesnych, skalowalnych sieci IP.
Ilustracja dla slajdu 38
39/58
Adres sieci i adres rozgłoszeniowy

Dwa zarezerwowane adresy

  • W każdej podsieci IP, dwa adresy są zarezerwowane i nie mogą być przydzielone hostom.
  • Pierwszy adres w podsieci, ten z samymi zerami w części hostowej, to adres sieci (Network Address).
  • Służy on do identyfikacji całej podsieci (np. w tablicach rutingu).
  • Ostatni adres, ten z samymi jedynkami w części hostowej, to adres rozgłoszeniowy (Broadcast Address).
  • Pakiety wysłane na ten adres są dostarczane do wszystkich hostów w danej podsieci.
  • Dlatego, obliczając liczbę dostępnych adresów dla hostów, zawsze musimy odjąć te dwa.
  • W sieci /24 (2^8 = 256 adresów) mamy dostępne 254 adresy dla hostów.
Ilustracja dla slajdu 39
40/58
Routing między VLAN-ami

Jak rozmawiają ze sobą różne VLAN-y?

  • VLAN-y, jak pamiętamy, tworzą logicznie odizolowane domeny rozgłoszeniowe w warstwie 2.
  • Domyślnie, urządzenia w różnych VLAN-ach nie mogą się ze sobą komunikować.
  • Aby umożliwić taką komunikację, potrzebujemy urządzenia warstwy 3 – routera.
  • Proces ten nazywamy routingiem między VLAN-ami (inter-VLAN routing).
  • Najczęściej realizuje się go za pomocą konfiguracji zwanej "router-on-a-stick".
  • Tworzymy na routerze wirtualne subinterfejsy, po jednym dla każdego VLAN-u, a następnie fizycznie łączymy router z przełącznikiem za pomocą jednego portu skonfigurowanego jako trunk.
  • Router staje się wtedy bramą domyślą dla każdej podsieci (VLAN) i może przekazywać pakiety między nimi, o ile pozwalają na to listy kontroli dostępu (ACL).
Ilustracja dla slajdu 40
41/58
Mobilność IP a roaming Wi-Fi

Zmiana sieci w L2 vs. zmiana sieci w L3

  • Warto odróżnić roaming w warstwie 2 od mobilności w warstwie 3.
  • Roaming Wi-Fi (L2), o którym mówiliśmy, ma miejsce, gdy klient przełącza się między AP w ramach tej samej podsieci IP (ESS).
  • Z perspektywy warstwy 3 nic się nie zmienia – klient zachowuje ten sam adres IP.
  • Mobilność IP (L3) to znacznie bardziej złożony problem, który pojawia się, gdy urządzenie fizycznie przenosi się z jednej podsieci IP do zupełnie innej (np. przełącza się z Wi-Fi na sieć komórkową 4G/5G).
  • Wymaga to uzyskania nowego adresu IP, co normalnie zerwałoby wszystkie istniejące połączenia (np. sesję VPN).
  • Istnieją specjalne protokoły (np. Mobile IP), które próbują rozwiązać ten problem, "przekierowując" pakiety ze starego adresu na nowy, ale w praktyce rzadko się je stosuje.
Ilustracja dla slajdu 41
42/58
IPsec i VPN

Zabezpieczanie komunikacji w warstwie 3

  • Chociaż szyfrowanie w Wi-Fi (WPA3) zabezpiecza naszą komunikację w warstwie 2 (między klientem a AP), nie chroni jej w dalszej drodze przez Internet.
  • Do zabezpieczenia komunikacji "od końca do końca" służą protokoły działające w warstwie 3, takie jak IPsec (Internet Protocol Security).
  • IPsec to zbiór protokołów, które zapewniają poufność (szyfrowanie), integralność i uwierzytelnienie dla każdego pakietu IP.
  • Jest on podstawą działania większości sieci VPN (Virtual Private Network).
  • Kiedy łączymy się z firmową siecią VPN, nasz komputer tworzy bezpieczny, zaszyfrowany "tunel" do serwera VPN w firmie.
  • Cały nasz ruch internetowy jest kapsułkowany w pakiety IPsec, co uniemożliwia jego podsłuchanie, nawet w niezabezpieczonej publicznej sieci Wi-Fi.
Ilustracja dla slajdu 42
43/58
Anycast

Jeden adres, wiele lokalizacji

  • Oprócz unicast, broadcast i multicast, istnieje jeszcze czwarty, zaawansowany typ adresowania, zwany anycast.
  • Polega on na tym, że ten sam adres IP jest przypisany do wielu różnych serwerów, znajdujących się w różnych lokalizacjach geograficznych.
  • Kiedy wysyłamy pakiet na adres anycast, protokoły rutingu internetowego (BGP) automatycznie kierują go do "najbliższego" (w sensie topologii sieciowej) serwera posiadającego ten adres.
  • Technologia ta jest masowo wykorzystywana do dystrybucji usług krytycznych, takich jak serwery DNS (np. główne serwery DNS lub publiczne DNS-y jak 8.8.8.8) oraz w sieciach dostarczania treści (CDN), aby zapewnić użytkownikom szybki dostęp do danych z najbliższego im geograficznie serwera.
Ilustracja dla slajdu 43
44/58
Kapsułkowanie: Podróż danych w dół stosu

Dodawanie nagłówków na każdym poziomie

  • Aby w pełni zrozumieć rolę warstwy 3, musimy przypomnieć sobie proces kapsułkowania.
  • Kiedy wysyłamy dane (np. e-mail), przechodzą one w dół stosu OSI, a każda warstwa dodaje swój własny nagłówek.
    1. Warstwa transportowa (L4) bierze dane i dodaje nagłówek TCP, tworząc segment.
    2. Warstwa sieciowa (L3) bierze segment TCP i dodaje nagłówek IP, tworząc pakiet.
    3. Warstwa łącza danych (L2) bierze pakiet IP i dodaje nagłówek 802.11 (lub Ethernet), tworząc ramkę.
    4. Warstwa fizyczna (L1) zamienia ramkę na bity i wysyła je jako sygnał radiowy.
  • Po stronie odbiorcy zachodzi proces odwrotny – dekapsułkacja, czyli zdejmowanie kolejnych nagłówków.
Ilustracja dla slajdu 44
45/58
Rola warstwy 3 w IoT

Adresowanie miliardów urządzeń

  • W kontekście Internetu Rzeczy (IoT), warstwa sieciowa i protokół IPv6 odgrywają absolutnie kluczową rolę.
  • Miliardy małych, zasilanych bateryjnie czujników i urządzeń potrzebują unikalnych adresów IP, aby komunikować się z serwerami w chmurze.
  • Pula adresów IPv4 jest tu zdecydowanie niewystarczająca.
  • IPv6, dzięki swojej ogromnej przestrzeni adresowej oraz mechanizmom autokonfiguracji (SLAAC), jest idealnym rozwiązaniem.
  • Ponadto, w świecie IoT powstają specjalne, uproszczone protokoły warstwy 3 i wyższych, takie jak 6LoWPAN (IPv6 over Low-Power Wireless Personal Area Networks), które pozwalają na efektywną transmisję pakietów IPv6 przez bardzo ograniczone sieci radiowe (np. Zigbee, Thread), oszczędzając cenną energię i pasmo.
Ilustracja dla slajdu 45
46/58
Quality of Service (QoS) w warstwie 3

Oznaczanie priorytetu pakietów

  • O ile WMM zarządza priorytetami w lokalnej sieci Wi-Fi (L2), o tyle w globalnym internecie za jakość usług (QoS) również odpowiada warstwa 3.
  • W nagłówku pakietu IP (zarówno IPv4, jak i IPv6) znajduje się specjalne pole (dawniej ToS, dziś DSCP - Differentiated Services Code Point), które służy do "oznaczania" pakietów różnymi poziomami priorytetu.
  • Routery na trasie pakietu mogą odczytywać te znaczniki i traktować pakiety o wyższym priorytecie (np. z ruchem VoIP) w sposób preferencyjny – umieszczając je w szybszych kolejkach i odrzucając w ostatniej kolejności w przypadku przeciążenia.
  • Dzięki temu możliwe jest zapewnienie jakości usług na całej trasie pakietu, a nie tylko w sieci lokalnej.
Ilustracja dla slajdu 46
47/58
SD-WAN: Wirtualizacja i inteligencja

Nowoczesne podejście do routingu

  • W dużych sieciach rozległych (WAN) coraz popularniejsze staje się podejście SD-WAN (Software-Defined Wide Area Network).
  • Jest to technologia, która wirtualizuje i centralizuje zarządzanie warstwą 3.
  • Zamiast konfigurować każdy router z osobna, administrator definiuje ogólne polityki (np. "ruch VoIP ma zawsze iść najszybszym łączem", "ruch do Facebooka ma iść tańszym łączem") na centralnym kontrolerze.
  • Kontroler ten automatycznie programuje tablice rutingu na wszystkich routerach w sieci.
  • System SD-WAN potrafi w czasie rzeczywistym monitorować jakość wszystkich dostępnych łącz (MPLS, internet, LTE) i dynamicznie przekierowywać ruch, aby zawsze zapewnić najlepszą możliwą jakość dla danej aplikacji.
Ilustracja dla slajdu 47
48/58
Path MTU Discovery

Unikanie fragmentacji

  • Jak wspomnieliśmy, fragmentacja pakietów IP jest niepożądana.
  • Aby jej uniknąć, nowoczesne systemy operacyjne stosują mechanizm Path MTU Discovery (PMTUD).
  • Zanim host zacznie wysyłać duże ilości danych, wysyła pakiety ze specjalną flagą "Don't Fragment" (DF).
  • Jeśli na trasie pakietu znajdzie się router, który musiałby go sfragmentować (bo następne łącze ma mniejsze MTU), nie robi tego.
  • Zamiast tego odrzuca pakiet i odsyła do nadawcy komunikat ICMP "Fragmentation Needed", informując go o maksymalnym MTU na danym odcinku.
  • Nadawca, po otrzymaniu takiej informacji, zmniejsza rozmiar swoich pakietów i próbuje ponownie.
  • Proces ten pozwala na dynamiczne dostosowanie rozmiaru pakietów do najwęższego "wąskiego gardła" (bottleneck) na całej trasie.
Ilustracja dla slajdu 48
49/58
Rola serwera proxy

Pośrednik w komunikacji

  • Choć serwer proxy działa na wyższych warstwach (głównie aplikacji), jego funkcjonowanie jest ściśle związane z warstwą sieciową.
  • Proxy to serwer pośredniczący w komunikacji między klientem a internetem.
  • Kiedy komputer jest skonfigurowany do używania proxy, nie wysyła on pakietów bezpośrednio do docelowego serwera.
  • Zamiast tego, wysyła wszystkie swoje żądania (np. żądania stron WWW) do serwera proxy.
  • To serwer proxy, we własnym imieniu, nawiązuje połączenie z docelowym serwerem, pobiera dane, a następnie przekazuje je do klienta.
  • Z perspektywy serwera docelowego, to adres IP serwera proxy jest widoczny jako źródło, a nie adres IP klienta.
  • Proxy są używane do filtrowania treści, buforowania (caching) i zapewniania anonimowości.
Ilustracja dla slajdu 49
50/58
Anycast w sieciach WLAN

Jeden adres IP dla wielu kontrolerów

  • W dużych, scentralizowanych wdrożeniach Wi-Fi (np. na uniwersytetach), gdzie setki punktów dostępowych są zarządzane przez centralne kontrolery WLAN, technologia anycast znajduje ciekawe zastosowanie.
  • Można skonfigurować ten sam adres IP (adres anycast) na kilku fizycznie różnych kontrolerach.
  • Punkty dostępowe są konfigurowane tak, aby łączyły się z tym jednym, wirtualnym adresem.
  • Dzięki protokołom rutingu dynamicznego (np. OSPF) w sieci szkieletowej, ruch od danego AP jest automatycznie kierowany do najbliższego mu, działającego kontrolera.
  • W przypadku awarii jednego z kontrolerów, routing dynamicznie przekierowuje punkty dostępowe do kolejnego najbliższego, zapewniając wysoką dostępność i odporność na awarie.
Ilustracja dla slajdu 50
51/58
Multihoming

Podłączenie do wielu dostawców internetu

  • Multihoming to technika stosowana w celu zwiększenia niezawodności połączenia z internetem.
  • Polega ona na podłączeniu sieci firmowej do dwóch lub więcej różnych dostawców usług internetowych (ISP) jednocześnie.
  • Wymaga to posiadania własnej puli publicznych adresów IP oraz własnego Systemu Autonomicznego (AS) i "rozmawiania" z oboma dostawcami za pomocą protokołu BGP.
  • Router brzegowy firmy ogłasza swoją sieć obu dostawcom.
  • Dzięki temu, w przypadku awarii łącza do jednego ISP, BGP automatycznie przekierowuje cały ruch (zarówno przychodzący, jak i wychodzący) przez drugie, zapasowe łącze.
  • Zapewnia to ciągłość działania usług nawet w przypadku poważnej awarii u jednego z operatorów.
Ilustracja dla slajdu 51
52/58
Ataki na warstwę 3

Podszywanie się i podsłuchiwanie

  • Warstwa sieciowa również jest celem wielu ataków.
  • Jednym z klasycznych jest IP Spoofing, czyli podszywanie się pod inny adres IP.
  • Atakujący wysyła pakiety ze sfałszowanym adresem źródłowym, aby ukryć swoją tożsamość lub podszyć się pod zaufane urządzenie.
  • Inny groźny atak to ARP Poisoning (ARP Spoofing).
  • Atakujący w sieci lokalnej rozgłasza sfałszowane odpowiedzi ARP, wmawiając np. naszemu laptopowi, że adresem MAC routera (bramy domyślnej) jest adres MAC komputera atakującego.
  • Od tego momentu cały nasz ruch do internetu, zamiast iść bezpośrednio do routera, przechodzi przez maszynę atakującego, co pozwala mu na podsłuchiwanie i modyfikowanie całej komunikacji (atak Man-in-the-Middle).
Ilustracja dla slajdu 52
53/58
Ataki DoS/DDoS w warstwie 3

Zapychanie łącza i zasobów

  • Warstwa sieciowa jest często wykorzystywana do przeprowadzania ataków typu Denial of Service (DoS) i Distributed Denial of Service (DDoS).
  • Celem takich ataków jest uniemożliwienie działania usługi poprzez wyczerpanie jej zasobów – najczęściej przepustowości łącza internetowego.
  • Atakujący, często używając sieci przejętych komputerów (botnetu), generuje ogromny ruch w kierunku serwera ofiary, wysyłając miliony pakietów IP.
  • Ten zalew bezużytecznych danych zapycha łącze serwera, sprawiając, że legalni użytkownicy nie mogą się z nim połączyć.
  • Przykładem jest atak typu "ICMP Flood", polegający na zalaniu ofiary ogromną liczbą zapytań ping.
Ilustracja dla slajdu 53
54/58
NAT Traversal

Jak połączyć się z kimś za NAT-em?

  • Mechanizm NAT, choć niezbędny, stwarza duży problem dla aplikacji peer-to-peer (P2P), takich jak gry online, komunikatory czy telefonia internetowa.
  • Jak dwa urządzenia, oba ukryte za swoimi routerami NAT, mogą nawiązać ze sobą bezpośrednie połączenie?
  • Problem ten rozwiązują techniki zwane NAT Traversal.
  • Najpopularniejsze z nich to STUN (Session Traversal Utilities for NAT) i TURN (Traversal Using Relays around NAT).
  • Serwer STUN pomaga urządzeniu poznać jego własny publiczny adres IP i typ NAT-u.
  • Jeśli bezpośrednie połączenie jest możliwe (np. przy użyciu techniki "UDP hole punching"), jest ono ustanawiane.
  • Jeśli nie, komunikacja jest przekazywana przez serwer pośredniczący TURN, co jest mniej wydajne, ale zawsze działa.
Ilustracja dla slajdu 54
55/58
Sieci Ad-Hoc i routing

Wyznaczanie trasy w zdecentralizowanej sieci

  • W mobilnych sieciach Ad-Hoc (MANET), gdzie nie ma stałej infrastruktury, a urządzenia ciągle się przemieszczają, routing staje się ogromnym wyzwaniem.
  • Klasyczne protokoły, jak OSPF, nie sprawdzają się w tak dynamicznym środowisku.
  • Dlatego opracowano specjalne protokoły rutingu dla sieci Ad-Hoc, takie jak AODV (Ad-hoc On-demand Distance Vector) czy DSR (Dynamic Source Routing).
  • Działają one w sposób reaktywny – trasa jest wyszukiwana dopiero wtedy, gdy jest potrzebna.
  • Nadawca rozgłasza zapytanie o trasę (Route Request), które jest przekazywane przez kolejne węzły.
  • Gdy zapytanie dotrze do celu, ten odsyła odpowiedź (Route Reply) tą samą ścieżką, informując pośrednie węzły o znalezionej trasie.
Ilustracja dla slajdu 55
56/58
Warstwa sieciowa a chmura

Wirtualne sieci w centrach danych

  • W nowoczesnych centrach danych i chmurach publicznych (jak AWS czy Azure), warstwa sieciowa jest w dużej mierze zwirtualizowana.
  • Technologie takie jak VXLAN (Virtual Extensible LAN) pozwalają na tworzenie tysięcy odizolowanych od siebie sieci warstwy 2 (VLAN-ów) i "przenoszenie" ich przez istniejącą infrastrukturę sieciową warstwy 3.
  • Działa to na zasadzie kapsułkowania całych ramek Ethernet w pakiety UDP/IP.
  • Dzięki temu można dynamicznie tworzyć i przenosić wirtualne maszyny między fizycznymi serwerami, nawet jeśli znajdują się one w różnych podsieciach IP, bez potrzeby zmiany ich konfiguracji sieciowej.
  • Jest to fundament tzw. sieci definiowanych programowo (SDN - Software-Defined Networking).
Ilustracja dla slajdu 56
57/58
Podsumowanie warstwy 3 w WLAN

Globalna nawigacja dla bezprzewodowych klientów

  • Warstwa sieciowa jest kluczowa dla użyteczności sieci Wi-Fi, ponieważ to ona przekształca lokalną łączność w bramę do globalnego Internetu.
  • Podczas gdy warstwy 1 i 2 budują "lokalną drogę" między klientem a punktem dostępowym, warstwa 3 dostarcza "mapę" i "system adresowy" umożliwiający podróż do dowolnego miejsca na świecie.
  • Procesy takie jak dynamiczne przydzielanie adresów IP przez DHCP, tłumaczenie adresów przez NAT oraz podejmowanie decyzji o routingu przez bramę domyślną, są fundamentalnymi operacjami warstwy 3, które zachodzą za każdym razem, gdy łączymy się z siecią Wi-Fi i otwieramy przeglądarkę internetową.
Ilustracja dla slajdu 57
58/58
Koniec części 4

Najważniejsze pojęcia z dzisiejszego wykładu:

  • Adres IP vs MAC: Adres logiczny, zależny od sieci (IP) vs. adres fizyczny, stały (MAC).
  • Protokół IP: Bezpołączeniowy i zawodny "język" Internetu, którego jednostką jest pakiet.
  • Adresy prywatne i NAT: Pozwalają wielu urządzeniom w sieci LAN współdzielić jeden publiczny adres IP.
  • DHCP: Protokół dynamicznego przydzielania adresów IP i innych parametrów konfiguracyjnych klientom w sieci.
  • Rola routera: Urządzenie warstwy 3, które łączy różne sieci i wyznacza trasę dla pakietów.
  • ARP i DNS: ARP tłumaczy IP na MAC w sieci lokalnej, a DNS tłumaczy nazwy domen na adresy IP globalnie.
  • IPv6: Nowa generacja adresacji, rozwiązująca problem wyczerpania adresów IPv4.
  • Dziękuję Państwu za uwagę.
  • Na następnym wykładzie wejdziemy na wyższe piętra modelu OSI, zajmując się warstwą transportową, która odpowiada za niezawodność i kontrolę przepływu danych.
Ilustracja dla slajdu 58