teredo怎样隧道

联启 网络工具 12

本文目录导读:

teredo怎样隧道-第1张图片-电脑手机工具软件下载 - 免费实用工具合集 | 联启科技

  1. 核心原理:封装与解封装
  2. 关键组件
  3. 你可以在哪里看到或使用 Teredo?
  4. 当前状况与局限性

Teredo 是一种IPv6 过渡技术,主要用于解决 IPv4 网络(即当前绝大多数网络)无法直接访问 IPv6 资源的问题。

它的核心原理是在 IPv4 网络中“挖一条隧道”,将 IPv6 数据包封装在 IPv4 数据包里传输

下面我用分步的方式详细解释其工作原理和过程:

核心原理:封装与解封装

Teredo 隧道的基本工作流程可以分为以下几步:

  1. 假设前提:

    • 用户主机 A 只有公网或内网 IPv4 地址,没有 IPv6 地址。
    • 用户主机 A 想要访问一个只有 IPv6 地址的服务器 B。
    • 需要一台 Teredo 服务器和一个 Teredo 中继(Relay)。
  2. 第一步:客户端获取 Teredo IPv6 地址

    • 主机 A(Teredo 客户端)首先向一个已知的 Teredo 服务器发送一个“请求”数据包(这是一个 IPv4 数据包)。
    • Teredo 服务器收到请求后,会返回一个特定的 Teredo IPv6 地址给主机 A。
    • 关键:这个 Teredo IPv6 地址并不是随机的,它内部嵌入了主机 A 的公共 IPv4 地址和 UDP 端口号,这样,任何知道这个 Teredo 地址的主机,就能知道该通过哪个 IPv4 地址和 UDP 端口来找到主机 A。
  3. 第二步:封装 IPv6 数据包

    • 主机 A 想要给 IPv6 服务器 B 发送一个正常的 IPv6 数据包。
    • 但主机 A 不会直接发送,因为底层网络是 IPv4 的,它会进行封装
      • 内层:原始 IPv6 数据包(源地址是刚才获取的 Teredo 地址,目标地址是服务器 B 的 IPv6 地址)。
      • 外层:新加上一个 IPv4 头部和数据(源地址是主机 A 的真实 IPv4 地址,目标地址是 Teredo 中继或服务器 B 的 IPv4 地址)。
      • 封装后形成一个 UDP 数据包,通过 IPv4 网络发送出去。
  4. 第三步:在 IPv4 网络中传输

    • 这个双层数据包像普通 IPv4 数据包一样,通过互联网路由器传输到目标。
    • 中间的 IPv4 路由器完全看不懂里面还有一个 IPv6 数据包,它们只负责传递外层 IPv4 数据包。
  5. 第四步:到达 Teredo 中继(Relay)

    • 这个封装后的数据包最终会到达一个特殊的设备——Teredo 中继
    • Teredo 中继位于 IPv4 和 IPv6 网络的交界处。
    • 核心任务:中继会解封装这个数据包,即撕掉外层的 IPv4 和 UDP 头部,取出原始的 IPv6 数据包。
    • 中继将这个真实的 IPv6 数据包通过它的 IPv6 接口,发送到纯 IPv6 网络中去,最终到达 IPv6 服务器 B。
  6. 第五步:反向过程(服务器 B 回复数据)

    • 当 IPv6 服务器 B 回复数据时,目标地址是主机 A 的 Teredo IPv6 地址。
    • 这个回复的 IPv6 数据包发送到 IPv6 网络后,会找到最近的 Teredo 中继(因为 Teredo 地址前缀告诉路由器这是 Teredo 地址)。
    • Teredo 中继读取回复数据包的目标地址(主机 A 的 Teredo 地址),从中提取出主机 A 的真实 IPv4 地址和 UDP 端口号。
    • 中继将回复数据包再次封装成 IPv4+UDP 数据包,通过 IPv4 网络发送给主机 A。
    • 主机 A 收到后解封装,取出 IPv6 回复。

关键组件

  • Teredo 客户端:你使用的 Windows 或 Linux 系统(通常会内置 Teredo 功能,如 Windows 的 teredo 服务)。
  • Teredo 服务器:用于辅助客户端获取 Teredo 地址,本身不转发普通数据流量。
  • Teredo 中继(Relay):负责真正的流量封装和解封装,位于 IPv4/IPv6 网络边界。

你可以在哪里看到或使用 Teredo?

  • Windows:默认在启用 IPv6 时开启,你可以用 netsh interface teredo show state 命令查看状态。
  • Linux:需要安装 teredomiredo 软件包。
  • 游戏主机:早期的 Xbox 360 和 PS3 曾大量使用 Teredo,用于解决 NAT 穿越问题,让玩家能联机(特别是当玩家处于不同 NAT 类型下时)。

当前状况与局限性

  1. NAT 穿透:Teredo 的一个主要优势是它能够穿透 NAT(网络地址转换)(如家庭路由器),因为它可以在 IPv4 UDP 包中模拟 TCP 或 UDP,而大多数家庭路由器都允许 UDP 包通过。
  2. 性能问题:Teredo 隧道速度和延迟通常比原生 IPv6 差,因为它额外增加了封装和解封装的开销。
  3. 安全风险:由于 Teredo 可以穿透防火墙,被某些网络安全管理员视为安全风险。
  4. 逐渐被淘汰:随着全球 IPv6 部署的增加,以及更优的隧道技术(如 6to4、6in4、VPN 等)和原生 IPv6 的普及,Teredo 在很多现代操作系统(如 Windows 10 后期版本、Windows 11、macOS、Linux)中已不再是默认首选技术,甚至在 Windows 中被默认禁用。

Teredo 隧道 = 在 UDP 上构建的 IPv6 隧道。 它通过封装技术,将 IPv6 数据包伪装成 IPv4 + UDP 数据包,从而在纯 IPv4 网络中创造出两条“隧道”,让 IPv6 流量得以穿越,并通过 Teredo 中继 在 IPv4 和 IPv6 网络之间进行转换,它最大的价值是解决了“客户端在内网且有 NAT 环境”下的 IPv6 访问问题。

标签: IPv6过渡

抱歉,评论功能暂时关闭!