Edgerouter ipv6 设置详细解说,(目前固件有bug 2.0.8)

首先说明一下,有状态,无状态,
有些区域设置有状态,会成为固定ip,有些地区不会,
个人用户建议使用无状态。

首先:

interfaces / ethernet / eth0 / pppoe / 0 / dhcpv6-pd / pd / 0

这个位置设置为/56 或者 /60 不同区域可能运营商下发不一样。
然后设置哪些口获取ipv6

interfaces / ethernet / eth0 / pppoe / 0 / dhcpv6-pd / pd / 0 / interface / eth1
service :dhcpv6-stateless
prefix-id::1
host-address:::1
interfaces / ethernet / eth0 / pppoe / 0 / dhcpv6-pd / pd / 0 / interface / eth2
service :dhcpv6-stateless
prefix-id::2
host-address:::1

这里就是设置lan1,lan2口获取ipv6,
wan口不获取ipv6,自己可以添加。

service :dhcpv6-stateful 为有状态,一些地区有状态会固定ipv6,但是有些区域就不行。

service :dhcpv6-stateless 为无状态,ppoe重新拨号之后,会推送新的ipv6.

然后启用ipv6:

interfaces / ethernet / eth0 / pppoe / 0 / ipv6 / address点(+)加号

interfaces / ethernet / eth0 / pppoe / 0 / ipv6 / enable 点(+)加号

到此,如果你当前运营商下发了ipv6,就可以获取ipv6了。

看到此,大多数已经没有问题了,但是2.0.8固件有bug,目前官方没有修复。

触发条件:
1:获取的ipv6为动态ip
2:pppoe重新拨号之后。

首先设置好之后,看windows 10获取的ipv6

IPv6 地址 . . . . . . . . . . . . : 240e:13d:9ae0:1b01:b8d9:c3c8:8da6:90e7
临时 IPv6 地址. . . . . . . . . . : 240e:13d:9ae0:1b01:a968:7bd9:5ec3:395b

经过测试,两个ip都可以用,
主动连接上网的话是使用 > 临时 IPv6 地址.

然后等到pppoe重新拨号之后,你会发现上不去网了,只能重启电脑,或者重启网卡才可以。

我们暂且不重启,看一下获取的ipv6.

IPv6 地址 . . . . . . . . . . . . : 240e:13d:9ae0:1b01:b8d9:c3c8:8da6:90e7 (1)
IPv6 地址 . . . . . . . . . . . . : 240e:13d:9ae0:2201:b8d9:c3c8:8da6:90e7 (2)
临时 IPv6 地址. . . . . . . . . . : 240e:13d:9ae0:1b01:a968:7bd9:5ec3:395b (3)
临时 IPv6 地址. . . . . . . . . . : 240e:13d:9ae0:2201:a968:7bd9:5ec3:395b (4)

其中1/3 ip为最初获取的ipv6,现在已经失效了。
路由器pppoe重新拨号之后,下放了 2/4 ipv6,经过测试,是可以正常使用的。

但是,但是,但是,windows 默认使用的临时ip是第一个,而不是第二个,
也就导致了 3 ipv6失效,并没有使用 4 ipv6,这时候只能重启电脑,或者重启网卡。

pppoe下放ipv6的位置不对,所以没有排到第一位置,第一位置还是之前失效的ipv6.

这个参数不知道在哪改,可能是一个bug吧,经过测试,openwrt 是不存在这样的问题,即使pppoe重新拨号之后,不重启电脑,也是正常上网的。

我觉得用“dhcpv6-stateful ”挺好的,一直很稳定正常。

两码事,如果你是固定ip,你是触发不了这个问题的,
如果是动态ip,那么你就会遇到这个问题

没有固定ip啊,dhcpv6-stateful或是dhcpv6-stateless,地址都会变的……

那你测一下吧,电脑一直开机,然后等重新拨号之后,ip变之后,之前ip失效,试试还能不能联网。

