栏目介绍
《SFKP • 计算机百科》是 SegmentFault 思否编辑部策划的专题内容,面向在 21 世纪冲浪的每一位网友,进行计算机相关知识点的科普与开放讨论。
这两天有一种穿越了的感觉。
犹记得上大学的时候,教计算机原理的老师就告诉我们“IPv4 地址一共有 42.9 亿个,随着互联网的发展现在已经耗尽了。”
这两天怎么又出现了「IPv4 正式用尽」的新闻?还是由负责英国、欧洲、中东和部分中亚地区互联网资源分配的欧洲网络协调中心(RIPE NCC)宣布的。
通知的意思是最后的 IPv4 地址空间储备池在 11 月 25 日 UTC + 1 15:35 完全耗尽,所有 43 亿个 IPv4 地址已分配完毕。这意味着没有更多的 IPv4 地址可以分配给 ISP 和其他大型网络基础设施提供商。事实上,该过程自 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 位二进制数组成,为便于使用,常以 http://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 的数字组合。
和 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 个在美国,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 技巧