使用了路由器NAT功能后,内部网上的电脑怎样收到数据的??

来源:百度知道 编辑:UC知道 时间:2024/07/02 04:44:24
假设我的局域网有两台电脑A,B,网址分别是192.168.2.1和192.168.2.2,A,B通过交换机连接到一个路由器上外网,
路由器在公网的网址是
210.23.33.231;假设局域网的A电脑访问新浪首页,B电脑访问搜狐首页,
当路由器接收到了“新浪首页”的数据包后,它是怎样传送给A电脑的呢?

那是路由器上设置的PAT,多路复用。
比如:
1.电脑A在访问新浪首页的时候,发送的数据包源地址为192.168.2.1,并使用第4层TCP端口1096(这个端口号是随机产生的),目标地址是新浪的IP地址
2.经过路由器后映射成210.23.33.231,端口号10023(这个端口号也是随机产生的),并记录一个条目:192.168.2.1:1096对应的是210.23.33.231:10023,目标地址仍然是新浪的IP地址
3.到了新浪服务器上,服务器返回数据时,是以自己的IP地址为源地址,你的路由器外网IP:210.23.33.231:10023为目的地址
4.返回数据包到了你的路由器,转换为内网地址时,路由器会查刚才记录的条目,看到10023端口对应的是192.168.2.1,就把这个数据包给了电脑A

当然当电脑B同时访问新浪首页时,路由器记录的不仅仅是IP而且还包括端口号,因为没有这个端口号,它不知道如何将新浪返回的数据包发给内网的哪个地址

两个线程,两个通道,各管各连接