我估计你连帖子都没怎么看,根本不明白我描述的是怎么个意思,

我两种方式都配过,都用过。
dhcpv6-stateless在路由器拨号之后,就会出现存在ipv6地址失效,不能访问网络的问题。
dhcpv6-stateful没问题,拨号之后都能正确获得地址,而且地址只有一个,不像dhcpv6-stateless一个网卡配多个地址。缺点就是安卓手机不能获得ipv6地址了。

dhcpv6-stateful 没问题的基础是你可以获取固定IP,明白吗?
不同区域运营商策略不同的,
如果你获取不到固定ipV6,你就会跟 dhcpv6-stateless 一样,出现不能访问,

当然,使用openwrt是没问题的,具体情况我帖子写的很明白了,

请问“wan口不获取ipv6,自己可以添加。”这个怎么添加。我能获取前缀,但wan口获取不到IP

interfaces / ethernet / eth0 / pppoe / 0 / dhcpv6-pd / pd / 0 / interface / eth0
service :dhcpv6-stateless
prefix-id::1
host-address:::1

这里添加就可以了,
注意eth0默认就代表了wan口,

可能运营商不同吧,我的dhcpv6-stateful给的地址不是固定ip,所以我还要找ipv6 ddns配合使用。

lz我前几天发了一个和你类似的帖子 我自己问题解决了 和你分享下
我主要问题不在获得多个ipv6地址 而是网关是24xx的v6公网地址
导致拨号路由重启后 只能重启网卡/设备以获取正确的新地址

我的解决方法如下

添加IPv6默认路由
位置:protocols / static / interface-route6
启用:
①interface-route6中输入::/0 ,点击Update List
②展开设置,next-hop-interface,下一跳路由选择 pppoe0

如此操作之后 我局域网内除了可以正确分配到ipv6地址 还有fexx内网网段v6的网关以及dns
拨号路由重启后 凭借不变的内网v6网关 dns 均能正确重新分配ipv6地址
我的问题解决了
希望可以帮到你

问题依然没有解决,
我简单的说一下我的触发方式:
1:按照上面配置正确获取ipv6,并且使用正常。
2:编辑pppoe,写入错误的密码,然后再编辑pppoe,写入错误的密码,模拟pppoe重新拨号
3:客户端为windows 10

经过第一步之后,输入ipconfig 获取的ip是:

IPv6 地址 . . . . . . . . . . . . : 201e:33d:9a51:4801:68c6:7adb:461d:38e5
临时 IPv6 地址. . . . . . . . . . : 201e:33d:9a51:4801:7dde:daae:1e4f:3070

然后经过第二次获取的ipv6是:

IPv6 地址 . . . . . . . . . . . . : 201e:33d:9a51:4801:68c6:7adb:461d:38e5
IPv6 地址 . . . . . . . . . . . . : 201e:33d:9a51:5701:68c6:7adb:461d:38e5
临时 IPv6 地址. . . . . . . . . . : 201e:33d:9a51:4801:7dde:daae:1e4f:3070
临时 IPv6 地址. . . . . . . . . . : 201e:33d:9a51:5701:7dde:daae:1e4f:3070

然后你可以发现,本地主动请求使用的ipv6是第一个临时ipv6,
第二次模拟重新拨号获取的临时 ipv6地址排在第一次之后,
但是windows 默认使用第一次获取的临时ip6,第一次获取的ipv6在重新拨号之后已经失效了,
第二次虽然获取了ipv6,并且第二次获取的临时ipv6可用,但是还是无法上网,
问题出现在推送ipv6的时候,没有保持推送在第一,

这个情况我在openwrt上面测试过没有问题,openwrt推送的ipv6 始终能保持在第一的位置,
也就是第一个ipv6失效之后,推送的新的ipv6依然能保持在第一的位置,这样路由器自动重新拨号之后,电脑不重启,不重启网卡,ipv6依然可以正常使用。