睿诚科技协会

ipv4向ipv6过渡的技术

双栈技术

双栈是过渡策略中最基础、最核心的技术,它指的是在同一个网络节点(如路由器、服务器、个人电脑)上,同时运行 IPv4 和 IPv6 两个协议栈

ipv4向ipv6过渡的技术-图1
(图片来源网络,侵删)
  • 工作原理

    • 一个支持双栈的设备拥有两个独立的 IP 地址:一个 IPv4 地址和一个 IPv6 地址。
    • 当设备需要与其他通信时,它会根据目标地址的类型(IPv4 或 IPv6)自动选择使用哪个协议栈进行通信。
    • 你的电脑可以同时访问一个纯 IPv6 的新网站和一个纯 IPv4 的老网站。
  • 优点

    • 无缝连接:理论上,只要通信双方都支持双栈,就可以直接通信,无需任何额外的转换或隧道。
    • 最理想的最终状态:这是 IPv6 部署的最终目标,网络中的所有设备都支持双栈,IPv4 和 IPv6 将长期共存。
  • 缺点

    • 地址消耗:每个设备都需要一个 IPv4 地址和一个 IPv6 地址,在过渡初期会消耗更多的 IPv4 地址资源。
    • 管理复杂性:网络管理员需要同时维护和管理两套网络地址和路由协议,增加了运维的复杂性。
  • 应用场景

    ipv4向ipv6过渡的技术-图2
    (图片来源网络,侵删)
    • 骨干网和数据中心:运营商和大型企业首先在核心网络部署双栈,以实现内部流量的 IPv6 化。
    • 服务器:新的服务器和应用强烈建议部署双栈,以便同时服务 IPv4 和 IPv6 用户。
    • 终端用户:现代操作系统(如 Windows, macOS, Linux, iOS, Android)都已原生支持双栈。

隧道技术

隧道技术主要用于在 IPv4 网络“海洋”中“打通”一条 IPv6 的“隧道”,使得孤立的 IPv6 网络或设备能够通过 IPv4 网络进行通信,它将 IPv6 数据包封装在 IPv4 数据包中进行传输。

手动隧道

  • 工作原理:由网络管理员手动配置隧道端点,一个 IPv6 路由器将 IPv6 数据包封装在 IPv4 包中,发送到对端的另一个 IPv4 路由器,该路由器解封装并转发原始的 IPv6 数据包。
  • 优点:配置简单,适用于连接两个固定的 IPv6 站点。
  • 缺点:配置繁琐,无法用于动态变化的客户端(如个人电脑)。
  • 常见类型IPv4/IPv6 手动隧道。

6to4 隧道

  • 工作原理:这是一种自动隧道,无需手动配置,它使用一种特殊的 IPv6 地址(2002::/16),其中包含了封装端点的 IPv4 地址,任何设备只要拥有一个全球唯一的 IPv4 地址,就可以自动生成一个 6to4 IPv6 地址,并与其他 6to4 网络通信。
  • 优点:自动化程度高,易于部署,适合没有获得正式 IPv6 地址的机构快速接入 IPv6。
  • 缺点
    • 性能问题:流量必须经过公共的 6to4 中继路由器,这些路由器通常性能不佳,成为瓶颈。
    • NAT 问题:如果设备位于 NAT 之后,其 IPv4 地址不是公网地址,则无法建立 6to4 隧道。
    • 已过时:由于上述问题,6to4 已被业界废弃,不再推荐使用。

6in4 隧道

  • 工作原理:这是目前最常用、最稳定的隧道技术之一,它将 IPv6 数据包直接封装在 IPv4 数据包中,与 6to4 不同,它需要手动配置隧道的两端,并且通常使用 AICc (Anything-In-4) 协议(协议号 41),这意味着 IPv4 路由器必须允许协议 41 的流量通过。
  • 优点:稳定可靠,性能优于 6to4,是许多隧道broker(如 Hurricane Electric)提供的服务基础。
  • 缺点:需要手动或通过 DHCPv6 等方式配置两端的 IPv4 地址,且需要网络管理员在防火墙上开放协议 41。
  • 应用场景:个人用户或小型企业通过隧道broker(如 tunnelbroker.net)获得 IPv6 连接。

Teredo 隧道

  • 工作原理:Teredo 是一种专门为 IPv6 穿透 NAT 而设计的隧道技术,它将 IPv6 数据包封装在 UDP 数据包中(使用特定的 UDP 端口),这样就可以像普通 UDP 流量一样穿过大多数类型的 NAT 设备。
  • 优点:解决了在 NAT 环境下无法建立隧道的问题,使得位于 NAT 后面的设备也能获得 IPv6 连接。
  • 缺点
    • 性能开销大:多层封装(IPv6 -> UDP -> IPv4)增加了延迟和 CPU 开销。
    • 依赖中继服务器:需要公共的 Teredo 中继服务器和 Teredo 服务器来帮助通信。
    • Windows 默认支持:早期 Windows 系统曾用它作为默认的 IPv6 接入方式,但现在已优先使用其他方法。
  • 应用场景:作为最后的手段,为没有其他 IPv6 接入方式的、位于 NAT 后面的 Windows 客户端提供基本的 IPv6 连接能力。

