在很多年前就听说IPv4地址(我们现在常用的IP地址就是版本4,文章下面都简称IP地址)已经耗尽,为啥现在还是用的好好的?难道各种新闻报道骗人?
IP地址在2011年的时候所有的公网IP已经分配完。
注:公网IP是具有全球唯一性,能够在互联网访问,私网和公网概念有空再聊。
那为何新接入网络还有公网IP可用?我们接下来就讲讲运营商通过多层NAT,压榨公网IP思路。
1.没有压榨过的网络结构
没有压榨公网IP,这时候两个节点拨号上网运营就需要分配两个公网IP:123.1.1.1,123.1.1.10。有几个节点就要有多少个公网IP
2.压榨之后的网络结构
压榨公网IP,这时候还是两个节点拨号上网运营分配了两个运营商保留地址:100.64.1.1,100.64.1.2(这些地址是可以重复使用,类似于家用的私网地址)。真正分配出去的公网IP是123.1.1.1,让这两个节点的公用这个地址。当然运营商可以让几十个几百个节点公用一个公网IP。这样节省出来的公网IP,可以卖给需要独立固定地址客户。
3.压榨之后的问题
1)端口数量不够用,通过NAT端口复用上网,这时候每建立一个连接需要占用一个端口,一个公网IP的端口范围是0至65535,电脑上的每个联网的进程都会占用一个端口号。比如P2P下载工具需要跟大量的IP地址建立连接,如果你是未被压榨过的公网IP够用,如果你是压榨过的这时候端口的数量就不好说了。
2)外网端口映射远程访问失败,在外地网络想要访问家庭内的设备是不行的,因为,真正的公网IP是在运营商的路由器上,外网只能方位到运营商路由器,而你的配置端口映射的权限在自己的无线路由上。
4.解决方案
1)打电话要求运营商把你的地址变为公网IP,通常电信很迅速的帮你改为公网IP。移动这种方案行不通,因为本身移动自己的公网IP数量就不多。
2)外网访问内网远程这个问题,可以使用向日葵、或者teamview进行远程。
3)可以家庭内的设备VPN至外网VPN服务器(通常使用阿里云搭建一个VPN节点),出差外地设备这时候拨入至外网VPN服务器,这样以外网VPN服务器作为中转点,进行穿透至内网。
5.QQ是如何穿透内网通讯
我们现在即时通讯软件是如何穿透内网?
QQ通讯方式
首先是PC1和PC2电脑都登录QQ,这时候PC1和PC2与外网QQ服务器建立管道(TCP三次握手,视频语音使用UDP方式),PC1需要将信息发送至PC2时候,首先PC1通过管道发送信息至外网的QQ服务端,然后QQ服务端判断后发送至与PC2建立的管道。
注:触发的主体是PC为主要建立管道端才可实现,这也是为何通讯软件需要通过服务端进行,未来IPv6时代,公网IP和私网IP消失的时候,服务端的概念将会被弱化,又有谁知道下一波的机会在哪呢?