Sieci komputerowe 1 Sieci komputerowe 2 Skalowanie adresów IP Network Address Translation NAP, PAT Sieci komputerowe 3 Sieci komputerowe 4 RFC 1918 Adresy prywatne Nierutowalne czyli do uŝycia w sieci wewnętrznej, ale nie w Internecie Z reguły filtrowane przez ISP Idea NAT Network Address Translation Mechanizm NAT pozwala na podmianę adresów wewnętrznych (prywatne) na publiczne (rutowalne). Obsługuje go ruter graniczny (border router) sieci końcowej (stub). Klasa A - 1 Klasa B - 16 Klasa C - 256 10.0.0.0 172.16.0.0 172.31.255.255 192.168.0.0 192.168.255.255 10.0.0.0 /8 172.16.0.0 /12 192.168.0.0 /16 wewnętrzna (NAT) globalna
Sieci komputerowe 5 Sieci komputerowe 6 Cele zastosowania NAT Oszczędzenie zuŝycia adresów IP (multipleksacja PAT). Eliminacja konieczności readresacji (np.: przy zmianie dostawcy). Zwiększenie bezpieczeństwa sieci (ukrycie adresacji wewnętrznej). Przekierowanie ruchu TCP na inny port TCP. W czasie przebudowy sieci (po zmianie adresu serwera nie zrekonfigurowane maszyny nadal powinny go widzieć). UmoŜliwienie komunikacji sieciom o nakładającej się adresacji. Adresy: Terminologia NAT wewnętrzny lokalny adr. w sieci wewn., zazwyczaj prywatny a nie przypisany przez Network Information Center wewnętrzny globalny adr. oficjalny reprezentujący hosta lub grupę hostów z sieci wewn. w sieci zewn. zewnętrzny lokalny adr. maszyny zewn. tak, jak widzi go host wewn. zewnętrzny globalny adr. maszyny zewn. przypisane jej przez właściciela Sieci komputerowe 7 Sieci komputerowe 8 lokalna Rozwiązania NAT (NAT) pula adresów globalnych NAT statyczny odwzoruje konkretne adresy wewn. lokalne na konkretne, ustalone przez konfiguracje adresy globalne; wpisy są niezmienne w czasie. NAT dynamiczny odwzoruje adresy wewn. na dowolne adresy z przyznanej puli adresów globalnych dynamicznie w trakcie komunikacji; wpisy mają określony czas waŝności! PAT Port Address Translation lokalna (PAT) jeden adres globalny NAT polega na odwzorowaniu jeden-do-jednego, zaś PAT wiele-do-jednego. Nazywa się to przeładowaniem. Działanie PAT opiera się o uŝycie numerów portów do identyfikacji maszyn. Teoretycznie dostępnych jest 65536 portów, w rzeczywistości ok. 4000.
Sieci komputerowe 9 Sieci komputerowe 10 Tablica NAT Działanie PAT lokalna 10.0.0.1 (NAT) 180.0.10.11 210.15.1.1 lokalna 10.0.0.1:7766 (PAT) 180.0.10.11:7766 180.0.10.11:7767 210.15.1.1 10.0.0.2 adresy globalne 180.0.10.12 210.15.1.2 10.0.0.2:7795 wewnętrzny lokalny adresy globalne wewnętrzny globalny 210.15.1.2 zewnętrzny lokalny/globalny wewnętrzny lokalny wewnętrzny globalny zewnętrzny lokalny wewnętrzny globalny 10.0.0.1:7766 10.0.0.2:7795 180.0.10.11:7766 180.0.10.11:7767 210.15.1.1:8080 210.15.1.2:8080 10.0.0.1 10.0.0.2 180.0.10.11 180.0.10.12 210.15.1.1 210.15.1.2 210.15.1.1 210.15.1.2 PAT przydziela kolejnym adresom:portom wewnętrznym, kolejne porty adresu zewnęrznego; gdy dostępne porty się skończą bierze następny adres. PAT stara się odwzorowywać numery portów na identyczne. Sieci komputerowe 11 Sieci komputerowe 12 Uwagi dodatkowe Konfiguracja NAT/PAT kierunek translacji adresów moŝe być zarówno inside jak i outside : inside tłumaczy adresy źródłowe w pakietach z sieci wewn. oraz docelowe w pakietach z sieci zewn. outside tłumaczy adresy docelowe w pakietach z sieci wewn. oraz źródłowe w pakietach z sieci zewn. kolejność czynności: in out najpierw routing, potem translacja, out in najpierw translacja, potem routing. Wskazanie interfejsu zewnętrznego i wewnętrznego Specyfikacja puli dostępnych adresów globalnych Specyfikacja grupy adresów lokalnych, które będą tłumaczone Powiązanie obu specyfikacji
Sieci komputerowe 13 Sieci komputerowe 14 UWAGI NAT zwiększa opóźnienia: CPU sprawdza kaŝdy pakiet, ewentualnie modyfikuje nagłówki (TCP, IP). Zastosowanie NAT powoduje utratę pewnej funkcjonalności (protokoły oparte o wysyłanie informacji o adresie IP) Tracimy zdolność śledzenia pakietów IP od nadawcy do odbiorcy (niektóre aplikacje mogą nie działać) UWAGI Mechanizm NAT systemu Cisco IOS wspiera: ICMP, FTP, NetBIOS, RealAudio, DNS (zapytania A, PTR ), IP multicast,... Nie wspiera: protokółów rutingu (uaktualnienia tablic), BOOTP, SNMP,... Sieci komputerowe 15 Sieci komputerowe 16 Uzyskiwanie adresu IP Dynamic Host Configuration Protocol Statycznie ręczny wpis. Reverse Adres Resolution Protocol - RFC 903: wykorzystana ramka formatu ARP (broadcast, bez nagłówka IP!), w sieci lokalnej muszą być serwery RARP (podstawowy oraz ewentualnie rezerwowe). RODZAJ PROTOKOŁU WARSTWY 2 RODZAJ PROTOKOŁU WARSTWY 3 ROZMIAR ADRESU PROTOKOŁU WARSTWY 2 ROZMIAR ADRESU PROTOKOŁU WARSTWY 3 TYP ADRES NADAWCY W PROTOKOLE WARSTWY 2 ADRES NADAWCY W PROTOKOLE WARSTWY 3 ADRES ODBIORCY W PROTOKOLE WARSTWY 2 ADRES ODBIORCY W PROTOKOLE WARSTWY 3 2 B 2 B 1 B 1 B 2 B 6 B 4 B 6 B 4 B
Sieci komputerowe 17 Sieci komputerowe 18 BOOTP Wady RARP-a odpowiedź zawiera bardzo mało informacji; słabe wykorzystanie pasma (28/46 bajtów) zasięg serwera ograniczony do jednej sieci BOOTstrap Protocol - RFC 951: za pomocą jednego komunikatu pozwala uzyskać informację na temat m.in. adresu IP komputera, adresu routera, adresu serwera z kodem startowym, maski, adresów serwerów wydruku itp. uŝywa protokołu IP (UDP) BOOTP Zapytanie wysyłane jest na adres 255.255.255.255 Odpowiedź wysyłana jest bezpośrednio do hosta lub rozgłaszana jeśli chcemy wysłać do hosta bezpośrednio, to najpierw wysyłamy zapytanie ARP o jego adres MAC host nie zna swojego adresu IP (właśnie o niego pyta) więc nie odpowiada na ARP-a :-( Musimy zrobić wpis ręcznie lub odpowiadać na adres rozgłoszeniowy Sieci komputerowe 19 Sieci komputerowe 20 Retransmisja w BOOTP Odpowiedzialnym za niezawodność połączenia jest klient. Stosuje mechanizmy timeout-u i retransmisji. Wysyła prośbę i uruchamia zegar. Po upływie timeout-u wysyła prośbę ponownie. Czasy retransmisji są dobierane tak, by uniknąć równoczesnych transmisji. Pierwsze Ŝądanie wysyłane jest po upływie losowego czasu oczekiwania > uniknięcie kolizji w sytuacji zaniku napięcia. KaŜde następny czas oczekiwania jest wartością losową t <0;max> s, gdzie max=2^(n+1), n-numer próby. Jeśli max > 60s to n=1. operacja typ sprzętu dł adr. sprz. etapy identyfikator transakcji sekundy nie uŝywane adres IP klienta twój adres IP adres IP serwera adres IP routera adres sprzętowy klienta (16 oktetów) nazwa węzła serwera (64 oktety) nazwa pliku startowego (128 oktetów) dane specyficzne dla firmy (64 oktety)
Sieci komputerowe 21 Sieci komputerowe 22 operacja typ sprzętu dł adr. sprz. etapy Operacja prośba (1), odpowiedź (2) typ sprzętu, długość adresu sprzętowego: znaczenie jak w ARP. Ethernet: 1, 6 etapy: Klient umieszcza 0. Jeśli serwer odbierze i przekaŝe do innego serwera to zwiększa licznik o 1. identyfikator transakcji sekundy nie uŝywane Identyfikator transakcji pozwala na powiązanie odpowiedzi z wysłanym Ŝądaniem. Sekundy liczba sekund od momentu wystartowania klienta Sieci komputerowe 23 Sieci komputerowe 24 adres IP klienta twój adres IP adres IP serwera adres IP routera adres sprzętowy klienta (16 oktetów) nazwa węzła serwera (64 oktety) nazwa pliku startowego (128 oktetów) Klient wypełnia wszystko co zna adres IP klienta: swój adres IP lub 0 adres IP serwera/nazwa serwera: serwer z którego chce uzyskać informacje startowe lub 0 nazwa pliku startowego: swoje preferencje lub 0 dane specyficzne dla firmy (64 oktety) Pozwala na przekazywanie dodatkowych informacji. Pierwsze 4 bajty określają format reszty. Np. dla 99.130.83.99 reszta składa się z listy pozycji z których kaŝda ma postać: Kod (1 bajt) Dł (1 bajt) np.: 1/4/maska 2/4/czas 3/4N/adresy N routerów 9/4N/adresy serwerów wydruku itd Wartość
Sieci komputerowe 25 Sieci komputerowe 26 BOOTP relay agents Serwer BOOTP moŝe obsługiwać wiele sieci wykorzystując routery działające jako relay-agents router odbiera zapytanie BOOTP i wysyła go do znanego sobie serwera BOOTP unicastem, odpowiedź wraca do routera, a nie do klienta, router przekazuje odpowiedź do hosta pytającego. Ograniczenia RARP i BOOTP RARP i BOOTP zostały zaprojektowane do systemów, w których większość węzłów ma stałe podłączenie do sieci W obydwu serwerach naleŝy ręcznie wprowadzać informacje o skojarzeniu adresu MAC z pozostałymi informacjami Sieć klasy C: 300 osób pracujących w grupach po 30 problem!!! Sieci komputerowe 27 Sieci komputerowe 28 Dynamic Host Configuration Protocol RFC 2131 Serwerowi jest przyznana pula adresów. Klient komunikuje się z serwerem i otrzymuje jeden z tych adresów. Adres jest przyznawany na pewien czas ustalany administracyjnie, zaleŝny od lokalnych potrzeb Autokonfiguracja moŝe być ograniczona administracyjnie, np. administrator tworzy wpisy statyczne jak dla BOOTP BOOTP a Obydwa protokoły pracują w architekturze klient-serwer. UŜywają portów 67 (request) i 68 (reply) UDP (porty BOOTP). BOOTP: - przypisania statyczne, - przypisania stale, - 4 parametry (IP, maska, brama, DNS). * przypisania ręczne, automatyczne lub dynamiczne : - przypisania dynamiczne, - dzierŝawa *, - ponad 30 parametrów.
Sieci komputerowe 29 Sieci komputerowe 30 Format komunikatu Podobne do BOOTP. Niektóre pola mają inne znaczenie. Rodzaj komunikatu przekazywany jest w opcjach: Kod (1 bajt) Dł (1 bajt) Wartość 1 1 DISCOVER 2 1 OFFER 3 1 REQUEST itd 1... Format komunikatu operacja typ sprzętu dł adr. sprz. etapy identyfikator transakcji (XID) sekundy flagi adres IP klienta (CIADDR) twój adres IP (YIADDR) adres IP serwera (SIADDR) adres IP routera (GIADDR) adres sprzętowy klienta (CHADDR) nazwa węzła serwera (SNAME) nazwa pliku startowego (FILENAME) opcje Sieci komputerowe 31 Sieci komputerowe 32 Komunikacja diagram stanów Zapytanie : SRC MAC: MAC_CL DST MAC: FF:FF:FF:FF:FF:FF Odpowiedź SRC IP:? DST IP: 255.255.255.255 PORT: 67 CL_IP:? MASK:? GATE_IP:? CL_MAC: MAC_CL Ethernet IP UDP Request SRC MAC: MAC_SRV DST MAC: MAC_CL klient (stacja bezdyskowa) SRC IP: IP_SRV DST IP: IP_CL PORT: 68 serwer CL_IP: IP_CL MASK: MSK_CL GATE_IP: IP_GT CL_MAC: MAC_CL Ethernet IP UDP Reply OFFER Wybierz REQUEST wybierz ofertę Prośba DISCOVER ACK Inicjuj NACK lub koniec okresu wynajmu PrzewiąŜ ACK Powiązanie NACK REQUEST minęło 87,5% okresu wynajmu ACK REQUEST minęło 50% okresu wynajmu Odnów RELEASE skasuj wynajmowanie
Sieci komputerowe 33 Sieci komputerowe 34 relay serwer relay - działanie serwer Nie tylko uŝywa broadcast u (ARP, TFTP) Rutery nie przekazują broadcast ów czy administrator powinien uruchomić serwer w kaŝdej sieci? Mechanizm adresu pomocniczego (helper-address) pozwala na przekazywanie rozgłoszeń kluczowych serwisów UDP 8 podstawowych: Time, DNS, BOOTP/ (serwer i klient), TFTP, NetBIOS (Name i Datagram Service), TACACS. Klient wysyła zapytanie, które przechwytuje relay na ruterze. relay uzupełnia pole GIADDR (). Przekazuje zapytanie do serwera(ów), a następnie odpowiedź do klienta.