协议转换技术

当通信双方只有一种协议(一个纯 IPv6 客户端想访问一个纯 IPv4 服务器)时,就需要协议转换技术,它相当于一个“翻译官”,在中间设备上进行协议和地址的转换。

NAT64 / DNS64

这是目前最主流、最推荐的协议转换方案,专门用于IPv6 客户端访问 IPv4 服务器的场景。

  • 工作原理

    ipv4向ipv6过渡的技术-图3
    (图片来源网络,侵删)
    1. DNS64:当一个 IPv6 客户端向 DNS 服务器查询一个纯 IPv4 域名(如 www.example.com,其 A 记录为 0.2.1)时,DNS64 服务器会:
      • 获取到 IPv4 地址 0.2.1
      • 将这个 IPv4 地址嵌入到一个特定的 IPv6 地址前缀中(通常是 64:ff9b::/96),生成一个伪造的 IPv6 地址64:ff9b::c000:201)。
      • 将这个伪造的 IPv6 地址返回给 IPv6 客户端。
    2. NAT64:IPv6 客户端向这个伪造的 IPv6 地址发送请求,请求到达 NAT64 网关后,NAT64 网关会:
      • 解析出 IPv6 地址中包含的原始 IPv4 地址 0.2.1
      • 将 IPv6 数据包“翻译”成 IPv4 数据包,发送到真正的 IPv4 服务器 0.2.1
      • 当 IPv4 服务器返回响应时,NAT64 网关再将其“翻译”回 IPv6 数据包,发回给客户端。
  • 优点

    • 对客户端透明:IPv6 客户端无需做任何修改,以为自己在和一个纯 IPv6 地址通信。
    • 部署集中:只需要在网络边缘(如运营商出口)部署 NAT64/DNS64 网关即可为整个网络提供服务。
  • 缺点

    • 非对称性:它只解决了“IPv6 访问 IPv4”的问题,无法解决“IPv4 访问 IPv6”的问题。
    • 应用层网关问题:对于复杂的应用层协议(如 FTP、SIP),NAT64 可能需要 ALG(Application Layer Gateway)来辅助解析,否则会出问题。
    • 性能瓶颈:所有流量都经过 NAT64 网关进行转换,可能成为性能瓶颈。

SIIT (Stateless IP/ICMP Translation)

  • 工作原理:一种无状态的转换技术,直接在 IP 头和 ICMP 头层面进行转换,不维护会话状态,它是 NAT64 的基础理论,但通常不直接部署,而是作为 NAT64 的一部分。
  • 优点:无状态,部署简单,性能相对较好。
  • 缺点:功能有限,无法处理所有场景,通常与 DNS64 配合使用。

代理服务器

  • 工作原理:这是一种传统的应用层网关,一个 HTTP 代理服务器,IPv6 客户端连接到代理,代理再代表客户端去访问 IPv4 的 Web 服务器。
  • 优点:实现简单,可以针对特定应用进行优化。
  • 缺点通用性差,每种应用(如 FTP, SMTP, DNS)都需要一个专门的代理服务器,无法一劳永逸。

总结与过渡策略

技术类别 具体技术 主要用途 优点 缺点 当前状态
双栈 双栈 根本性过渡,长期共存 理想、无缝 地址消耗、管理复杂 核心和最终目标
隧道 6in4 穿越 IPv4 网络 稳定可靠 需手动配置,防火墙支持 广泛用于站点间和用户接入
Teredo 穿越 NAT 解决 NAT 问题 性能差,依赖中继 备用方案,已不主流
协议转换 NAT64/DNS64 IPv6 访问 IPv4 对客户端透明 非对称、性能瓶颈 主流的访问转换方案
代理服务器 特定应用访问 实现简单 通用性差 辅助手段,非主流

过渡策略通常是组合使用这些技术:

  1. 初期阶段:在核心网络和数据中心部署双栈,对于无法获得 IPv6 地址的用户或分支机构,使用 6in4 隧道技术提供临时的 IPv6 接入。
  2. 中期阶段:随着 IPv6 内容的增多,部署 NAT64/DNS64,让已经使用 IPv6 的用户能够无缝访问海量的纯 IPv4 互联网资源。
  3. 长期目标:逐步扩大双栈的部署范围,减少对隧道和转换技术的依赖,IPv4 网络将萎缩,成为一个“孤岛”,大部分流量在 IPv6 网络中传输,并通过 NAT64/DNS64 等技术与剩余的 IPv4 网络互通。

从 IPv4 到 IPv6 的过渡不是一个“一刀切”的切换,而是一个多种技术并存的、长期的、渐进式的演进过程。双栈是基础,隧道是过渡手段,协议转换是补充

分享:
扫描分享到社交APP
上一篇
下一篇