写点什么

IPv4 只剩 100 天了

  • 2010-11-28
  • 本文字数:1775 字

    阅读完需:约 6 分钟

互联网是基于名为 IPv4 的网络协议的,该协议是 TCP(HTTP 及聊天应用使用)与 UDP(视频与音频应用使用)的基石。它使用了 4 字节的 IP 地址(如 192.168.54.32)来识别通道中的端点(大多数人和应用都会使用 DNS 名,它会将 www.infoq.com 转换为数字化的 IPv4 地址,如 63.246.7.184)。

然而遗憾的是,IPv4 地址空间很快就要耗尽了。根据 @ipv4countdown 所述,剩下的 IPv4 地址将在 100 天之内用尽;其余下的总数量不到 1.6 亿,也就是说剩下的地址大约为 9.137.0.0 个。我们已经用完了(或者说无法再分配)245.0.0.0 个 IPv4 地址,因此他们的使用速度将是非常迅速的。该数据显示在 Hurricane Electric 的一个倒计时盘中,Hurricane Electric 则是一个 IPv6 供应商。

目前还有一些 IPv4 地址可供使用。一些早先的网络先驱还留有大量的 IP 地址(可能还未使用);由于收购的原因,单个组织可能持有互联网的某个重要部分。然而,这仅仅会将 IPv4 地址将会耗尽这个不争的事实延期几个月而已。 xkcd 于 2006 年绘制的这个互联网地图展示了顶层的8 个地址(也就是1.0.0.0),像是Apple、DEC、贝尔实验室以及波音等公司都会获得IPv4 地址的1/256,这让人感到担心。

一些人认为可以使用NAT(搭配上UPnP)来解决问题,减少对公共IP 地址的需求量,但事实却并非如此。移动网络通常都会使用IPv4 NAT 为每个设备分配一个“私有”类型的网络,比如人们在热点通常会找到10.x.x.x 网络或是192.168.x.x 网络。这些虽然不是公共地址,但路由本身仍旧需要使用IPv4 地址以正常运作。

从长远来看,唯一的解决方案就是IPv6。它会极大地增加网络空间,过去十年所开发的大多数网络工具都支持IPv6,同时操作系统本身也对其提供了良好的支持。关键问题在于IPv6 向用户公布的时间太晚了,支持IPv6 的xDSL 调试解调器还不多(大多数只支持IPv4)。英国电信公司已经开始布局其 21 世纪网络了(将电话迁移到 IP 主干网上),20 世纪的网络协议让人觉得很可笑。

IPv6 本身使用了不同于 IPv4 地址的点符号。与 4 个点分十进制不同的是,IPv6 使用了 128 位,表示为 1234:5678:90ab:cdef:1234:5678:90ab:cdef 这样一组数字。为了保持向后兼容性,IPv4 地址可以写为 0000:0000:0000:0000:0000:0000:63.246.7.184(这也有助于说明 IPv6 相对于 IPv4 所带来的大量数字)。幸好,对于任意一个以 0 开头的数字来说,0 是可以被推测出来的,因此 0:0:0:0:0:0:63.246.7.184 也表示与上面相同的地址。0 的任意连续序列都可以使用两个冒号进行替换,这样::63.246.7.184 也表达了相同的含义。

现在有几个转换机制。首先,网站既可以有 IPv4 地址(叫做 A),也可以有 IPv6 地址(叫做 AAAA)。拥有这两个地址的站点可以通过任意一种网络进行访问;系统会尝试这两个地址并返回第一个(某些系统一开始会查询 IPv6 地址,然后才是 IPv4——然而,最新的 Mac OSX 更新切换了这两者的优先级)。

IPv6 的另一个优势在于网卡可以实现自我配置。借助于探测机制,IPv6 客户端可以通过来自于 IPv6 路由器的广播探测到 IPv6 地址。接下来,客户端会使用其 Mac 地址(或是随机数)填充地址的底部,赋予本地系统唯一的地址。虽然这种机制对于客户端来说没有问题,但服务器端通常需要使用特定的 IP 进行配置以便它能够注册到 DNS 上。

