Jeśli mieszkasz w typowym gospodarstwie domowym, prawdopodobnie masz smartfon, laptop, telewizor Smart TV, a może i konsolę do gier, a wszystko to podłączone do Internetu w tym samym czasie. Wszystkie te urządzenia korzystają z jednego publicznego adresu IP dostarczonego przez dostawcę usług internetowych. Kiedy więc ładujesz wideo na telefon, skąd router wie, że ma wysłać wideo do telefonu, a nie do telewizora Smart TV?
Magią za tym kryje się proces zwany translacją adresów sieciowych (NAT).
Prywatne a publiczne adresy IP
Twój router tworzy prywatną, lokalną sieć w Twoim domu. Przypisuje prywatny adres IP (zwykle zaczynający się od 192.168... lub 10.0...) każdemu urządzeniu podłączonemu do Wi-Fi. Jednak tych adresów prywatnych nie można routować w publicznym Internecie.
Rola NAT-u
Po dotknięciu łącza wideo w telefonie telefon wysyła żądanie do routera. Router rozpatruje żądanie i wykonuje kilka rzeczy:
- Zapisuje prywatny adres IP Twojego telefonu w tabeli tłumaczeń.
- Zastępuje prywatny adres IP telefonu publicznym adresem IP routera.
- Przypisuje do żądania unikalny „numer portu” i wysyła go do Internetu.
Dla serwera wideo żądanie wygląda tak, jakby pochodziło bezpośrednio z routera. Serwer wysyła dane wideo z powrotem na publiczny adres IP routera, oznaczony konkretnym numerem portu.
Dostarczenie paczki
Kiedy dane wideo dotrą do Twojego domu, router sprawdza numer portu przychodzących danych, przegląda tabelę translacji i mówi: „Ach, port 55432 odpowiada żądaniu wysłanemu przez smartfon pod prywatnym adresem IP 192.168.1.5”. Następnie przekazuje dane do Twojego telefonu.
Cały proces translacji adresów i sprawdzania portów odbywa się w milisekundach i obejmuje tysiące pakietów na sekundę, dzięki czemu wszyscy w domu otrzymują prawidłowe dane bez zakłóceń.
