1. 程式人生 > >簡單理解SNAT回流中的概念:路由器怎麽知道外網返回的數據是局域網中哪臺主機的

簡單理解SNAT回流中的概念:路由器怎麽知道外網返回的數據是局域網中哪臺主機的

計算機 自己的 機器 sna 報文 nat com 做的 3.5

內網到外網用的是NAT技術(地址封裝)外網到內網用的是端口映射(PNAT)計算機的端口又65535(0-65534),你說的那些有名氣的端口大多都是0-1023之間的你說的這個問題很簡單,但首先你要懂得數據是通過端口來傳輸的,路由器會記住機器用那個地址的那個端口發出去的信息比如: 192.168.0.2(內網主機地址)----192.168.1.1(內網網關,一般是你路由器的地址)-123.52.1.1(路由器WAN口地址,ISP給你發的一般是臨時的)----123.52.1.2(目標主機IP) 這個時候你的內網主機會自動生成一個大於1023的端口連接到路由器,路由器會記住這個IP和端口,解封裝以後,他會把用戶IP報文裏的ip和端口換成自己的ip和端口(這個端口也是隨機的),再把數據轉發到目標網絡,這樣就和目標網絡建立了連接,目標網絡往回傳遞信息的時候就會和路由器上的那個端口請求連接,然後路由器看一下自己的映射表,他會發現這個端口是和內網的 那臺主機做的 映射,所以就會把數據傳給你,這樣你就讀到了對方的信息。

參考:

https://zhidao.baidu.com/question/2073975904211508908.html

http://www.360doc.com/content/11/0419/09/2614615_110685387.shtml

簡單理解SNAT回流中的概念:路由器怎麽知道外網返回的數據是局域網中哪臺主機的