某些特殊的地址目前已经在使用了。FF01:: 用作本地节点的多路广播网络(也就是说特定的机器),而 FF02:: 与 FF05:: 则分别用于本地链接(相同的网络)和本地站点的多路广播。其他的还有::1,它代表本机地址(127.0.0.1)。本地地址(自动探测到的)以 FE80:: 开头。如果你有一台支持 IPv6 网络的计算机,那么你就已经获得了一个 FE80:: 地址,与 IPv4 不同的是,每个网卡一次可以有多个 IPv6 地址。此外,IPv4 每次只会使用一个 IP 地址作为“广播”地址,而 IPv6 通常会使用本地链接或是其他广播机制代替特定的地址来广播数据。

当 IPv4 地址空间耗尽之际,各个国家将会讨论他们国内的供应,这可能要持续 6 到 12 个月。一旦完成,将不会再有新的 IP 地址可供分配,任何新的连接都只能隐藏在 NAT 之后或是迁移到 IPv6。

幸好,网络供应商与 ISP 早就注意到了这一点,他们已经在 IPv6 上投入了很多,但却没有大张旗鼓地宣传。然而,明后年提供 IPv6 连接是个当务之急;问题在于:是不是有些晚了?

查看英文原文: 100 days of IPv4 left

2010-11-28 07:553197
用户头像

发布了 88 篇内容, 共 273.6 次阅读, 收获喜欢 9 次。

关注

评论

发布
暂无评论
发现更多内容

使用分布式锁的正确姿势

张大彪

分布式锁

观测云品牌正式亮相,携手中国信通院共推国内可观测性概念与技术发展!

观测云

Javacv 音视频小工具 - 下载抖音视频

RTE开发者社区

Java 音视频 ffmpeg javacv

博睿数据赋能数字化转型,用户体验升级需要有“温度”的技术

博睿数据

等保三级多久测评一次?每年都要测评吗?

行云管家

网络安全 信息安全 等保

Alibaba 80k Star《Java面试突击手册》(全彩版)开源

Java 程序员 架构 面试 计算机

重磅发布!百度飞桨获2021全球智博会产品金奖

百度大脑

人工智能

40 个 SpringBoot 常用注解:让生产力爆表

Java 面试 框架 Spring Boot 2

开源应用中心|这款小而强大的开源博客程序,简直让人爱不释手!

开源

2021智博会全国区块链大赛暨首届“星火杯”区块链应用大赛正式启动

云计算,

花了3个小时解决了和异地女朋友一起看电影的需求(内附源码)

ZEGO即构

android 音视频 一起看电影

集齐海外主流云平台,EMQ X Cloud 正式支持 Google Cloud Platform 部署

EMQ映云科技

IoT Google Cloud AIOT 云 原生云 CTO

自动化驱动的高可用网络:爱奇艺B2网络流量自动调度系统建设实践

爱奇艺技术产品团队

流量

到底什么是区块链?是咋样的运营原理

CECBC

区块链是如何运作的、是如何防止被篡改的?

CECBC

【OpenIM原创】IM服务端docker、源码、集群部署 非常实用

OpenIM

WorkPlus即时通讯软件,满足政企局域网办公需求

BeeWorks

Android如何用代码执行shell命令

Changing Lin

9月日更

坚持客户第一!

鉴释

产品研发 静态代码分析

让全链路压测变得更简单!Takin2.0重磅来袭!

TakinTalks稳定性社区

财经违规自媒体集体扑街,必须打击违规自媒体账号

石头IT视角

ONNX 浅析:如何加速深度学习算法工程化?

拍乐云Pano

人工智能 深度学习 音视频

【Vuex 源码学习】第五篇 - Vuex 中 Mutations 和 Actions 的实现

Brave

源码 vuex 9月日更

软件测试工程师应该怎样规划自己

程序员阿沐

程序员 职业规划 软件测试 自动化测试 经验分享

相约重庆,2021 DEMO CHINA创新中国峰会倒计时六天

创业邦

WeTest21年焕新钜惠活动福利你领到了吗?

WeTest

2021年8月券商App行情刷新及交易体验评测报告

博睿数据

【IM开源推荐】前微信技术专家打造的开源的即时通讯组件OpenIM

OpenIM

北鲲云SaaS平台为生物制药研发进程带来“加速度”

北鲲云

围绕低代码开发存在的三个误解

低代码小观

程序员 低代码 企业管理 低代码开发平台 应用开发

Alibaba iOS 工程架构腐化治理实践

阿里巴巴终端技术

ios 研发效能 客户端 架构治理

IPv4只剩100天了_Java_Alex Blewitt_InfoQ精选文章