你有没有想过这样一个问题:你家里可能有好几台手机、电脑、平板,但宽带运营商只给你一个公网IP地址,它们是怎么同时上网的?为什么所有设备显示的对外IP都是一样的?
答案就在你家的路由器里,它运行着一个叫NAT的机制。
1. 目前常用机制
- 不再强求每台主机都有独⽴的公⽹IP地址(可理解为翻斗花园这个地址是全球唯一的,所有快递员都知道这个地方)
- 约定,每个局域⽹中的IP不能重复(可理解为每个小区内的楼号不能一样)
- 约定,不同局域⽹中的IP允许重复(可理解为不同的小区内可以有一样的楼号)
为⼀个局域⽹分配置⼀个外⽹IP做为局域⽹内所有机器访问互联⽹的对外IP地址,由路由器再给内
⽹分配IP地址,这样⼀个IP地址就可以代替很多机器,从⽽节省了IP资源
2. 内⽹中的机器如何去访问外⽹的资源,外⽹的响应⼜如何返回给请求的机器?

返回的时候按照原路由逐个节点返回即可,路由中的每个节点都会把源IP替换成⾃⼰的IP,并维护
⼀个关系映射表,记录⼀下是由哪个内⽹IP地址发送来的数据,找到后返回即可
由上图可⻅,运营商的⼀个外⽹IP可以承载很多个⽹络设备上⽹