Networking
路由器如何決定數據包的目的地?
我有一個基本的網路問題。兩台 PC 在 WLAN 上進行通信。兩台 PC 都位於路由器或調製解調器後面。
兩台 PC 具有相同的公共 IP。大多數情況下,該公共 IP 是路由器或調製解調器的。這些路由器和調製解調器後面可能有不止一台 PC。PC如何通信?我可以理解數據包可以到達那些路由器或調製解調器,然後到達 Internet,但那之後呢?在數據包中,目的IP設置為公共IP。當數據包返回時,路由器或調製解調器如何決定將數據包發送到哪裡?任何人都可以向我解釋一下。
這個謎團背後的大部分機制都是NAT 偽裝:
- 您的 PC 與外部通信
例如,您的 PC 在專用網路上,IP 為 10.1.2.3。
您的路由器會記住 PC IP/埠,並且它已初始化與遠端 IP/埠 (WAN) 的連接。因此,當在同一通道上有回复時,路由器會將數據包轉發回位於其 LAN 側的 PC。
- 外部設備與您的 PC 通信
在這種情況下,分機。設備初始化連接,因此路由器不知道應該將數據包轉發到哪個 10.xxx 客戶端。
這就是路由器需要特定設置的原因,例如,如果您的 PC 恰好是 Web 伺服器(http 埠)
HTTP (WAN) ==> (LAN) 10.1.2.3:80
也就是說,來自 HTTP 埠的數據包會發送到埠 80 上的內部 LAN 地址 10.1.2.3(您的 PC)。