部分二级路由器环境下无法使用IPV6的问题,我们可以通过NAT的方式解决
官网资料NAT6 and IPv6 masquerading
https://openwrt.org/docs/guide-user/network/ipv6/ipv6.nat6
网友的资料
https://lwz322.github.io/2018/10/07/IPv6_NAT.html#%E7%A1%AE%E8%AE%A4ipv6%E6%8E%A5%E5%85%A5
一、环境检查
首先你的路由器固件要支持IPV6,且能获取到可用的IPV6地址
二、安装插件
安装nat6转发插件(7月13日的固件默认已安装好了,这步骤跳过)
opkg update
opkg install kmod-ipt-nat6
三、一键配置命令
将下面的命令粘贴到TTYD终端
echo "net.ipv6.conf.default.accept_ra=2" >> /etc/sysctl.conf
echo "net.ipv6.conf.all.accept_ra=2" >> /etc/sysctl.conf
uci set network.globals.ula_prefix="$(uci get network.globals.ula_prefix | sed 's/^./d/')"
uci commit network
uci set dhcp.lan.ra_default='1'
uci commit dhcp
touch /etc/hotplug.d/iface/99-ipv6
cat > /etc/hotplug.d/iface/99-ipv6 << EOF
#!/bin/sh
[ "\$ACTION" = ifup ] || exit 0
iface_dhcp=wan_6
iface_route=pppoe-wan
[ -z "\$iface_dhcp" -o "\$INTERFACE" = "\$iface_dhcp" ] || exit 0
ip6tables -t nat -I POSTROUTING -s \`uci get network.globals.ula_prefix\` -j MASQUERADE
gw=\$(ip -6 route show default | grep \$iface_route | sed 's/from [^ ]* //' | head -n1)
status=\$(ip -6 route add \$gw 2>&1)
logger -t IPv6 "Done: \$status"
EOF
/etc/init.d/network restart
注意倒数第9和10行的接口按实际情况更改
如下图,我的都是wan
进入TTYD 输入改好的代码然后回车,等几十秒路由器网络重启完成,重新连接