0

    42 亿个 IP 地址都被用光了?耽误我网上冲浪么?

    2023.04.14 | admin | 217次围观

    栏目介绍

    《SFKP • 计算机百科》是 SegmentFault 思否编辑部策划的专题内容,面向在 21 世纪冲浪的每一位网友,进行计算机相关知识点的科普与开放讨论。

    这两天有一种穿越了的感觉。

    犹记得上大学的时候,教计算机原理的老师就告诉我们“IPv4 地址一共有 42.9 亿个,随着互联网的发展现在已经耗尽了。”

    这两天怎么又出现了「IPv4 正式用尽」的新闻?还是由负责英国、欧洲、中东和部分中亚地区互联网资源分配的欧洲网络协调中心(RIPE NCC)宣布的。

    通知的意思是最后的 IPv4 地址空间储备池在 11 月 25 日 UTC + 1 15:35 完全耗尽,所有 43 亿个 IPv4 地址已分配完毕。这意味着没有更多的 IPv4 地址可以分配给 ISP 和其他大型网络基础设施提供商。事实上查电脑本机的ip地址,该过程自 80 年代以来就已预见到,顶级地址实际上已经在 2012 年耗尽。

    从理论上讲,IPv4 地址耗尽应该意味着不能将任何新的 IPv4 设备添加到 Internet,不过为什么我们现在还有 IP 地址可以用?IPv4 到底没没没?没了我们怎么办?耽不耽误我在网上冲浪?

    这期的 「SFKP • 计算机百科」,我们就来「SFKP • IP 地址」。

    啥是 IP?

    名词解析:IP(互联网协议)

    互联网协议(英语:Internet Protocol,缩写:IP)是用于分组交换数据网络的一种协议。IP 是在 TCP/IP 协议族中网络层的主要协议,任务仅仅是根据源主机和目的主机的地址来传送数据。

    1958 年,美国高级研究计划局(Advanced Research Projects Agency,简称ARPA)成立,这是一个专门研发军用高科技的行政机构,直接向美国国防部高层负责。

    1969 年,ARPA 创建了一个只有 4 台计算机的网络 —— 阿帕网 ARPANET,是世界上第一个运营的数据包交换网络,也是我们今天互联网的前身。

    1983 年,ARPANET 中和军事有关的部分被剥离并单独成立了 MILNET,最终成为了美国国防数据网络(DDN)的一部分;而非军用部分则逐渐演化发展成为今天的互联网(Internet)。

    其实互联网的历史远不是这三个时间节点能讲得完的,但这确实是互联网诞生过程的一个脉络。

    在互联网发明出来之后,就涉及到了机器的联网问题。网络上有那么多的计算机,如何找到想要访问的那一台呢?科学家们给出了解决方案,给每个计算机分配一个类似于身份证号码的地址就可以了,这就是「IP 地址」的由来。

    为什么给机器分配一个 IP 地址,它就能和其它 IP 地址网络通信了,这很神奇,是计算机学界多年发展出来的研究成果,但概念上就这么简单...

    说完了 IP 地址的背景和由来,再来唠一些枯燥无味的技术向的嗑。

    IP 地址一般由 32 位二进制数组成,为便于使用,常以 XXX.XXX.XXX.XXX 形式表现,每组 XXX 代表小于或等于 255 的 10 进制数,该表示方法称为点分十进制。例如我们最常见的IP 地址:192.168.1.1。

    地址一般被划分为 A、B、C、D、E 五大类,其中 E 类属于特殊保留地址。

    IP地址分类

    因为 IP 地址的唯一性,IPv4 技术可使用的 IP 地址最多可有 4,294,967,296 个(即 2 的 32 次方)。看起来很多,但由于早期编码和分配上的问题,使很多区域的编码实际上被空出或不能使用。

    加上互联网的普及,大部分家庭都至少有一部电脑,连同公司的电脑,以及连接网络的各种设备都消耗大量 IPv4 地址资源。

    就像开头新闻中提到的,IPv4 的顶级地址 2012 年就被分配完了,到 11 月 25 日 42 亿个地址也被正式耗尽。既然地址早就用完了,那运营商整天打电话找我们开卡办宽带是在忽悠人呢么?

    并不是。

    这儿就要提到另一项技术了,叫 NAT ( 地址转换) 。虽然公网 IP 发不出来了,但这个公网 IP 底下可以发私有的 IP 地址。

    具体的操作就相当于把一块钱掰成八瓣,这样至少每个人手里就都有钱了...实际情况也是这样,我们已经拼着用了好多年了...

    不过老这么凑合着也不是事儿啊,还是要想办法解决的。

    所以,就有了 IPv6。

    IPv4 和 IPv6

    有人问了,说完 IPv4 为什么直接就到了 IPv6?IPv5 你咋不说了?

    因为 IPv5 是一个测试性标准,在实验中就夭折了,所以和 v1、v2、v3 一样,我们略去不表。直到 IPv6 ,才有了实质性的巨大提升和更为丰富的应用场景。

    IPv4 升级到 IPv6,很多人常见的误解是,4 个数字的 IP 升级到了 6 个数字的 IP。但这个理解是错的。

    IPv6 里的 6 说的是「互联网协议第六版」,不是 6 个数字。其实 IPv6 的一个地址,是 128 个比特,相当于 16 个 0-255 的数字组合。

    42 亿个 IP 地址都被用光了?耽误我网上冲浪么?

    和 IPv4 相比,IPv6 有三个最大的不同:

    1. 地址空间更大。就像上面说的,IPv4 中规定 IP 地址长度为 32,而 IPv6 中 IP 地址的长度为 128。这可不是简单的倍数关系。网上有个夸张的说法,IPv6 的地址空间,能让全世界的每一粒沙子都会有相对应的一个 IP 地址。

    2. 路由表更小。上面的图就是 IPv4 和 IPv6 的路由表对比。肉眼可见的是右边比左边要简洁很多,实际效果就是大幅减小了路由器中路由表的长度,提高了路由器转发数据包的速度效率和准确性。

    3. 安全性更高。在使用 IPv6 网络中,用户可以对网络层的数据进行加密并对 IP 报文进行校验,这极大地增强了网络安全。并且 IPv6 能够提供更好的 Qos 支持,能够在保证网络高效运行的同事,确保重要业务量不受延迟或丢弃。

    既然这么好,赶紧把 IPv4 换成 IPv6 就完事儿了啊,为啥不换呢?

    其实 IPv6 早在数年前就已经推行开来了。但这不是发个通知就能实现的事情。涉及到很多技术、市场和政策层面的影响。

    目前的推进办法是,把已经支持 IPv4 的机器,更新升级到可以支持 IPv6,慢慢增加 IPv6 地址的数量。

    比如我们自己的电脑就是这样的。拿 windows 举例,网络选项里的 TCP/IP,除了 IPv4 外,现在还多支持了 IPv6.

    还有就是技术这块儿,IPv4 这个协议,从根儿上就是有很大局限性的。

    在根服务器方面,全世界 IPv4 的根服务器只有13台,1 个主根服务器在美国,其余还有 12 个辅根服务器,9 个在美国查电脑本机的ip地址,2 个在欧洲,还有 1 个在日本。

    而 IPv6 的根服务器架构,是在 IPv4 原有的 13 台基础上,新增加了 25 台。因为这件事是中国主导的,所以在中国就部署了 4 台服务器,一台主根三台辅根。这也打破了中国过去没有根服务器的困境(虽然可能并没有什么差别)。

    现在建成的 IPv6 根服务器体系,实际上是一个「测试验证」,从工程规模以及应用频率上,还不能和 IPv4 相比。

    虽然 IPv4 的根服务器只有 13 台,但是下面的各级 DNS 服务器非常多。并且 IPv4 的体系已经很成熟了,发展出了很多优化用应的办法,而 IPv6 不管是从数量还是技术上,目前都还需要不断的进化才行。

    另一个可能延迟了 IPv6 发展的原因,就是有人在“从中作梗”。

    虽然我们普通群众拿不到 IP 地址,但很多运营商、网络提供商手里其实还是有一些存货的。物以稀为贵,闹饥荒的时候,麸糠也会变成好东西。

    不过就现在来看,如果能尽快普及 IPv6 的应用,不管对个人还是整个社会来说,还是有很大好处的。所以2019 年 4 月份,工信部就发布了关于开展 2019 年 IPv6 网络就绪专项行动的通知,并设定了相关的目标。

    2019 年末主要目标为获得 IPv6 地址的 LTE 终端比例达到 90%,获得 IPv6 地址的固定宽带终端比例达到 40%;LTE 网络 IPv6 活跃连接数达到 8 亿;完成全部 13 个互联网骨干直联点 IPv6 改造。

    截至 2019 年 5 月底,我国已分配 IPv6 地址用户数达 12.07 亿,其中 LTE 网络分配 IPv6 地址用户数为 10.45 亿,固定宽带接入网络分配 IPv6 地址的用户数为 1.62 亿。IPv6地址储备量已跃居全球第一位。

    但技术是一把双刃剑。

    使用 IPv6 的好处很明显:每个设备都可以有个独立且唯一的 IP 地址。但另一个角度来说,就是我们每个人的信息都非常准确的定位在互联网上。那么隐私保护方面就更难搞了。

    一些和 IP 相关的计算机小技巧

    1. 如何查询自己的 IP 地址

    最简单的方法就是打开搜索引擎 —— 搜索「ip地址查询」,就能查到自己此刻的 IP 地址。

    觉得这个办法 low,不符合自己 Geek 的身份,那也可以用电脑直接查询 IP 地址。搜索电脑应用——命令提示符,或者直接在左下角搜索栏输入—— CMD,打开命令提示符。随后输入 —— ipconfig,按住 Enter 键,就能查询本机的 IP 地址了。

    2.如何修改自己的 IP 地址

    首先,先去查一下自己的 IP 是多少。然后断开网络,手机打开飞行模式。过几秒之后再关闭飞行模式,去查询自己的 IP 地址,你就会发现和之前的地址不一样了~

    PS:

    这种方法利用的是IP的动静态区分。使用动态IP是为了解决IP地址不够用的问题。随着网络普及,网民使用电脑的台数激增,IP地址就不够用了,动态IP技术应运而生。同一时刻不会所有人都在上网,将未联网的IP拿去给需要的人用,同理网民上网时会被分配无人使用的IP。

    3. 如何隐藏自己的 IP 地址

    隐藏 IP 这种说法其实很不实际,网络运营商总会知道你 IP。因为不管发送什么数据,我们的网络数据包里都是包含我们的 IP 的,但通过一些网络代理,可以实现“张冠李戴”,从而隐藏自己地址的。

    具体的技术细节不做分享,有的时候用一些网络代理确实可以保护我们的重要信息,但一定不要用技术来做坏事。

    就像黑客攻击时,即便是抓肉鸡做代理、找网络代理,哪怕很多人用多层跳板在国内外的服务器上反复横跳,在网警的眼里想查到原始 IP 还是很容易的。只要犯了法,只要他想。

    最后奉劝各位一句:

    不要去尝试挑战警察叔叔掌握的技术和法律的边界,不要扭曲所谓的「Geek 精神」从而误入迷途。

    - END -

    扫码加好友,聊聊那些不能说的 IP 技巧

    版权声明

    本文仅代表作者观点。
    本文系作者授权发表,未经许可,不得转载。

    发表评论