内网到外网用的是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)
(我自己的一点理解:路由器的也是有处理器的,相当于一台电脑,所以它有一个IP,一般在作为内网出品的网关中转站时,你可以设置它的IP,并能指定内网的IP段,内网的机子的IP只在在设定的IP段内就可以,但不能和网关相同,路由有一个与外网相连接的接口,它代表)
这个时候你的内网主机会自动生成一个大于1023的端口连接到路由器,路由器会记住这个IP和端口,解封装以后,他会把用户IP报文里的ip和端口换成自己的ip和端口(这个端口也是随机的),再把数据转发到目标网络,这样就和目标网络建立了连接,目标网络往回传递信息的时候就会和路由器上的那个端口请求连接,然后路由器看一下自己的映射表,他会发现这个端口是和内网的 那台主机做的 映射,所以就会把数据传给你,这样你就读到了对方的信息