单臂路由负责路由,ppoepppoe 拨号,dnsdnsdns 主路由负责 wifi
问题来了,单臂路由重启后,客户端又获取到新的 v6 地址,导致不能联网,必须关闭客户端 wifi 重新获取。
inet6 2408:823c:815:4f90:ba2:bfee:284b:5871 prefixlen 64 scopeid 0x0<global>
inet6 fe80::xxxx prefixlen 64 scopeid 0x20<link>
inet6 2408:823c:815:220c:f224:ad4a:23db:5e96 prefixlen 64 scopeid 0x0<global>
inet6 2408:823c:815:220c:917e:7f16:f615:d899 prefixlen 64 scopeid 0x0<global>
inet6 2408:823c:815:4f90:73aa:9203:9d9b:adc2 prefixlen 64 scopeid 0x0<global>
已解决,感谢 @basncy
openwrt 下有几个地方需要改动下。
lan和wan接口下的 dhcp sever -> ipv6 setting 中,ra dhcp ndp 全部选择 disable,不用openwrt自带v6的设置。通过dnsmasq
config dhcp 'lan'
option interface 'lan'
option start '100'
option limit '150'
option ra_management '1'
option force '1'
option leasetime '1h'
list ra_flags 'none'
config dhcp 'wan'
option interface 'wan'
option ignore '1'
list ra_flags 'none'
卸载dnsmasq ,安装 dnsmasq-full ,然后在 /etc/dnsmasq.conf 里添加一句,eth0替换成你的lan接口。
dhcp-range = eth0, ::, constructor:eth0, ra-stateless, ra-names
[根据dnsmasq官网的信息],lease-time ,ipv4 默认1h,ipv6 默认1天。
经过多次测试,单臂路由(n1),多次重启,或者重启wan口。主路由wifi下手机/电脑获取的ipv6均不变。 再次感谢!!!
1
basncy 2022-01-10 22:18:10 +08:00
关闭 dhcp, 用 slaac. 或者缩小 dhcp 租期
dnsmasq 语法: dhcp-range=br0,::,constructor:br0,ra-stateless,ra-names |
2
vtoex0000000002 OP |
3
vtoex0000000002 OP @basncy 无用,感觉无解了。关闭了接口动态 dhcp
|
4
basncy 2022-01-11 12:09:20 +08:00
我用的是 wide-dhcpv6, pppoe 重新拨号后 systemctl restart dhcp6c@ppp0,配合我贴的 dnsmasq 配置,该路由下的 v6 就刷新了.
|
5
vtoex0000000002 OP @basncy
``` config dhcp 'lan' option interface 'lan' option start '100' option limit '150' option leasetime '12h' option ra_management '1' option force '1' option ra 'server' option dynamicdhcp '0' list ra_flags 'none' config dhcp 'wan' option interface 'wan' option ignore '1' list ra_flags 'none' ``` |
6
vtoex0000000002 OP @basncy 看 append 信息。想到一个方法,貌似只能通过旁路路由实现了。主路由添加 dhcp 功能,旁路路由只负责路由、pppoe 拨号和 dns 解析能。
|
7
vtoex0000000002 OP 主路由 v6 的 dhcp 获取通过中继的方式从旁路路由上获取。
|
8
vtoex0000000002 OP @basncy 好像有点效果,openwrt 的 dnsmasq 要换成 dnsmasq-full 。
会发现每重启一次 wan 口,会多 2 个 pv6 。貌似,通过 ipv6-test.com 测试,能成功。 dhcp-range = eth0, ::, constructor:eth0, ra-stateless, ra-names |
9
vtoex0000000002 OP @basncy ,感谢,已解决,需要把单臂路由中的 odhcp 中的 ra dhcp ndp 全部关闭。通过 dnsmasq 获取。
|