我没胆量犯错 才把一切错过
--- 林夕 《我对不起我》---
一文了解NAT机制,代理服务,内网穿透
1 再谈 NAT 机制
NAT机制我们在解决IP地址不足的问题中提到过。为了解决IP地址不足的问题,采取了私有IP与公网IP的策略:
- 私有IP是随机分配的,保证在局域网中不重复,在不同子网中可以重复!
那么这样在网络通信过程中势必会造成问题,因为私有IP并不是唯一的,所以私有IP不能出现在公网通信中的。解决这个问题的机制就是NAT机制。NAT机制即在路由器进行转发时将报文源IP更换为路由器WAN口IP,**进行一次源IP地址替换!**这样就可以私有IP就不会出现在公网中!并且在通信过程中够可以层层向下找到唯一的主机!
上图中,NAT 路由器将源地址从 10.0.0.10
替换成全局的 IP 202.244.174.37
;NAT 路由器收到外部的数据时, 又会把目标 IP 从 202.244.174.37
替换回10.0.0.10
。
- 这个转换的基础是:在 NAT 路由器内部,有一张自动生成的,用于地址转换的表NAPT;
- 当
10.0.0.10
第一次向163.221.120.9
发送数据时就会生成表中的映射关系。
此时就会有一个新问题!应该局域网中的多台主机在经过路由器路由转发后,源IP都变成了路由器的WAN口IP,那么这样服务端发送回的报文到达路由器时,目的IP是路由器的WAN口IP。那么路由器如何知道这个报文是要传送给局域网中的哪台主机呢?
- 这时候 NAPT 来解决这个问题了,使用 IP+port 来建立这个关联关系!
路由器之中,进行转发时,维护了一张