正在加载,请稍候…

IPv6 ULA 生成器:为私有网络创建唯一本地地址

生成 IPv6 唯一本地地址 (ULA) 用于私有网络。了解 fd00::/8 地址空间及其在组织内部网络中的应用。

IPv6 ULA 生成器:为私有网络创建唯一本地地址

理解 IPv6 唯一本地地址

IPv6 唯一本地地址 (ULA) 是 IPv4 私有地址(10.x.x.x、172.16.x.x、192.168.x.x)的 IPv6 等价物。它们设计用于私有网络和组织内部,不会在公共互联网上路由。

IPv6 ULA 生成器:为私有网络创建唯一本地地址 插图

ULA 地址结构

ULA 地址位于 fc00::/7 前缀范围内,具体为:

  • fd00::/8 — 本地分配(最常见)
  • fc00::/8 — 保留用于未来集中分配

完整的 ULA 地址结构如下: fd | 全局 ID (40 位) | 子网 ID (16 位) | 接口 ID (64 位)

全局 ID 按组织随机生成,无需中央协调即可提供统计上的唯一性。

为什么需要 ULA

IPv6 拥有 340 万亿亿个可能的地址,为什么还需要私有地址范围?ULA 服务于特定目的:

稳定性

ULA 地址不受 ISP 或网络变化影响,保持稳定。与链路本地地址不同,ULA 在重启和网络重新配置后仍然存在。

私有通信

不应公开访问的服务(数据库服务器、内部 API、管理接口)应绑定到无法从互联网访问的地址。

IPv6 ULA 生成器:为私有网络创建唯一本地地址 插图

多网络场景

拥有多个站点的组织可以使用 ULA 进行站点间 VPN 连接。每个组织使用唯一的全局 ID 可防止网络合并时发生地址冲突。

ULA 与其他 IPv6 地址类型对比

属性 链路本地 ULA 全局单播
范围 仅单个链路 组织范围 全球互联网
持久性 是 是 是
ISP 分配 否 否 是
子网间可路由 否 是(组织内) 是
互联网可路由 否 否 是

生成 ULA 地址

RFC 4193 生成 ULA 全局 ID 的算法:

  1. 获取当前时间作为 64 位 NTP 时间戳
  2. 与生成系统的 EUI-64 标识符拼接
  3. 计算 SHA-1 哈希
  4. 使用最低 40 位作为全局 ID

这种方法确保统计上的唯一性,无需中央注册。两个随机生成的 40 位 ID 冲突的概率极低——对于任何实际部署都是可接受的。

实际 IPv6 网络设置

IPv6 ULA 生成器:为私有网络创建唯一本地地址 插图

家庭/小型办公室网络

一个 /48 ULA 前缀提供 65,536 个可能的 /64 子网:

  • 主网络:第一个 /64 子网
  • IoT 设备:第二个 /64 子网
  • 访客网络:第三个 /64 子网

企业多站点

不同的子网块可以分配给同一 /48 内的不同站点,实现清晰的寻址层次,同时保持组织凝聚力。

在常见平台上配置 ULA

ULA 地址可以通过 networkd 或 ifconfig 在 Linux 上静态配置,通过 Router Advertisement daemon (radvd) 通告,用于 Docker IPv6 网络,以及通过 PowerShell 在 Windows 上设置。大多数现代操作系统和网络设备完全支持 ULA 寻址。

ULA 与 IPv6 理念

与 IPv4 NAT(将私有地址隐藏在公共 IP 后面)不同,IPv6 理念倾向于端到端连接,配合适当的防火墙策略。大多数支持 IPv6 的设备是双栈的(同时拥有 ULA 和全局单播地址),根据目标使用合适的地址。

ULA 地址在互联网边界被过滤——具有 ULA 源或目标地址的数据包会被正确配置的路由器丢弃,提供类似于 IPv4 中 RFC 1918 的安全边界。

使用 ULA 生成器

我们的 ULA 生成器工具:

  1. 生成加密随机的全局 ID,遵循 RFC 4193
  2. 创建完整的 /48 前缀,准备进行子网分配
  3. 显示单个 /64 子网,根据您选择的子网数量
  4. 生成完整的接口地址,带有随机主机部分
  5. 以标准表示法复制,可直接用于配置

在您的网络、家庭实验室和容器化环境中使用 ULA 进行稳定、私有的 IPv6 寻址。