Najprawdopodobniej czytasz ten tekst właśnie na urządzeniu podłączonym do Internetu. Jeśli tak, być może używasz translacji adresów sieciowych (NAT). Dzieje się to w tle. Możesz nawet nie wiedzieć o jego istnieniu.
Internet jest ogromny. Obecnie szacowana liczba aktywnych użytkowników przekracza 5,35 miliarda. To dużo ludzi. To dużo urządzeń. Wzrost ten jest bezpośrednio powiązany z tym, jak ważny jest dla Ciebie NAT. To coś więcej niż tylko szczegół techniczny. Jest to mechanizm, który napędza sieć dla miliardów użytkowników.
Kryzys wyczerpania adresu IP
Każdy komputer komunikujący się z innym komputerem w Internecie wymaga tożsamości. To jest adres IP. Skrót od protokołu internetowego. Pomyśl o tym jak o cyfrowym adresie pocztowym. Informuje usługę internetową dokładnie, gdzie wysłać dane.
Kiedy po raz pierwszy opracowano protokół IP, inżynierowie wierzyli, że będzie wystarczająco dużo wolnego miejsca. Naliczyli 4 294 967 296 unikalnych adresów. To jest 2 $^{32}$. Brzmi jak nieskończoność.
To nie wystarczy.
Twój rzeczywisty zakres adresów publicznych jest mniejszy. Liczba ta wynosi 3,2–3,3 miliarda. Dlaczego? Ponieważ adresy są podzielone na kategorie. Niektóre są zarezerwowane dla multiemisji. Pozostałe pozostawiamy do testów. Gwałtowny rozwój domowej infrastruktury internetowej i biznesowej spowodował wyczerpanie zasobów. Skończyły się indywidualne identyfikatory publiczne.
Oczywistym rozwiązaniem jest ponowne sformatowanie przestrzeni adresowej. To jest IPv6. Dozwolonych jest więcej adresów. Jednakże wdrażanie było powolne. Wymaga to zmian w całej globalnej infrastrukturze. To zajmie lata.
Jak NAT rozwiązuje ten problem?
Tutaj do akcji wkracza NAT. W szczególności RFC 1631 definiuje to podejście.
Jedno urządzenie (zazwyczaj router) pełni rolę agenta. Znajduje się pomiędzy publicznym Internetem a prywatną siecią lokalną. Twój router ma publiczny adres IP. Laptopy, telefony komórkowe i inteligentne telewizory nie. Używają prywatnych adresów IP. Router tłumaczy adresy pomiędzy tymi dwoma typami.
Tylko jeden unikalny adres IP może reprezentować całą grupę komputerów. Rozwiązuje to problem niedoboru publicznych adresów IP. Ale to tylko połowa historii.
Analogia z recepcją biura
Koncepcja ta została wymyślona przez firmę Cisco. Najprostszym sposobem zrozumienia działania NAT jest analogia.
Wyobraź sobie duży biurowiec. Jesteś pracownikiem wewnętrznym. Masz instrukcje dla sekretarki: nie przekierowuj do mnie połączeń, jeśli się nie zgodzę.
Następnie dzwonisz do potencjalnego klienta. Zostaw wiadomość. Powiedz sekretarce: „Spodziewam się telefonu od tej osoby”. Przekazujesz jej dokładne informacje.
Klient dzwoni pod główny numer budynku. To był jedyny numer, jaki znał. Prosi o połączenie z tobą. Sekretarz sprawdza tabelę referencyjną. W tabeli tej dopasowuje się Twoje imię i nazwisko do numeru wewnętrznego. Pamięta, że prosiłeś o ten telefon. Ona prowadzi klienta.
Bez tej tabeli przeglądowej i bez Twojej zgody klient zostanie zablokowany lub utracony. NAT właśnie to robi z pakietami danych.
Mechanizm transmisji
NAT pełni rolę kontrolera dostępu. Znajduje się pomiędzy Twoją siecią wewnętrzną a resztą świata. Może to być zapora sieciowa, router lub komputer skonfigurowany do obsługi ruchu.
Przejawia się na wiele różnych sposobów. Działa to inaczej w zależności od konfiguracji i potrzeb w zakresie bezpieczeństwa lub prostoty. Podstawowe funkcje pozostają niezmienione. Odwzorowuje wewnętrzne adresy prywatne na pojedynczy identyfikator publiczny. Kontroluje przepływ danych, dzięki czemu sieci zewnętrzne nie muszą znać wewnętrznej struktury systemu lokalnego.
To ustawienie rozwiązuje nie tylko problem zapisywania adresów. Dodaje warstwę stealth. Podmioty zewnętrzne widzą adres IP routera, a nie adres IP urządzenia osobistego. Jest to korzyść w zakresie bezpieczeństwa. Głównym czynnikiem jest nadal wyczerpanie adresów IPv4.
Technologia dojrzała. Jest standardem w prawie wszystkich sprzedawanych obecnie routerach konsumenckich. Gdy to zrozumiesz, zrozumiesz, dlaczego możesz podłączyć pięć urządzeń do sieci Wi-Fi, używając tylko jednego publicznego adresu IP. To inteligentne rozwiązanie problemu, który stworzyliśmy poprzez zbyt szybki rozwój.
Statyczny NAT: most jeden do jednego
Statyczny NAT jest odpowiednikiem linii prostej. Jest to dokładne odwzorowanie jednego niezarejestrowanego prywatnego adresu IP na jeden zarejestrowany publiczny adres IP. Żadnego dzielenia się zasobami. Żadnego zamieszania w porcie. Jest to po prostu bezpośredni tunel pomiędzy światem zewnętrznym a konkretnym urządzeniem wewnętrznym.
Dlaczego to jest ważne? Ponieważ w niektórych przypadkach potrzebujesz urządzenia, do którego można uzyskać dostęp przez Internet. Serwer WWW. Serwer gry. Bezpieczny zdalny punkt dostępu. Statyczny NAT to standardowe narzędzie do hostowania treści, które muszą znaleźć klienci zewnętrzni.
Działa to poprzez utworzenie stałego wpisu w tabeli NAT. Kiedy pakiet zewnętrzny dociera do publicznego adresu IP, router wyszukuje odpowiadający mu prywatny adres IP i przekazuje ruch dalej. Gdy urządzenie zareaguje, dzieje się odwrotnie. Pierwotny adres IP jest zmieniany z powrotem przed wejściem do sieci.
To nie jest konwersja dynamiczna. Wyświetlacze pozostają niezmienione. Nie mają daty ważności. Oni po prostu czekają.
„Statyczny NAT jest szczególnie przydatny, gdy chcesz uzyskać dostęp do urządzenia spoza sieci.”
Ta spójność ma swoją cenę. Każdy serwer wewnętrzny wymagający dostępu przychodzącego wymaga publicznego adresu IP. Jeśli prowadzisz trzy publicznie dostępne usługi, będziesz potrzebować trzech statycznych wpisów NAT i trzech publicznych adresów IP. Może to szybko wyczerpać pulę adresów.
Porównaj to z PAT (tłumaczenie adresów portów), w którym dziesiątki urządzeń wewnętrznych korzystają z jednego publicznego adresu IP. PAT jest skuteczny. Statyczny NAT jest przezroczysty.
Kluczowym słowem jest tutaj przejrzystość. Klienci zewnętrzni widzą urządzenia wewnętrzne tak, jakby były bezpośrednio podłączone do Internetu. Debugowanie nie jest tak skomplikowane jak mapowanie portów. Nie ma żadnych pytań „Dlaczego nie mogę się połączyć?” momenty spowodowane błędną konfiguracją portów. Adres IP jest tożsamością. To nie jest kłamstwo.
Ułatwia to rozwiązywanie problemów. Jeśli coś pójdzie nie tak, wiesz dokładnie, o które urządzenie chodzi. Nie ma potrzeby zgadywania na podstawie numeru portu. Pinguję publiczny adres IP i komunikuję się z prywatnym urządzeniem.
Jednak nie jest to odpowiednie dla wszystkich sytuacji. Nie konfigurujesz statycznego NAT dla swojego laptopa. Nie jest to potrzebne w przypadku klientów poczty e-mail ani ogólnego przeglądania Internetu. Nie potrzebują połączeń przychodzących z sieci zewnętrznej. Używanie statycznego NAT dla ogólnego ruchu jest zbędne i stwarza ryzyko bezpieczeństwa.
To jest dla serwerów. Dla tych, którzy krzyczą: „Znajdź mnie”.
Konfiguracja jest prosta, ale trudna. Określ wewnętrzny adres lokalny (prywatny adres IP). Wprowadź swój wewnętrzny adres globalny (publiczny adres IP). Zwiąż je. To wszystko. Reguły zapory sieciowej będą nadal stosowane, ale sam proces konwersji nie będzie widoczny dla użytkowników końcowych.
Istnieje również subtelny aspekt bezpieczeństwa. Nie ukrywa urządzenia, ale je izoluje. Możesz także ograniczyć dostęp do tego publicznego adresu IP. Jednak sam mechanizm konwersji nie dodaje warstwy ukrycia. Jeśli chcesz ukryć urządzenie, możesz użyć PAT lub proxy. Jeśli wymagana jest dostępność, możesz użyć statycznego NAT.
To jest specjalistyczne narzędzie. Nie cały zestaw narzędzi. Jeśli jednak chcesz uzyskać linię prostą, jest to jedyny sposób.
Statyczny NAT jest rygorystyczny. Jest to sztywna relacja jeden do jednego. Ale rzeczywistość jest niedoskonała. Większość sieci nie ma wystarczającej liczby publicznych adresów IP dla wszystkich urządzeń. Dlatego właśnie używany jest dynamiczny NAT. Nie jest to naprawione. To drzwi obrotowe.
Urządzenia w sieci zaczynają się od prywatnego, niezarejestrowanego adresu IP. Chcą mieć kontakt ze światem zewnętrznym. Routery nie przydzielają stałych adresów publicznych. Zamiast tego wybierają jeden z zarejestrowanych adresów IP. Wyobraź sobie parking dla wypożyczonego samochodu. Wsiadasz za kierownicę (IP). To ty masz kontrolę. Wysyłasz to z powrotem. Następna osoba wsiada do następnego samochodu.
Ten ekran istnieje tylko podczas aktywnej sesji. Jeśli połączenie zostanie utracone, publiczny adres IP zostanie zwrócony do puli. Staje się dostępny dla wszystkich innych. To zapisuje adresy. To działa dobrze. Jest to jednak ograniczone wielkością basenu. Kiedy się skończy, następne żądanie zakończy się niepowodzeniem.
Gdy jeden adres IP nie wystarczy: pojawia się przeciążenie
Co się stanie, jeśli mam 50 urządzeń i tylko jeden publiczny adres IP? Nie mogę zmieścić 50 samochodów w garażu. Oznacza to złamanie zasad tradycyjnej sieci. Zacznij korzystać z portów.
To jest przeciążenie.
Znany również jako PAT (tłumaczenie adresów portów), NAT z pojedynczym adresem IP lub multipleksowanie NAT na poziomie portu. Wybierz to, co lubisz najbardziej. Koncepcja jest taka sama: połączenie wielu prywatnych adresów IP w jeden publiczny adres IP. Jak? Użyj unikalnych portów źródłowych dla każdego połączenia.
Laptop wita serwer WWW. Używany jest port 49152. Pulpit wita ten sam serwer. Używany port to 49153. Router to zapamiętuje. Oznacza każdy pakiet wewnętrznym adresem IP i portem. Po zwróceniu odpowiedzi router sprawdza numer portu. Wie dokładnie, do jakiego urządzenia wewnętrznego należą Twoje dane.
Przeciążenie nie jest jedynym rozwiązaniem. Dlatego większość połączeń internetowych w domu i małej firmie działa dobrze.
Bez ponownego wykorzystania portów Internet wiele lat temu zawaliłby się pod ciężarem prywatnej przestrzeni adresowej. Podsieci wirtualne są tworzone poprzez pożyczanie struktur nagłówków TCP/UDP. To bardzo sprytne (pomysłowe). To jest konieczne. To jest wszędzie.
Dlaczego jest to ważne dla zwykłych użytkowników?
Możesz nie zauważyć tego zjawiska. Po prostu włącz komputer. Przeglądasz sieć. Wszystko działa. Jeśli jednak kiedykolwiek doświadczyłeś zerwania połączenia z powodu wyczerpania się sesji routera, oznacza to, że osiągnąłeś limit NAT. Jeszcze gorsze jest ograniczenie dostępnych portów.
Jeden adres IP ma 65 535 portów. Większości to wystarczy. Ale co z powszechnie używanymi routerami? Nie tak bardzo. Jeśli jednocześnie pobierasz duże pliki, przesyłasz strumieniowo filmy w rozdzielczości 4K i korzystasz z serwera domowego, porty te mogą szybko się wyczerpać.
Dynamiczny NAT zapewnia elastyczność. Przeciążenie zwiększa skalowalność. Razem ukrywają sieć wewnętrzną przed publicznym Internetem. To, co widzi świat zewnętrzny, to adres IP. Jest w was wiele wewnętrznych światów.
Cena? Złożoność. Diagnoza staje się bardziej skomplikowana. Jeśli coś pójdzie nie tak, nie możesz po prostu spojrzeć na publiczny adres IP. Musisz śledzić mapowanie portów. To jest poziom abstrakcji. Przydatne, ale nieprzejrzyste.
Nie ma znaczenia, czy
Rozwiązywanie konfliktów adresów podczas nakładania NAT
Większość sieci nie boryka się z tym problemem. Po prostu otrzymują blok publicznych adresów IP i na tym koniec. Jeśli jednak Twoja sieć wewnętrzna korzysta z zakresu, który „już istnieje” w Internecie (na przykład wewnętrznie używasz adresu 192.168.1.0/24, ale ten zakres jest przypisany innej firmie w innej lokalizacji), powstaje konflikt. Router nie może wysyłać pakietów z tymi źródłowymi adresami IP poza sieć. Dostawcy wyższego szczebla mogą je odrzucić lub przekierować nieprawidłowo.
Dlatego router musi interweniować. Musi utrzymywać tabelę przeglądową. Za każdym razem, gdy urządzenie w Twojej sieci próbuje komunikować się ze światem zewnętrznym, router przechwytuje pakiety. Zastępuje „wewnętrzny” adres prywatny Twoim unikalnym zarejestrowanym publicznym adresem IP. To całkiem proste. Ale poczekaj. Dotyczy to nie tylko ruchu wychodzącego.
Jeśli „inna” sieć (z którą przypadkowo współdzieliłeś przestrzeń adresową) spróbuje się z Tobą skontaktować, Twój router musi wykonać tłumaczenie odwrotne. Pobiera zarejestrowany adres „zewnętrzny” i mapuje go z powrotem na adres sieci prywatnej. To dwukierunkowe tłumaczenie konfiguruje konfigurację NAT dla nakładających się adresów IP.
Istnieją dwa główne sposoby rozwiązania tej trudnej sytuacji. Statyczny NAT działa, gdy mapowanie jest poprawione. Mówimy routerowi: „Jeśli widzisz IP X na zewnątrz, wyślij go do IP Y wewnątrz”. To trudne. Możliwy do przewidzenia. Nie jest to jednak skalowalne. Zarządzanie rekordami statycznymi staje się koszmarem, gdy masz dużą liczbę sprzecznych zakresów.
Inną opcją jest dynamiczny NAT, który jest często używany w połączeniu z DNS. W takim przypadku router dynamicznie przydziela dostępne publiczne adresy IP z puli. DNS eliminuje zamieszanie, zapewniając prawidłowe działanie logiki tłumaczenia, nawet jeśli wewnętrzne urządzenie hosta próbuje uzyskać dostęp do sieci zewnętrznej pod „niewłaściwą” (ale nakładającą się) nazwą. To bardzo mylące. To skomplikowane. Jeśli jednak tożsamość Twojej sieci koliduje z tożsamością innej osoby, jest to jedyny sposób na utrzymanie aktywnego połączenia.
Opis domeny pośredniczącej
Większość sieci wewnętrznych to po prostu sieci lokalne (LAN). Ten tryb działania nazywany jest domeną pośredniczącą. Użyj prywatnego adresu IP. Ruch pozostaje w sieci. Rzadko opuszcza budynek.
Ale tu jest problem. Wewnętrzne adresy IP mogą być rejestrowane. Jeśli nie zostaną zarejestrowane, będziesz mieć problemy. Nie będziesz w stanie komunikować się bezpośrednio ze światem zewnętrznym. Wymaga NAT – translacji adresów sieciowych. To rodzaj mostu. Bez tego niezarejestrowane adresy trafiają w ślepy zaułek.
„Komputery z niezarejestrowanymi adresami IP muszą używać NAT, aby komunikować się z resztą świata.”
Porozmawiajmy teraz o realizacji technicznej. Jak dokładnie skonfigurować ten system? Istnieje kilka sposobów konfiguracji NAT. Przyjrzyjmy się dalej tym opcjom.
Specjalne podziękowania dla Cisco za pomoc w napisaniu tego artykułu.
Translacja adresów sieciowych (NAT) nie jest pojedynczą konfiguracją. Jest to strategia dostosowywania. Możesz dostosować go do swojej infrastruktury. W standardowej konfiguracji router NAT wykonuje większość pracy. Pobiera niezarejestrowany lokalny adres IP z Twojej sieci prywatnej i zastępuje go zarejestrowanym adresem globalnym. Wymiana ta ma miejsce, gdy urządzenie wewnętrzne próbuje komunikować się ze światem zewnętrznym.
Weź pod uwagę limit swojego dostawcy usług internetowych (ISP). Otrzymasz zestaw unikalnych zarejestrowanych adresów IP. Adresy te nazywane są adresami „wewnętrznymi globalnymi”. To jest publiczna twarz sieci. Jednak w sieci prywatnej używasz niezarejestrowanych prywatnych adresów IP. Dzielą się na dwie grupy. Sam router NAT ma niewielki zestaw adresów „zewnętrznych lokalnych” zarezerwowanych dla siebie. Ponadto istnieje duża liczba adresów „wewnętrznych lokalnych”. Znajdują się one w domenie pośredniczącej, czyli sieci wewnętrznej, w której dzieje się większość pracy.
Router wykorzystuje te zewnętrzne adresy lokalne do tłumaczenia unikalnych adresów „zewnętrznych” na urządzenia publiczne. Większość komputerów w strefie pośredniczącej po prostu komunikuje się między sobą przy użyciu wewnętrznych adresów lokalnych. Nigdy nie muszą korzystać z Internetu. Ale co z niektórymi samochodami? Są bardzo aktywni. Komunikują się z serwerami zewnętrznymi. Przypisane są do nich wewnętrzne adresy globalne. Nie wymagają nadawania. Mają już publiczny „bilet” na dostęp.
Ścieżka pakietu przy standardowym NAT
Gdy komputer z wewnętrznym adresem lokalnym łączy się z Internetem, wysyła pakiet do routera NAT. Router nie tylko zgaduje. Sprawdza tablicę routingu. Czy ma wpis dotyczący miejsca docelowego? Jeśli tak, urządzenie rozgłasza pakiet. Tworzy także nowy wpis w tabeli translacji adresów. Ta tabela rejestruje, kto z kim się komunikuje. Jeżeli miejsca docelowego nie ma w tabeli, pakiet zostaje odrzucony. Kropka.
Po translacji router wykorzystuje wewnętrzny adres globalny do przekazywania pakietu. Odpowiada komputer w sieci publicznej. Adres źródłowy tej odpowiedzi to zewnętrzny adres globalny. Miejscem docelowym jest wewnętrzny adres globalny. Router NAT wyszukuje docelowy adres IP w swojej tablicy translacji. Znajduje dopasowanie. Konwertuje wewnętrzny adres globalny z powrotem na wewnętrzny adres lokalny. Następnie wysyła pakiet do żądanego komputera. Tylko.
Połączenia przeciążeniowe NAT
Przeciążenie NAT jeszcze bardziej poprawia wydajność. Wykorzystuje multipleksowanie, funkcję stosu TCP/IP. Dzięki temu jeden komputer może jednocześnie utrzymywać wiele jednoczesnych połączeń ze zdalnymi serwerami. Jak? Używanie różnych portów TCP lub UDP.
Nagłówek pakietu IP jest kontenerem danych. Zawiera cztery ważne informacje:
- Adres nadawcy – adres IP komputera wysyłającego dane. Przykład: 201.3.83.132
- Port źródłowy – numer portu podany przez nadawcę. Przykład: port 1080
- Adres odbiorcy – adres IP komputera odbierającego. Przykład: 145.51.18.223
- Port docelowy – Numer portu, który nadawca chce otworzyć odbiorca. Przykład: port 3021
Adresy identyfikują maszyny. Porty zapewniają unikalne połączenie. Możesz prowadzić wiele rozmów z tym samym serwerem, jeśli porty są różne. Kombinacja tych czterech liczb definiuje połączenie TCP/IP.
Numery portów mają długość 16 bitów. Teoretycznie daje to 65 536 możliwych wartości. W praktyce różni producenci różnie wyświetlają porty. Typowy system może liczyć na około 4000 wolnych portów. To wystarczy większości użytkowników. Ale podkreśla również znaczenie alokacji dynamicznej.
Dynamiczna translacja adresów sieciowych
Dynamiczny NAT działa nieco inaczej niż statyczny NAT. Oto jak to działa.
Sieci wewnętrzne (strefy pośrednie) korzystają z adresów IP, które nie zostały przydzielone przez IANA. Nie można ich routować. Nie są one wyjątkowe na skalę światową. Firma skonfigurowała router z obsługą NAT przy użyciu unikalnych adresów IP dostarczonych przez IANA.
Proces ten rozpoczyna się, gdy komputer w strefie pośredniczącej próbuje połączyć się z serwerem zewnętrznym, takim jak witryna internetowa.
- Router odbiera pakiet danych.
- Przechowuje nieroutowalny adres IP komputera w tablicy translacji.
- Zastępuje nieroutowalny adres IP nadawcy pierwszym dostępnym unikalnym adresem IP.
- Tabela mapuje prywatne adresy IP na publiczne adresy IP.
Gdy odbiorca odpowie, router sprawdza adres docelowy. Wygląda w tabeli tłumaczeń. Znajduje odpowiedni prywatny adres IP. Zwraca adres docelowy z powrotem do pierwotnego adresu nierutowalnego. Wysyła pakiet do tego konkretnego komputera.
Jeśli w tabeli nie ma dopasowania, pakiet jest odrzucany. Proces ten jest powtarzany tak długo, jak długo trwa komunikacja. To dynamiczne podejście zapisuje publiczny adres IP. Nie przepisuje ich cały czas. Pożycza je z basenu. Po zakończeniu sesji adres IP jest zwracany do wspólnej puli w celu ponownego wykorzystania.
Jak przeciążenie NAT mapuje połączenia
Przeciążenie NAT (PAT) to nie tylko zastąpienie jednego adresu IP innym. Mapuje poszczególne połączenia tak, aby jeden publiczny adres IP mógł obsługiwać dziesiątki urządzeń wewnętrznych.
To idzie tak. Komputery w sieci prywatnej wysyłają pakiety do serwerów zewnętrznych. Router NAT przechwytuje je. Pakiety nie są przekazywane natychmiast. Zamiast tego router zapisuje wewnętrzny adres IP i port źródłowy w tabeli translacji. Następnie zastępuje oryginalny adres IP swoim własnym publicznym adresem IP. Określono także nowy port źródłowy. Ten nowy port wskazuje wpis w tabeli tłumaczeń.
Gdy serwer zewnętrzny odpowie, pakiet dociera do routera. Routery sprawdzają numer portu docelowego przychodzących pakietów. Znajdują odpowiednie wpisy w tabeli. Publiczny adres IP zostanie zmieniony z powrotem na wewnętrzny prywatny adres IP. Numer portu jest resetowany do wartości oczekiwanej przez komputer źródłowy. Paczka dostarczana jest na wybrane urządzenie. Cykl ten powtarza się dla każdego kolejnego pakietu.
Router utrzymuje wpis aktywny. Licznik czasu jest resetowany przy każdym użyciu wyświetlacza. Jeśli połączenie stanie się nieaktywne, licznik czasu wygasa. Wpis został usunięty. Port ten może być używany przez inne urządzenia.
Wizualizacja transmisji w domenie pośredniczącej
Wyobraź sobie sieć pośrednią, w której cztery komputery próbują połączyć się z Internetem. Wszystkie używają tego samego publicznego adresu IP 215.37.32.203 na routerze NAT.
Oto jak routery wykorzystują porty do rozróżniania urządzeń:
- Komputer A (
192.168.32.10) łączy się z portem 400. Router przydziela mu port 1 na publicznym adresie IP. - Komputer B (
192.168.32.13) łączy się z portem 50. Router przydziela mu port 2. - Komputer C (
192.168.32.15) używa portu 3750. Router mapuje go na port 3. - Komputer D (
192.168.32.18) łączy się z portem 206. Router przydziela mu port 4.
Sieć zewnętrzna widzi cały ruch z adresu 215.37.32.203. Rozpoznaje porty 1, 2, 3 i 4. Adresy prywatne 192.168.x.x nie są widoczne. Router używa tych numerów portów do wysyłania odpowiedzi do odpowiednich urządzeń wewnętrznych.
Możesz wykluczyć określone urządzenia z tego procesu. Skonfiguruj listę dostępu. Powiedz routerowi, które adresy IP są wyłączone z NAT. Te komputery całkowicie omijają NAT. Zachowują swoje własne adresy. Wszystkie pozostałe urządzenia zostaną ponownie uruchomione na jeden publiczny adres IP.
Tutaj liczy się sprzęt. Liczba jednoczesnych transmisji zależy od ilości pamięci DRAM. Każdy wpis zajmuje około 160 bajtów. Router z 4 MB pamięci DRAM może obsłużyć około 26 214 jednoczesnych połączeń. To wystarczy w przypadku większości małych i średnich biur.
Dlaczego istnieją prywatne zakresy adresów IP?
Nie wszystkie adresy IP są takie same. Niektóre są publiczne, inne prywatne. IANA zarezerwowała niektóre pasma do użytku prywatnego. Są one zdefiniowane w dokumencie RFC 1918. Adresy te nazywane są adresami „niezarejestrowanymi”.
Próby kierowania ruchu przy użyciu tych adresów w publicznym Internecie nie powiodą się. Routery są zaprogramowane tak, aby odrzucać pakiety z niezarejestrowanymi adresami źródłowymi. Pakiet może zostać wysłany z sieci, ale pierwszy router zewnętrzny, na który trafi, odrzuci go. On nigdy nie wróci.
Istnieją trzy standardowe serie do użytku prywatnego.
- Klasa A :
10.0.0.0~10.255.255.255 - Klasa B :
172.16.0.0~172.31.255.255 - Klasa C :
192.168.0.0~192.168.255.255
Nie musisz wybierać jednego zakresu i się go trzymać. Można je również mieszać. Jest to jednak uważane za złą praktykę. Powstają konflikty. Jeśli jedna podsieć używa 192.168.1.0, a inna 192.168.2.0, połączenie ich spowoduje zamieszanie. Trzymaj się jednego zakresu w każdym projekcie sieciowym. Dbaj o przejrzystość i precyzję tras.
Implikacje NAT dla bezpieczeństwa
NAT zapewnia poziom poufności. Skanery zewnętrzne widzą tylko adres IP routera. Nie widzą wewnętrznej struktury sieci. Nie wiedzą, że za tym adresem znajdują się cztery komputery.
To nie jest zapora sieciowa. Treść nie jest filtrowana. Pakiety nie są skanowane w poszukiwaniu złośliwego oprogramowania. Następuje tylko translacja adresu. Jednakże topologia wewnętrzna jest ukryta. To już jest coś.
Przy tak wielu urządzeniach korzystających z tego samego adresu IP zarządzanie nimi staje się trudne. Aby rozwiązać problemy, sprawdź tabelę tłumaczeń. Musisz wiedzieć, które porty są przypisane do jakich użytkowników. Jeśli Twoi użytkownicy narzekają na niską prędkość, możesz sprawdzić, czy nagrania transmisji są nieaktualne lub czy port nie jest wyczerpany.
Granicą bezpieczeństwa jest router. Jeśli bezpieczeństwo urządzenia NAT zostanie naruszone, cała sieć pośrednicząca będzie zagrożona. Wszystkie transmisje stają się widoczne. Wszystkie połączenia mogą ulec zmianie.
Mamy tutaj do czynienia z kompromisem. Zapisujesz adresy IP. Zyskujesz podstawowe ukrycie. Tracisz jednak szczegółowy wgląd w ruch na poszczególnych urządzeniach. Router staje się pojedynczym punktem awarii i jedynym punktem obserwacji.
Co to oznacza dla Ciebie? Sieci są trudne do zmapowania z zewnątrz, ale jeszcze trudniejsze do debugowania od wewnątrz. Musisz polegać na tabeli tłumaczeń. Musisz zaufać timerom. Musisz także mieć nadzieję, że pamięć DRAM nie zapełni się przed zakończeniem połączenia.
Dynamiczny NAT to coś więcej niż tylko ponowne przypisanie adresów IP. Po cichu tworzy zaporę ogniową pomiędzy siecią wewnętrzną a światem zewnętrznym. Lub między siecią wewnętrzną a Internetem. Zasady są proste. NAT pozwala tylko na połączenia inicjowane z sieci wewnętrznej.
W uproszczeniu oznacza to, że komputery w sieciach zewnętrznych nie mogą połączyć się z Twoim komputerem. Chyba że Twój komputer zainicjował kontakt. Możesz przeglądać Internet. Możesz połączyć się z witryną. Możesz pobrać plik. Jednak nikt inny nie może połączyć się z Twoim adresem IP. Nie mogą go używać do podłączenia do portu w komputerze.
Są jednak wyjątki. W niektórych sytuacjach wymagany jest statyczny NAT (znany również jako mapowanie ruchu przychodzącego). Dzięki temu urządzenia zewnętrzne mogą nawiązywać połączenia z komputerami w sieci wewnętrznej. Jeśli chcesz przejść z globalnego wewnętrznego adresu IP na określony lokalny wewnętrzny adres IP, wymagany jest statyczny NAT. Zapewnia połączenie z Twoim serwerem internetowym.
Filtrowanie i rejestrowanie ruchu
Niektóre routery NAT oferują rozbudowane filtrowanie. Rejestrują również ruch. Filtrowanie pozwala firmom kontrolować, jakie typy stron internetowych odwiedzają pracownicy online. Uniemożliwia im to przeglądanie wątpliwych materiałów. Można tworzyć pliki dziennika, korzystając z dzienników ruchu. Rejestrują, które strony są odwiedzane. Na tej podstawie możesz tworzyć różne raporty.
Czym różni się NAT od proxy?
NAT jest czasami mylony z proxy. Ale są też różnice. NAT jest przezroczysty dla komputerów źródłowych i docelowych. Żadne z nich nie zdaje sobie sprawy, że wchodzi w interakcję z trzecim urządzeniem. Serwery proxy nie są przejrzyste.
Komputer wysyłający wie, że wysyła żądanie do serwera proxy. Aby móc wykonywać tę funkcję, należy go skonfigurować. Komputer docelowy identyfikuje serwer proxy jako komputer źródłowy. Współpracuje bezpośrednio z serwerem proxy.
Proxy zazwyczaj działają w warstwie 4 (transport) lub wyższej, podczas gdy NAT to protokół warstwy 3 (sieć).
W większości przypadków działanie na wyższym poziomie powoduje, że serwer proxy jest wolniejszy niż urządzenie NAT.
Prawdziwe korzyści z translacji adresów sieciowych (NAT) wykraczają poza zwykłe zapisywanie adresów IP. Złożoność zarządzania siecią jest znacznie zmniejszona. Rozważmy sytuację, w której trzeba przenieść serwer WWW lub serwer FTP na inny host. Dzięki NAT nie musisz martwić się uszkodzonymi łączami ani aktualizacją rekordów DNS. Po prostu zmień mapowanie ruchu przychodzącego w routerze, aby wskazywało nowego hosta wewnętrznego.
Ta elastyczność rozciąga się na cały intranet. Z zewnątrz widoczny jest tylko adres IP routera lub niewielka liczba adresów globalnych, co pozwala na odbudowę wewnętrznej struktury bez zakłócania łączności zewnętrznej.
NAT i DHCP współpracują ze sobą
NAT łączy się naturalnie z DHCP (protokół dynamicznej konfiguracji hosta). Możesz skonfigurować zestaw niezarejestrowanych prywatnych adresów IP (często nazywanych „domeną pośredniczącą”) w swojej sieci wewnętrznej i pozwolić serwerowi DHCP na dystrybucję tych adresów po podłączeniu urządzeń.
To ustawienie ułatwia skalowanie. W miarę rozwoju Twojej firmy i konieczności dodania większej liczby komputerów do sieci nie musisz żądać dodatkowych bloków globalnych adresów IPv4 od firmy Internet Assigned Names and Numbers Corporation (IANA). Wystarczy rozszerzyć dostępne zakresy adresów IP w konfiguracji DHCP. Router wykonuje transmisję, a Twoja sieć wewnętrzna natychmiast się rozwija.
Multihosting zapewniający odporność na awarie i szybkość
W miarę jak firmy stają się coraz bardziej zależne od Internetu, poleganie na jednym połączeniu niesie ze sobą ryzyko. Multihosting (utworzenie połączenia internetowego przez wiele punktów) staje się standardowym elementem strategii sieciowej.
Główną zaletą jest odporność na błędy. Awaria połączenia nie spowoduje katastrofalnego zamknięcia Twojej firmy. Ale kwestia dostępności (czasu pracy) nie jest jedyna. Multihosting zapewnia równoważenie obciążenia. Zapobiega przekształceniu się pojedynczej linii w wąskie gardło poprzez dystrybucję ruchu na wiele połączeń. Ta optymalizacja zmniejsza opóźnienia dla użytkowników korzystających z zasobów zewnętrznych i poprawia ogólną wydajność.
Jak protokół BGP kieruje ruchem
Sieci z wieloma hostami zazwyczaj łączą się z kilkoma różnymi dostawcami usług internetowych (ISP). Każdy dostawca przypisuje swój własny adres IP lub zakres. Routery zarządzają tymi różnymi połączeniami za pomocą protokołu Border Gateway Protocol (BGP), który jest kluczowym składnikiem zestawu protokołów TCP/IP.
W tej konfiguracji router pełni rolę kontrolera ruchu.
* Wykorzystuje iBGP (protokół Internal Border Gateway) po stronie domeny pośredniczącej do zarządzania wewnętrznymi zasadami routingu.
* Komunikuje się z routerami innych dostawców za pomocą eBGP (External Border Gateway Protocol).
Przełączenie na kanał zapasowy następuje automatycznie. Gdy router wykryje, że łącze dostawcy jest niedostępne, natychmiast przekierowuje cały ruch przez pozostałe aktywne routery. Dzieje się to bez interwencji człowieka i zapewnia działanie sieci.
Skalowanie za pomocą NAT w środowisku wielu dostawców usług internetowych
NAT odgrywa kluczową rolę w zapewnianiu skalowalnego routingu w tych złożonych ustawieniach wielu dostawców usług internetowych. Oddzielając adresy wewnętrzne od zewnętrznych, NAT pozwala sieci dostosować się do różnych wymagań ISP bez ujawniania szczegółów wewnętrznej topologii. Bardziej szczegółowe strategie techniczne można znaleźć w zasobach takich jak Cisco Enterprise Multihoming Guide, które zawierają szczegółowe ścieżki wdrażania.
Często zadawane pytania dotyczące translacji adresów sieciowych (NAT)
Co to jest translacja adresów sieciowych (NAT)?
NAT to metoda mapowania, która umożliwia lokalnym serwerom i hostom dostęp do Internetu. Pobiera wiele lokalnych prywatnych adresów IP, łączy je z jednym globalnym publicznym adresem IP i wysyła je przez router.
Czy NAT wpływa na prędkość Internetu?
Minimalny wpływ. Jeśli masz dość nowoczesny router, wpływ na wydajność jest prawie znikomy. W większości przypadków proces tłumaczenia jest przyspieszany sprzętowo.
Jakie są korzyści z używania NAT?
Oprócz bezpieczeństwa, NAT umożliwia bezpłatne ponowne wykorzystanie wielu prywatnych adresów IP. Zewnętrzne i wewnętrzne adresy IP są ukryte przed publicznym Internetem. Dodatkowo umożliwia podłączenie wielu hostów wewnętrznych za pośrednictwem zaledwie kilku zewnętrznych adresów IP, oszczędzając pamięć i koszty konfiguracji.
Jaka jest różnica między NAT i PAT?
NAT oznacza translację adresów sieciowych. PAT oznacza translację adresu portu, znaną również jako przeciążenie NAT. Obie metody konwertują prywatne adresy IP na publiczne, aby zaoszczędzić miejsce. Główna różnica polega na tym, że PAT używa numerów portów do rozróżnienia wielu urządzeń wewnętrznych korzystających z tego samego publicznego adresu IP, podczas gdy tradycyjny NAT zazwyczaj wykonuje mapowanie jeden do jednego lub jeden do wielu i nie rozróżnia portów.
Ile jest typów NAT?
Występują w kilku postaciach, z których każda służy innym celom.
* Statyczny NAT: Ścisłe mapowanie jeden do jednego niezarejestrowanych adresów IP na zarejestrowane adresy IP.
* Dynamiczny NAT: Dopasowuje niezarejestrowane adresy IP do zarejestrowanych adresów IP z puli (grupy) dostępnych adresów.
* Przeciążenie (PAT): Przeciąża wiele niezarejestrowanych adresów IP do jednego zarejestrowanego adresu IP przy użyciu różnych numerów portów.
* Nakładanie się: Występuje, gdy adres IP urządzenia w sieci publicznej jest w konflikcie z adresem IP urządzenia w Internecie (sieć zewnętrzna), a do rozwiązania konfliktu wymagane są złożone reguły tłumaczenia.
Dodatkowe informacje
Więcej informacji na temat architektury korporacyjnej i złożonych konfiguracji routingu można znaleźć w powiązanych zasobach na kolejnych stronach. Infrastruktura sieciowa stale się zmienia, a zrozumienie interakcji tych protokołów jest kluczem do utrzymania sprawności systemu.


























