Rozumiem komunikację między komputerem zdalnym, np. serwer WWW i domowy komputer / urządzenie użytkownika mogą wystąpić tylko wtedy, gdy komputer użytkownika zainicjuje komunikację (zakładając, że zapora sieciowa / sieć jest prawidłowo skonfigurowana).
I to
- typowa sieć domowa składa się z wielu urządzeń o unikalnie wydanych adresach IP, np.
192.168.1.1
,192.168.1.2
itp - Ta sama sieć łączy się z Internetem za pomocą jednego „publicznego” adresu IP
Co ciekawe, gdy zdalny serwer wysyła odpowiedź na żądanie komputera domowego, w jaki sposób pakiety odpowiedzi są w stanie jednoznacznie zidentyfikować komputer użytkownika, gdy - i przyjmuję założenie, które może być tutaj błędne - czy zdalny serwer jest w stanie „zobaczyć” ogólny publiczny adres IP sieci?
networking
firewall
home-networking
nat
Michael Coleman
źródło
źródło
Odpowiedzi:
Adres IP nie jest jedyną rzeczą, którą widzi zdalny serwer. Widzi także Port . Port jest 16-bitową liczbą całkowitą.
Pomyśl o komputerze jako budynku mieszkalnym. Adres IP jest podobny do adresu ulicy. Port określa, które mieszkanie. Tak więc przeglądarka, klient poczty i tak dalej, wszystkie działają na jednym IP należącym do komputera, ale każdy z nich, przez system operacyjny, otrzymuje jeden lub więcej unikalnych portów do użycia.
Gdy komputer lokalny wysyła pakiet do zdalnego serwera, pakiet jest wysyłany z portu na komputerze lokalnym do portu na serwerze zdalnym. Zapora odbiera ten pakiet i wysyła go na serwer zdalny, ale robi to dopiero po zmianie z Adres IP do publicznego adresu IP lokalnej sieci i prawdopodobnie zmienia z port do innego portu wybranego firewalla.
Kiedy publiczny serwer odpowiada, wysyła pakiet z powrotem do publicznego adresu IP i numeru portu, który został podany. Zapora odbiera ten pakiet i wysyła go do dowolnego komputera, który zainicjował połączenie na tym porcie.
Jeśli zapora otrzyma pakiet skierowany do portu, z którego nie korzystał żaden komputer lokalny, zadaniem firewalla jest pozostawienie tego pakietu poza siecią lokalną. Może go po cichu upuścić lub może głośno wysłać wiadomość odrzuconą z powrotem do źródła.
Niektóre wspólne numery portów
Gdy Twoja przeglądarka wysyła żądanie do jakiegoś zdalnego serwera, żądanie to najprawdopodobniej trafia do portu 80 serwera zdalnego.
Zazwyczaj porty niskiej liczby, do 1024, są zarezerwowane do użytku przez system operacyjny. Porty o wysokim numerze, może od 32000 do 65535, są używane przez aplikacje użytkownika, takie jak przeglądarki.
źródło
port x
. czy używa bardzo rzadkiego portu, powiedzmyport#33789
jako sposób identyfikacji odpowiedzi serwera, coś w rodzaju, „Ach, dostaję pakietport#33789
to musi być z xyz_server ” ?