OpenWRT 重新拨号后内网偶尔获取不到 IPv6 PD

2022-03-01 17:42:04 +08:00
 pk000
OpenWRT WAN 口每隔 2 天运营商会强制断线,触发 PPPoE 重新拨号。重新拨号后,有可能会出现 LAN 上获取不到 IPv6 PD ,导致内网设备无法获取新的 IPv6 地址,IPv6 中断。
请问有办法确保每次重新拨号均可正常获取 IPv6 PD 吗?
或者配置 cron 定时检查 LAN 是否有 IPv6 PD ,若无,则通过某种不需要重新拨号的方式申请 IPv6 PD ,再向内网分发 IPv6 地址。如有此方式,请提供配置样例。
3720 次点击
所在节点    OpenWrt
20 条回复
ochatokori
2022-03-01 18:08:54 +08:00
拨号能正常获取的话,写个 hotplug ,在拨号的时候重启 lan 接口?
pk000
2022-03-01 18:39:40 +08:00
@ochatokori 正常情况下貌似不需要重启 LAN 接口就会更新 IPv6 PD 的呀。就是不确定是 WAN 口拨号有什么问题导致不能获取 IPv6 PD 。
fhbyljj
2022-03-02 02:34:12 +08:00
你是不是一个 WAN 一个 WAN6
pk000
2022-03-02 08:38:17 +08:00
@fhbyljj 没有 WAN6 ,只有一个 WAN 。拨号 IPv6 地址在 WAN 上,IPv6 PD 在 LAN 上。
fhbyljj
2022-03-03 04:06:28 +08:00
@pk000 我也是只有一个 WAN ,LAN 的 IPV6 一直能自己变换
fhbyljj
2022-03-03 04:07:30 +08:00
@pk000 你可以试试把 WAN 的自动获取 IPV6 设置为手动,再创建一个 @wan 是 DHCPv6 客户端
zbinlin
2022-03-03 21:01:59 +08:00
是联通的吗?
pk000
2022-03-04 08:25:09 +08:00
@fhbyljj 好,晚点试试。

@zbinlin 电信
pk000
2022-03-23 18:37:44 +08:00
@fhbyljj 建了 @wan ,看到路由器获取了 IPv6 地址和 IPv6 PD ,但是内网 lan 上设备无法分配到 IPv6 地址。不知道是不是 lean 的 OpenWRT 是不是改过什么。
flynaj
2022-03-23 20:56:04 +08:00
你用的版本是不是 Current Stable Release - OpenWrt 21.02.2 ,如果不是的话更新一下
luoshengdu
2022-03-31 23:17:50 +08:00
1.在 wan ( pppoe 拨号)口设置中,确认有,“勾选”使用内置 IPv6 管理,获取 IPv6 地址“自动”
2.添加防火墙规则,允许 ipv6 udp 456 端口和 ipv6 的 igmp 协议进入本设备
即可解决你描述的问题,且不需要 cron
pk000
2022-04-23 18:19:09 +08:00
@luoshengdu 经长时间测试,每 2 天运营商强制断线重拨还是会有一定概率出现没有 IPv6 地址的情况,且一直都没有,直到下次重新拨号(手动或运营商强制断线重拨)。
luoshengdu
2022-04-24 15:41:41 +08:00
@pk000 我的测试这么久已经完全正常了哦,广州电信。 拨号

最近一个月,没有定时重启过路由器,完全可用自动获取到 dhcp-pd 的 v6 地址,
https://upimg.top/i/2022/04/24/6264fecd4d662.png
pk000
2022-04-25 12:13:11 +08:00
@luoshengdu 您用的是那个版本的固件?我用的是 eSir 的高大全。基于 lean 的源码。
luoshengdu
2022-04-25 15:13:22 +08:00
@pk000 我是自己编译的 x86 固件 github.com/host2318 见 2021test 固件的 config ,可以.
另外还有台 360v6 刷了 openwrt 测试了也可以
Cambrian07
2023-04-13 16:45:18 +08:00
我也是遇到了这个问题,增加了一个 hotplug 解决了

``` shell
#!/bin/sh
[ "$ACTION" = ifup ] || exit 0
[ "$INTERFACE" = wan ] || exit 0
uci set network.globals.ula_prefix="$(ip -6 route show | grep default | sed -e 's/^.*from //g' | sed 's/ via.*$//g')"
uci commit network
/sbin/ifup lan
```
tediorelee
272 天前
@Cambrian07 sorry 挖个坟问一下,这个脚本应该放在哪个位置呢?
Cambrian07
270 天前
#17
```shell
vi /etc/hotplug.d/iface/99-ipv6
chmod a+x /etc/hotplug.d/iface/99-ipv6
reboot
});
```

@tediorelee
kyon777
261 天前
@luoshengdu 大哥 靠谱啊 把这个端口加进防火墙,立马获取到 PD 了,挖坟给后面的人参考
jqtmviyu
140 天前
挖坟, 添加 ipv6 udp 456 端口 , 重启下就好了, 感谢

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/837232

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX