请问内网IP是如何转换成外网IP的?

1 外网IP已经被用完了,大部分普通用户都是使用的内网ip
2 内网IP访问互联网的时候,也是有自己的外网IP地址的
3 这个外网IP是不是就是一整个小区或者更大范围内的用户公用的外网IP?
4 如果3成立,那是不是就代表一个公网IP下对应很多个用户,那岂不是无法根据公网IP锁定用户了?
5 如果3不成立,那这个外网IP是哪来的?外网IP不是已经使用完了么?

首先,内网外网的说法很不科学,应该是私有IP和公网IP。
1,公网IPv4已经分配完了,但是还有IPv6,这个是用不完的
2,访问公网服务器的时候,公网服务器当然会看到一个公网的IP访问它
3,运营商的NAT机制很复杂的,不能一概而论,有些时候实际上是你一个人在用一个IP的,不一定有人跟你共用;有时候你可能会有多个公网IP,访问不同的服务器的时候
4,只根据公网IP不一定能确定你的位置,但是根据IP+端口号,再结合运营商的NAT映射表和客户信息数据库,是可以准确定位你的。

nat技术

img

img

img

NAT 转换有三种类型:

静态地址转换(静态 NAT)- 本地地址和全局地址之间的一对一地址映射。
动态地址转换(动态 NAT)- 本地地址和全局地址之间的多对多地址映射。转换在可用的基础上进行:例如,如果有 100 个内部本地地址和 10 个内部全局地址,则任何时候都只能转换 100 个内部本地地址中的 10 个地址。动态 NAT 的这种限制使得它在用于生产网络时没有端口地址转换那么实用。
端口地址转换 (PAT) - 本地地址和全局地址之间的多对一地址映射。此方法也称为过载(NAT 过载)。例如,如果有 100 个内部本地地址以及 10 个内部全局地址,PAT 使用端口作为附加参数来提供乘数效应,从而支持重复使用 10 个内部全局地址中的任何一个地址,重复次数高达 65,536 次(这取决于通信流是基于 UDP、TCP 还是 ICMP)。

img