如果校园网严格限制实名使用,只能给设备分发单个 /128 地址,没有分发IPv6前缀前缀,且使用NDP代理的中继模式也无法正常下发公网IPv6地址,那么只能使用NAT66进行IPv6配置。
由于NAT66和IPv4的NAT工作原理类似,需要将私网IPv6请求在网关处进行统一的IPv6地址转换,性能较直接使用公网IPv6地址上网有一定降低。
NAT66是在仅获得单个 /128 地址的校园网环境下,让内网设备访问 IPv6 互联网的可靠方案。其核心是让路由器下的设备使用本地私有地址(ULA),并在路由器出口处统一转换为 WAN 口的公网 IPv6 地址。
第一步:确认或设置 ULA 前缀
NAT66 需要为内网设备分配一个本地私有 IPv6 地址段(ULA, Unique Local Address)。OpenWrt 通常会自动生成一个以 fd 开头的 /48 前缀,你可以在 网络 → 接口 → 全局网络选项 中查看 IPv6 ULA 前缀。
如果该字段为空,你可以手动填写一个,例如 fd12:3456:7890::/48,或者直接使用系统生成的默认值。这个前缀将用于内网设备寻址,不需要是公网地址。
第二步:配置 WAN6 接口
这一步的目的是告诉路由器:不要向上游请求 IPv6 前缀,并关闭可能干扰 NAT66 的源路由功能。
如果不存在 WAN6 接口
新建wan6接口,协议DHCPv6客户端,设备选择wan口所在的以太网适配器,防火墙区域选择与wan口相同的区域
编辑 WAN6 接口
- 在“常规设置”中,找到
请求指定长度的IPv6前缀,将其设置为已禁用 - 重要:切换到“高级设置”标签页,找到
IPv6源路由,取消勾选。 - 在“DHCP服务器设置”中,若未配置则忽略;若已配置,勾选
忽略此接口,IPv6设置中RA 服务、DHCPv6 服务、NDP 代理均为已禁用 - 保存并应用
命令行等效操作
uci set network.wan6.reqprefix='no'
uci set network.wan6.sourcefilter='0'
uci commit network配置完成wan6后,OpenWrt首页概览中,应显示IPv6上游,且获得了公网IPv6地址 
第三步:配置 LAN 接口(分配 ULA 地址)
现在,让 LAN 接口的 DHCP 服务器向内网设备分发上一步中确定的 ULA 地址,并强制它们使用路由器作为默认网关。
LuCI
- 进入 网络 → 接口,点击 LAN 的 编辑。
- 切换到 DHCP 服务器 标签页
- 在 IPv6 设置 或类似区域,确认
RA服务处于服务器模式,DHCPv6服务和NDP代理设置为已禁用,以确保设备正常获取 ULA 地址。 - 再进入 IPv6 RA 设置 子标签,找到
默认路由器,将其设置为强制通告,勾选启用SLAAC,RA标识设置为其他配置(O)
- 保存并应用。
命令行等效操作
uci set dhcp.lan.ra_default='2' # 2 通常代表 "forced"
uci commit dhcp第四步:在 WAN 防火墙区域开启 IPv6 伪装(核心步骤)
这是启用 NAT66 的关键,必须在 WAN 区域(而不是 LAN 区域)开启 IPv6 伪装。
LuCI
- 进入 网络 → 防火墙 → 区域。
- 找到 wan 区域,点击右侧的 编辑。
- 切换到 高级设置 标签页。
- 勾选 IPv6 伪装 (IPv6 Masquerading) 选项。该选项在较新的 OpenWrt 中对应的就是 masq6 功能。
- 保存并应用。
- 同时,请确认 LAN 区域的 转发 (Forward) 策略为 接受 (Accept),以确保内网流量可以流向 WAN。
命令行等效操作
# 通常 wan 是 @zone[1],但建议先通过 uci show firewall 确认
uci set firewall.@zone[1].masq6='1'
uci commit firewall第五步:启用系统 IPv6 转发(必需)
即使防火墙开启了伪装,内核层面的 IPv6 转发也必须打开,否则路由器不会转发内网设备的数据包。
命令行操作(LuCI没有对应项目)
通过 SSH 登录路由器,编辑 /etc/sysctl.conf 文件,确保或添加以下内容
net.ipv6.conf.default.forwarding=2
net.ipv6.conf.all.forwarding=2
net.ipv6.conf.default.accept_ra=2
net.ipv6.conf.all.accept_ra=2保存后,执行 sysctl -p 使其立即生效,或直接重启路由器。
第六步:应用所有更改并验证
重启路由器是最稳妥的方式,可以确保所有网络、防火墙和内核参数完全生效。
在连接的设备上,访问test-ipv6.com或ip.sb进行验证
评论栏