关于 IPv6 主包的另外一篇帖子 有地址但不能上网?——校园网IPv6的/64子网下DHCPv6中继以及重设OpenWRT路由 适合于没有首包绑定、单 PPPoE 拨号下只承认一个合法 IPv6 的情况,如果情况相同可以去看一下。 当然主包也是非常小丑的在一年后才发现我这边校园网存在首包绑定机制。 不过值得注意,如果是没有首包绑定的机制下,想要 IPv6 带宽也叠加的话也是要切换成 NAT66 ,然后参考我们上方的 mwan3 进行配置。或者说,因为你设备没首包绑定,中继模式下每个设备都有一个独立可用的公网 IPv6 地址了,那么你保留中继也是一个不错的选择。直连性能总会比 NAT66 来的要好。
这里大概是整篇帖子最蛋疼的一部分。在哈基米Gemini的帮助下,主包在这块足足死磕了两天。这两天里,网络状态简直是在开盲盒:要不就是路由器自己能通但局域网全死,要不就是 PC 通了但手机断网;抓包一看,要么是 ICMPv6 的包进了虚空(只有 Echo Request 没有 Echo Reply 回来),要么就是连路由都没有,直接弹 Network is unreachable。甚至有时候刚配好能用,一重启路由器又不通,在各种不通中反复横跳……
当然,你如果只是想给所有设备做个 NAT66,甚至再用 mwan3 做一个 NAT66 的多线叠加,其实并不难实现。但我认为,从不浪费网络资源的角度来看,最优雅的方案应该是:
- 让普通设备走 NAT66
- 让 PC 通过中继(Relay)模式拿到纯正的公网 IPv6
这是一个不错的方案,路由器和PC都有IPv6,当然能不能外部访问另说了,至少可以走IPv6 BT。
这也就意味着,我们必须在同一台路由器上,切出两个子网,并且还要在底层干预路由器的发包本能——对路由表进行调整。因此你也可能遇到以下的问题。
四个潜在的大坑:
1. 架构级冲突:“同前缀”引发的系统黑洞
经过长时间的抓包比对,我们发现校园网的计费网关有一个严密的拓扑设定(大概率是按物理楼层划分的 VLAN)。这就导致,无论我们用 wan 还是 vwan1 拨号,上级网关下发的 IPv6 前缀永远是同一个(例如 240c:1145:1419:1981::/64),仅仅是给每个接口分配了不同的后缀(接口 ID)。
这在 OpenWrt 的 Linux 底层网络守护进程(netifd)里简直是一场灾难。当系统发现居然有多个外网接口同时处于同一个 /64 网段时,路由表瞬间就懵了:数据包到底该从哪个口扔出去?为了防止引发不可控的二层环路,底层机制会触发保护,直接把这个网段拉黑——这就是我们在系统日志里经常看到的 unreachable 240c.../64 dev lo(黑洞路由)的罪魁祸首。
2. 万恶之源: uRPF 与“首包绑定”机制
这是校园网防私接的终极杀器。上级网关会对多拨的 IPv6 流量进行严格的源地址校验,并执行首包绑定策略:在同一个拨号会话中,谁发送了第一个 IPv6 数据包,网关就只认谁的 IP。
对于走 NAT66 的线路来说这无所谓,因为局域网所有设备的源地址都会被统一转换为路由器的 IP,不受影响。但对于走 Relay(中继)模式的 PC 线路来说,这是致命的!PPPoE 拨号成功的瞬间,路由器自身的 NTP 时间同步、DNS 查询等系统进程,极有可能抢在你的 PC 之前,用路由器自身的 IPv6 地址发出了第一个包。结果就是:网关把这条线路跟路由器的 IP 关联了。此时你的 PC 哪怕通过中继正确获取了公网 IPv6,它发出的数据包也会被网关判定为“未绑定地址”而直接丢弃。
3. 被迫的物理隔离(br-pc 与 br-lan)与 DHCPv6 割裂
为了应对上面的 Relay 需求,我们绝对不能把所有设备混在一个局域网里。我们必须进入“网络 -> 接口 -> 设备”,把电脑插的那个物理网口单独摘出来,新建一个独立的网桥命名为 br-pc,并将它的 DHCPv6 设置(包括路由通告、DHCPv6 服务、NDP 代理)全部改为 “中继模式 (Relay)”;而手机等设备留在 br-lan,走 “服务器模式 (Server)” 并开启动态伪装。这种割裂的配置,让系统默认的路由表彻底变成了智障。
- OpenWrt 的“幽灵接口”陷阱(@别名法破局)
最蛋疼的是,当你创建一个 PPPoE 接口并拨号成功后,系统会自动生成一个隐藏的虚拟 IPv6 接口(通常叫 wan_6)。这个自动生成的接口在 LuCI 网页后台是不可编辑的! 你完全无法对它进行精细化的前缀代理控制。
破局解法: 我们必须手动在“接口”页面添加新的 DHCPv6 客户端,并在“设备”下拉菜单选择“自定义”,填入 @你的拨号接口名(比如 @vwan1、@wan)。这种“别名法”能强制将自定义的 DHCPv6 接口挂载到指定的 PPPoE 逻辑链路上,让我们夺回最高控制权。
对此,我们的解决思路主要分为两步:
接口配置(网桥隔离与 DHCPv6 接管)
一、隔离lan区域,创建 br-pc 与 br-lan
你是否会有疑问:为什么非要大费周章地把物理接口拆开?不能都在同一个局域网里靠路由分流吗?
答案是:绝对不行,这是校园网“无 PD(Prefix Delegation,前缀授权)”的恶劣环境下的无奈之举。
在正常的家用宽带中,运营商机房会给路由器下发一个 PD 前缀(比如一个 /60 的大网段),路由器拿到后,可以游刃有余地把它切分成多个子网分发给局域网设备。
但我这边校园网非常抠门,它没有 PD 下发,只给了我们每个拨号口一个独立的 /64 地址。这就导致路由器就像个“没有货源的二道贩子”,它自己能上网,但没法往下分配真正的公网前缀。
因此,唯一解就是:
但是如果你把“中继”和“服务器模式”强行揉在同一个 br-lan 里,内网的 IPv6 NDP(邻居发现协议)会瞬间精神分裂。电脑和手机会互相抢夺前缀和网关的响应权,最终导致 ICMPv6 包进入虚空,路由彻底死锁。
因此,在Layer 2 直接造出两台隔离的“虚拟交换机”,是唯一且最稳的解法。 只有物理隔离,才能让它们井水不犯河水。
在路由器后台,进入 网络 -> 接口 -> 设备 页面。
找到默认的 br-lan,点击配置,在“网桥端口”中,取消勾选你电脑所连接的那个物理网口(比如 lan1 或 eth1),保存。
点击左下角 「添加设备配置」,设备类型选择 「网桥设备 (Bridge)」,设备名称:起名为 br-pc, 网桥端口:勾选刚才被你剥离出来的、专供电脑使用的物理网口(以太网适配器:lan1 或 eth1)
- 回到 网络 -> 接口,新建一个接口,名称叫 lan-pc,协议选择 静态地址,设备选择 br-pc。随便给它配一个不同于原本 LAN 的 IPv4 网段(比如 192.168.10.1/24),并开启它的 IPv4 DHCP 服务,同时记得加入 lan 防火墙区域。
(至此,电脑和手机彻底分属于两个不同的局域网段,互不干扰。)
得益于同属于lan区域,电脑和其他设备还是可以互相访问的,可能就是自动发现有些问题。
二、@别名法创建 IPv6 外网接口
由于 PPPoE 自动生成的 wan_6 等的 DHCPv6 接口无法直接在 LuCI 中编辑,我们需要手动创建并接管它们。假设我们用 vwan1 为电脑提供纯公网直通(Relay),用主 wan 为手机提供 NAT66。
进入 网络 -> 接口,点击 「添加新接口」。
创建 PC 的公网 v6 接口:名称命名为 vwan1_6,协议选择 DHCPv6 客户端。关键:在“设备”下拉菜单中选择最底部的 「自定义」,手动输入 @vwan1,点击提交。
创建手机的 NAT66 接口:同理,新建一个接口叫 wan_6,协议为 DHCPv6 客户端,自定义设备填入 @wan。
(对于其他不需要分配 IPv6 流量的多拨接口,比如 vwan2,我们直接不管它,甚至可以在对应 wan 高级设置里 获取 IPv6 地址 设置为 已禁用,避免给增加麻烦。)
值得注意的是,在原本配置中这个 DHCPv6 客户端是在 PPPoE 拨号成功后才生成。而我们手动创建,系统在 PPPoE 没有拨号成功下,系统检测到你这个 DHCPv6 客户端没用,然后直接休眠了。这个问题将在我们后续的脚本中得到解决。
另外你的_6 DHCP客户端可能会显示 链路状态: 未连接 ,正常现象,这里默认获取到 IPv6 地址后就是链接成功了。
三、lan 和 lan-pc 分别配置 NAT66 和 Relay
接口建好后,我们要对这两组通道 IPv6 基本的配置。由于校园网不下发 PD,主包呢也是恰巧在下面的每一个复选框配置下恰巧能跑,你要是发现电脑没有分配到 IPv6 地址等情况,可以重新看一下这里。
🔥 通道 A:PC 的纯公网直通 (Relay 中继模式)
这条通道由三个接口联动构成:请求端 (vwan1_6) -> 拨号主干 (vwan1) -> 局域网出口 (pc)。
配置请求端 vwan1_6 (纯客户端,只拿不发):
编辑 vwan1_6,进入 DHCP 服务器 标签页,必须保持「未配置」或「忽略」状态。
切换到 高级设置,勾选「IPv6 源路由」和「委派 IPv6 前缀」。
关键一:「IPv6 前缀分配长度」下拉菜单必须选择 已禁用。(因为我们只有 /64 没法再往下分子网了)。
关键二:「网关跃点」填入 20(或更大的数字)。这能人为降低该接口在系统内核中的路由优先级,防止路由器自身的底层进程(如 NTP、DNS)从这里发包,从而把宝贵的“首包绑定”名额留给 PC。
配置拨号主干 vwan1 (中继源头 Master):
编辑 PPPoE 拨号本体 vwan1,进入 高级设置,同样勾选「IPv6 源路由」和「委派 IPv6 前缀」,并将「IPv6 前缀分配长度」选为 已禁用,
切换到 DHCP 服务器 -> IPv6 设置:
勾选 「指定的主接口」 (将其设为 RA/DHCPv6/NDP 代理的 Master)。
将 RA 服务、DHCPv6 服务 和 NDP 代理 全部选为 「中继模式」。
下面的 「学习路由」务必取消勾选! 否则会引发 NDP 表混乱和路由死锁。
- 配置局域网出口 pc (中继接收端 Slave):
编辑绑定在 br-pc 上的 lan-pc 接口,进入 DHCP 服务器 -> IPv6 设置。
同样将 RA 服务、DHCPv6 服务 和 NDP 代理 全部选为 「中继模式」,同样 学习路由 也不需要勾选。
注意:这里的「指定的主接口」不要勾选。
(至此,电脑发出的 IPv6 邻居请求会被透明地中继给 vwan1,完美拿到公网 IP!)
❄️ 通道 B:移动设备的隐身出海 (NAT66 伪装模式)
对于留在 br-lan 里的手机等设备,我们只需要让路由器给它们发一个内网 IP,在对外链接时,在防火墙帮助下对外声称、伪装成 wan 口的 IPv6 地址。
- 沉默的主上游 (wan 与 wan_6):
确保主 wan 及 wan_6 接口的“DHCP 服务器”处于 禁用/未配置 状态,让它们做一个只管自己上网、闭嘴不发前缀的节点。
防抢跑引流:在 wan_6 的 高级设置 中,将「网关跃点」填入 10。配合上面 vwan1_6 的 20 跃点,这会强制路由器将自身产生的所有IPv6 流量全部走 wan_6 接口,防止在 vwan1 中首包绑定了路由器的地址。
- 配置的 ULA 前缀 (可选):
这一步是便于你后期 Debug 判断除了 PC 外的设备是否正常走 NAT66 了。
进入 网络 -> 接口 -> 全局网络选项。系统默认会生成一串随机的 IPv6 ULA 前缀。
排错技巧:强烈建议把它改成一个极具辨识度的前缀,比如 fd00:1145:1419::/48。
开启局域网 Server (lan):
编辑绑定在 br-lan 上的内网 lan 接口,进入 DHCP 服务器 -> IPv6 设置。
将 RA 服务 和 DHCPv6 服务 设置为 「服务器模式 (Server)」,NDP 代理 设置为 「已禁用」(NAT 模式下不需要代理邻居发现)。
切换到 IPv6 RA 设置 标签页,勾选 「启用 SLAAC」,默认路由器选为 「强制通告」,RA 标识 选择 「管理配置 (M) 其他配置 (O)」。
- 开启防火墙伪装 (NAT66 核心开关):
注意:因为我们的 wan 区域同时包含了走 Relay 的 vwan1 和走 NAT 的主 wan,绝对不能 wan 区域里直接开全局伪装,否则 PC 的直通会失效。我们必须新建一条精细化的独立 NAT 规则:
进入 网络 -> 防火墙 -> NAT 规则 (NAT Rules),点击左下角的「添加」。
常规设置:名称随意(如 nat66_wan),地址族限制选择 「仅 IPv6」,出站区域选择 「wan」,操作选择 「MASQUERADE - 自动重写源地址为出站接口 IP」。
高级设置(极其关键):找到「出站设备」下拉菜单,强制选择你的主 wan 对应的物理拨号接口(例如 pppoe-wan)。
保存并应用。
至此,只有从主 wan 出去的数据包才会被套上 NAT66 伪装,而 PC 从 vwan1 出去的流量将保持公网 IP 原样直通
策略干预(防抢跑拦截与路由表重置)
在 LuCI 界面配置完之后,你会发现两个绝望的事实:
- 我们手动创建的 @别名 DHCPv6 客户端一直在沉睡,根本不去获取 IP。
- 就算拿到了 IP,由于同 /64 前缀的冲突,系统路由表依然是一团乱麻(unreachable dev lo 黑洞),而且路由器自身依然有极大概率抢在 PC 前面发包。
这时候,就必须依靠 OpenWrt 的 Hotplug(热插拔)机制 和 自定义防火墙规则 来进行底层手术了。我们需要编写三个关键脚本。
🔪 脚本一:物理封口与别名唤醒 (99-kick-v6-aliases)
第一,解决别名接口不自动拨号的问题。让主 PPPoE 拨号成功后,强制唤醒对应的 _6 接口。
第二,防路由器抢跑。在拨号成功的瞬间,立刻下发 ip6tables 指令,彻底封死路由器自身从 vwan1 发送公网 IPv6 数据包的权限,把首包发送权 100% 留给 PC。
ip6tables -I OUTPUT -o pppoe-vwan1 -s 2000::/3 -j DROP OUTPUT 链专门管路由器自己发出的数据包,而局域网(你的 PC)发出的数据包,只是路过路由器,走的是 FORWARD 链,2000::/3 在 IPv6 规范中代表了所有的“全球单播地址(GUA)”,这里意在阻止路由器通过vwan1发包。
使用 SSH 登录路由器,在 /etc/hotplug.d/iface/ 目录下新建文件 99-kick-v6-aliases:
vi /etc/hotplug.d/iface/99-kick-v6-aliases
#!/bin/sh
# 当主接口拨号成功后,封锁本地公网输出防抢跑,并延迟唤醒对应的 IPv6 别名接口
[ "$ACTION" = "ifup" ] || exit 0
case "$INTERFACE" in
vwan1)
logger -t "v6-fix" "老大哥 vwan1 拨号成功,立即下达物理封口令..."
# 终极绝杀:瞬间封杀路由器自身的公网发包权,把首发权 100% 留给 PC
# (先删后加,防止重复添加规则)
ip6tables -D OUTPUT -o pppoe-vwan1 -s 2000::/3 -j DROP 2>/dev/null
ip6tables -I OUTPUT -o pppoe-vwan1 -s 2000::/3 -j DROP
logger -t "v6-fix" "5秒后唤醒 vwan1_6..."
(sleep 5; ifup vwan1_6; logger -t "v6-fix" "vwan1_6 唤醒指令已发送") &
;;
wan)
logger -t "v6-fix" "老大哥 wan 拨号成功,5秒后唤醒 wan_6..."
(sleep 5; ifup wan_6; logger -t "v6-fix" "wan_6 唤醒指令已发送") &
;;
esac
exit 0
脚本二:Table 100 双轨路由重构 (80-reset-route6)
作用:
这是解决同前缀路由冲突的核心(参考了 odhcpd 中继模式的局限与解决方案 中的重设路由表与热拔插的思路)。由于系统底层的路由表已经被同前缀搞懵了,我们干脆跳出三界外,为 PC 单独建立一个名为 Table 100 的 VIP 专属路由表。
同时,脚本还会负责“擦屁股”:清理掉系统自动生成的那些引发黑洞的死路由,并给走 NAT66 的手机重新指明一条出海的明路。
注意:此脚本依赖 owipcalc 包来精确计算子网,请先在终端执行
opkg update && opkg install owipcalc
# 新系统用apk
apk update && apk add owipcalc
在 /etc/hotplug.d/iface/ 目录下新建文件 80-reset-route6:
vi /etc/hotplug.d/iface/80-reset-route6
(注意:请根据你自己的实际接口名称,修改脚本开头的 PC_DEV、WAN_DEV 和 MAIN_WAN 变量)
#!/bin/sh
# 雅典娜架构:PC 专属中继通道 + 拯救手机 NAT66 全局路由
[ "$HOTPLUG_TYPE" = "iface" ] || exit 0
if [ "$INTERFACE" != "vwan1_6" ] && [ "$INTERFACE" != "wan_6" ]; then
exit 0
fi
PC_DEV="br-pc"
WAN_DEV="pppoe-vwan1"
MAIN_WAN="pppoe-wan"
. /lib/functions/network.sh
ifup_cb() {
local wan_subnets
if ! network_get_subnet6 wan_subnets "$INTERFACE"; then
return
fi
for entry in $wan_subnets; do
entry=$(echo "$entry" | tr -d ',')
addr="${entry%%/*}"
prefixlen="${entry##*/}"
[ "$prefixlen" != "64" ] && continue
if command -v owipcalc >/dev/null 2>&1; then
_wan_network=$(owipcalc "${addr}/${prefixlen}" network 2>/dev/null)
else
_wan_network=$(echo "$addr" | awk -F: '{print $1":"$2":"$3":"$4"::/64"}')
fi
[ -z "$_wan_network" ] && continue
logger -t "v6-pc-fix" ">>> 部署 PC 中继与出站隔离 <<<"
# --- 1. PC 专属双向隔离 (Table 100) ---
ip -6 rule del iif "$PC_DEV" table 100 2>/dev/null
ip -6 rule del iif "$WAN_DEV" table 100 2>/dev/null
ip -6 route flush table 100 2>/dev/null
ip -6 rule add iif "$PC_DEV" table 100
ip -6 route add default dev "$WAN_DEV" table 100
ip -6 rule add iif "$WAN_DEV" table 100
ip -6 route add "$_wan_network" dev "$PC_DEV" table 100
sysctl -w net.ipv6.conf.$WAN_DEV.proxy_ndp=1
# --- 2. 拯救主路由表 (修好手机与路由器的网) ---
# 删掉 vwan1 自动生成的坑人源地址路由
ip -6 route del default from "$_wan_network" dev "$WAN_DEV" 2>/dev/null
ip -6 route del default from "$_wan_network" dev "$MAIN_WAN" 2>/dev/null
# 删掉系统生成的防环路黑洞
ip -6 route del unreachable "$_wan_network" dev lo 2>/dev/null
# 确保主路由表中,公网前缀的回程正确指向电脑 (因为电脑用的是中继公网)
ip -6 route replace "$_wan_network" dev "$PC_DEV" metric 128 2>/dev/null
# 🚑 终极抢救:动态抓取网关,给手机的 fd00:: 加上全局出海通道!
# 🚑 终极抢救:给手机的 fd00:: 加上一条没有任何限制的全局出海通道!
ip -6 route add default dev "$MAIN_WAN" metric 1024 2>/dev/null
logger -t "v6-pc-fix" "PC 通道就绪,手机 NAT66 全局出海路由已恢复!"
done
}
ifdown_cb() {
ip -6 rule del iif "$PC_DEV" table 100 2>/dev/null
ip -6 rule del iif "$WAN_DEV" table 100 2>/dev/null
ip -6 route flush table 100 2>/dev/null
}
case "$ACTION" in
ifup) ifup_cb ;;
ifdown) ifdown_cb ;;
ifupdate) ifdown_cb; sleep 1; ifup_cb ;;
esac
exit 0
脚本二是如何重构系统路由的?
这个挂载在 Hotplug(热插拔)上的自动化脚本,专门用来收拾 OpenWrt 在面对“同前缀多拨”时留下的系统级烂摊子。它在底层主要执行了两场“外科手术”:
第一刀:为 PC 开辟“物理隔离”的 VIP 专线 (Table 100)
由于校园网在多个拨号口下发了完全相同的 /64 前缀,系统的默认路由表会陷入逻辑死锁。脚本的解法是:惹不起躲得起。
它利用 Linux 的策略路由(Policy Routing),独立于主路由表之外,新建了一个名为 Table 100 的专属路由表,并立下死规矩:
这样一来,PC 的 Relay 直通流量被完全隔离在主系统混乱的路由逻辑之外,实现了真正的“专线专供”。
第二刀:清理路由黑洞,抢救 NAT66 全局出海通道
PC 的专线建好了,但此时留在主路由表里的手机和路由器自身依然处于“断网”状态。脚本紧接着做了三件事来“擦屁股”:
清理死路由:精准删掉系统防御机制生成的那个坑人的 unreachable ... dev lo 黑洞路由,以及错误重叠的默认源地址路由。
理顺内网回程:在主路由表中明确宣告,这个公网 /64 前缀目前被分配给了 br-pc 接口,防止系统迷路。
恢复手机出海:最关键的一步,给留在 br-lan 里走 NAT66 的移动设备,重新注入一条指向主 wan 口的全局默认路由(跃点数设为 1024 作为兜底)。
经过这两刀,PC 直通(中继)与 手机隐身(NAT66)双轨完美并行,彻底破解了单 IP 绑定与同前缀冲突的死局。
#####💡 主路由表都指给了 PC,手机是怎么没断网的?
你可能会一个看似致命的逻辑矛盾:
我们在脚本里写了 ip -6 route replace "$_wan_network" dev "$PC_DEV",在主路由表里宣告“凡是去往这个公网 /64 前缀的包,全都给我扔到 br-pc(电脑)里去”。那手机从外网回来的包,岂不是也会被错误地扔给电脑,导致手机断网?
这就是 Linux 网络栈(Netfilter)最精妙的魔法所在了:NAT 连接跟踪(Conntrack)的优先级,永远高于常规路由表!
手机发包出门(套上隐身衣):手机带着内网的 ULA 地址(比如 fd00::2)发出请求,命中脚本里的兜底路由走 wan 口。在出门瞬间,触发了咱们之前配的 nat66_wan 伪装规则。手机的源 IP 被强行改成了路由器的公网 IP。同时,底层的 Conntrack(连接跟踪)系统 在小本本上记下一笔:“这个端口发出的包,其实是内网 fd00::2 这台手机的”。
外网回包到达(半路截胡):服务器的回包来到了路由器,目标 IP 是路由器的公网 IP。如果此时直接查路由表,包确实会被错误地扔给电脑。但是!在查路由表之前,Conntrack 拦住了这个包!
真相大白(精准回家):Conntrack 翻开小本本,瞬间在底层把这个包的目标 IP,替换回了手机的真实内网 IP fd00::2。换皮完成之后,包才被送进路由表。路由器一看目标是 fd00::,立刻把它投递给了对应的 br-lan 接口。手机完美上网,根本没有触发那条指向电脑的公网路由!
🟢 终极配置:打通入站防火墙,点亮 BT/PT 绿灯
到了上面那一步,你的 PC 其实已经能顺利拿到公网 IPv6 并且正常上网了。但你会发现,BT/PT 下载软件的监听端口依然是阻塞(黄灯)状态。
这是因为 OpenWrt 的防火墙默认会拦截外部主动发起的入站请求,我们需要在防火墙中允许。
进入 网络 -> 防火墙 -> 通信规则 (Traffic Rules) 页面。
滑到最底部,点击左下角的 「添加」,新建一条规则:
名称:随便起,比如 Allow-PC-IPv6-Inbound
限制地址族:选择 「仅 IPv6」
协议:选择 「TCP/UDP」
源区域:选择 「wan」(代表来自公网的请求)
目标区域:选择你的 PC 所在的区域,通常是我们前面绑定的 「lan」。
目标 MAC 地址(强烈推荐):在下拉菜单里选中你电脑的 MAC 地址。这样防火墙就只会放行去往这台特定电脑的公网请求,不会暴露局域网内的其他设备,安全感拉满!
操作:选择 「接受 (Accept)」。
点击 保存并应用。
注意⚠️ :即使你在防火墙策略里面允许了入站,但是上级网关策略可能直接禁止了,不过有了公网 IPv6 地址之后,BT效率肯定会高一些的。
**至此,NAT + Relay 混合架构网络已经配置完成。
- 让普通设备走 NAT66
- 让 PC 通过中继(Relay)模式拿到纯正的公网 IPv6**