欢迎,来自IP地址为:18.191.239.123 的朋友



在过去的近 10 年间,一直都盛传 IPv6 将会普及。但这一直都没有发生,同时,人们对于 IPv6 是什么、如何使用它以及为什么 IPv6 不可避免都所知甚少。

IPv4 有什么缺陷

自 1981 年 RFC 791 发布以来,我们就一直在使用 IPv4。当时,计算机体积庞大、昂贵且稀有。IPv4 提供了大约 40 亿个 IP 地址,与计算机的数量相比,这似乎是一个巨大的数字。

不幸的是,IP 地址并没有被完全使用,寻址中存在间隙。例如,一家公司的地址空间可能有 254 (2^8-2) 个地址,但只使用其中的 25 个。

其余 229 个预留用于未来扩展。由于网络路由流量的方式,这些地址是不能被其他人使用的。因此,1981 年看似很大的数字,到 2022 年相对于需求来说是一个很小的数字了。

互联网工程任务组 (IETF) 在 20 世纪 90 年代初就认识到了这个问题,并提出了两种解决方案:无类别互联网域路由器 (CIDR) 和私有 IP 地址。

在 CIDR 发明之前,您可以获得三种网络大小之一:24 位(16,777,214 个地址)、20 位(1,048,574 个地址)和 16 位(65,534 个地址)。 一旦 CIDR 被发明,就可以将网络划分为子网。

例如,如果您需要 5 个 IP 地址,您的 ISP 将为您提供一个大小为 3 位的网络,这将为您提供 6 个 IP 地址。 这样您的 ISP 就可以更有效地使用地址。

私有 IP 地址允许您创建一个网络,其中网络上的每台计算机都可以轻松连接到 Internet 上的另一台计算机,但 Internet 上的计算机很难连接回您的计算机。

您的网络是私有且隐藏的。 您的网络可能非常大,有 16,777,214 个地址,并且您可以将您的专用网络划分为更小的网络,以便您可以轻松管理自己的地址。

您现在可能正在使用就是私人 IP 地址。 检查您自己的 IP 地址:如果它在 10.0.0.0 – 10.255.255.255 或 172.16.0.0 – 172.31.255.255 或 192.168.0.0 – 192.168.255.255 范围内,则您使用的是私有 IP 地址。 这两个解决方案有助于预防灾难,但它们只是权宜之计,现在是我们清算的时候了。

IPv4 的另一个问题是 IPv4 标头的长度是可变的。 当路由通过软件完成时,这是可以接受的。但现在的路由器都是用硬件构建的,在硬件中处理变长头是很困难的。这引起了将数据包传送到世界各地的大型路由器在应对负载方面遇到了问题。显然,需要一种具有固定长度标头的新方案。

不仅如此,IPv4 的另一个问题是,当分配地址时,由于互联网是美国的发明,世界其他地区的 IP 地址都是碎片化的。需要一种方案来允许地址按地理位置进行一定程度的聚合,这样可以使路由表变得更小。

IPv4 的另一个问题(这可能听起来令人惊讶)是它难以配置且难以更改。 这对您来说可能并不明显,因为您的路由器会为您处理所有这些细节。 但 ISP 遇到这类问题时会让他们抓狂。

所有这些问题都被纳入下一版本互联网标准的考虑范围。

IPv6 的特点

IETF 于 1995 年 12 月公布了下一代 IP。新版本被称为 IPv6,因为当时数字 5 已经分配给其它标准了。

IPv6 的一些功能:

  • 128位地址(3.402823669×10³⁸地址)
  • 一种逻辑聚合地址的方案
  • 固定长度标头
  • 用于自动配置和重新配置网络的协议

让我们一一看看这些功能:

IPv6 地址

关于 IPv6,大家首先注意到的就是地址数量巨大。为什么这么多?答案是,设计者担心地址组织效率低下,因为可用地址太多,所以我们就可以低效分配以实现其他目标。

因此,如果您想构建自己的 IPv6 网络,您的 ISP 很可能会为您提供 64 位网络(1.844674407×10^9 地址),并让您根据自己的喜好对该空间进行子网划分。

IPv6 地址聚合

由于有如此多的地址可供使用,因此可以稀疏地分配地址空间,以便有效地路由数据包。 因此,您的 ISP 获得 80 位的网络空间。 在这 80 位中,16 位用于 ISP 的子网,64 位用于客户的网络。 因此,ISP 可以拥有 65,534 个网络。

然而,地址分配并不是一成不变的,如果 ISP 想要更小的网络,它可以做到这一点(尽管 ISP 可能会简单地要求另一个 80 位的空间)。

高 48 位被进一步划分,以便彼此“接近”的 ISP 具有相似的网络地址范围,从而允许网络在路由表中聚合。

IPv6 定长标头

IPv4 标头的长度可变。 IPv6 标头始终具有 40 字节的固定长度。 在 IPv4 中,额外的选项导致标头大小增加。 在 IPv6 中,如果需要附加信息,则该附加信息将存储在扩展标头中,扩展标头位于 IPv6 标头之后,并且通常不由路由器处理,而是由目的地处的软件处理。

IPv6 标头中的字段之一是流量。 流是伪随机创建的 20 位数字,它使路由器更容易路由数据包。 如果数据包具有流,则路由器可以使用该流号作为表的索引(速度很快),而不是表查找(速度很慢)。 此功能使 IPv6 非常容易路由。

IPv6 的自动配置

在 IPv6 中,当计算机首次启动时,它会检查本地网络以查看是否有其他计算机正在使用其地址。 如果该地址未使用,则计算机接下来会在本地网络上查找 IPv6 路由器。

如果找到路由器,则会向路由器请求要使用的 IPv6 地址。 现在,机器已设置完毕并准备好在互联网上进行通信 – 它拥有自己的 IP 地址和默认路由器。

如果路由器出现故障,网络上的计算机将检测到问题并重复寻找 IPv6 路由器的过程,以找到备用路由器。 这在 IPv4 中实际上很难做到。

同样,如果路由器想要更改其网络上的寻址方案,它也可以。 机器会不时查询路由器并自动更改其地址。 路由器将同时支持旧地址和新地址,直到所有计算机都切换到新配置。

IPv6 自动配置并不是一个完整的解决方案。 为了有效地使用互联网,机器还需要一些其他东西:名称服务器、时间服务器,也许还有文件服务器。

所以就有了 dhcp6,它和 dhcp 做同样的事情,只是因为机器在可路由状态下启动,一个 dhcp 守护进程可以为大量网络提供服务。

IPv6 会取代 IPv4 么?

既然 IPv6 比 IPv4 好得多,为什么没有得到更广泛的采用(截至 2023 年 3 月,谷歌估计其 IPv6 流量约占其总流量的 39-43%)?

基本问题是先有鸡还是先有蛋?运行服务器的人希望服务器尽可能广泛地可用,这意味着它必须具有 IPv4 地址。

它也可以有一个 IPv6 地址,但很少有人会使用它,而且您必须稍微更改一下软件以适应 IPv6。 此外,许多家庭网络路由器不支持 IPv6。

同时,许多 ISP 不支持 IPv6,即便支持也会在用户要求下才提供,并不会主动推荐用户使用 IPv6。

相比之下,所有主流的操作系统(Windows、OS X 和 Linux)都”开箱即用”地支持 IPv6,并且已经支持多年。操作系统甚至有软件允许 IPv6 数据包在 IPv4 内”隧道”到可以将 IPv6 数据包从周围的 IPv4 数据包中删除并继续发送的位置。

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注