为路由器接口开启 IPv6 隐私扩展模式

2023-05-17 23:37:20 +08:00
 acbot

路由器仅通过 SLAAC 方式为局域网设备配置 IPv6 地址,由于开放端口的需要便通过 option ip6ifaceid '::192' 参数将路由器的 br-lan 接口配置成了固定后缀,目前需求实现且正常。

新需求:目前路由器 br-lan 接口只有一个公网 v6 地址,对外的 v6 流量源地址都是这个,现在想让路由器自身对外的 v6 流量源地址变成定时变换的随机地址,即在 br-lan 接口上开启 IPv6 隐私扩展模式,目前尝试了如下的方法:

1. 使用 Linux 常规的方式,修改 sysctl 配置文件

net.ipv6.conf.all.use_tempaddr=2
net.ipv6.conf.default.use_tempaddr=2
net.ipv6.conf.br-lan.use_tempaddr=2

结果:无效

2. 打算通过 hotplug + shell 的方式自己实现,核心就通过如下命令

ip -6 address add 2000:306:513:c00:880 ...

结果:正常配置双地址
问题:随机后缀生成,去重等要考虑的问题比较多!

3. 为接口配置 Aliases (别名)

config interface 'lan'

option device 'br-lan'
option proto 'static'
option ipaddr '192.168.1.1'
option netmask '255.255.255.0'
option ip6ifaceid '::192'

config interface 'lan2'

option device 'br-lan'
option proto 'static'
option ip6ifaceid 'random'

结果:路由器 br-lan 接口可以正确配置一固定一随机两个后缀的 IPv6 地址;
问题:

1 )这样配置 WEB 管理界面上就多了一个接口,看起来怪怪的!
2 )路由器下局域网设备会生成两组 IPv6 地址(格式规律就是 前缀 + 接口 ID + ****),感觉是这两个公用 br-lan 的接口分别向局域网设备通告了一次自己,增加了 option delegate '0' 参数不知道是不是没有重启路由器的缘故还是得修改其他参数总之问题依旧。

总结如下,同时希望大佬指点指点:

1570 次点击
所在节点    宽带症候群
4 条回复
lcdtyph
2023-05-18 02:04:59 +08:00
第三种方法,在 /etc/config/dhcp 加上
config dhcp lan2
option interface lan2
option ignore 1

或者第二种方法反过来,脚本里 assign 固定后缀就好了,不用自己随机生成
acbot
2023-05-18 08:55:27 +08:00
@lcdtyph 谢谢!

改个时间我试试!

你这第二种实现比较巧妙
lovelylain
2023-05-18 13:02:51 +08:00
开放端口为什么不开放 pppoe-wan 而要用
br-lan 的,本来就一个 br-lan 一个 pppoe-wan 完美符合需求吧,硬是被你都用 br-lan 整出一堆奇怪问题。
acbot
2023-05-18 13:41:30 +08:00
@lovelylain 对于举例的需求来说接口分开也算一种思路!但我不是很确定 pppoe-wan 虚接口生成的 v6 地址后缀是否可控或可配置,如果不可控防火墙这里不好限定后缀;

另外,如果我们把问题的重点落实在“开启接口隐私扩展”上,那么有思路吗?

毕竟这是一个标准且 linux 和 windows 本身都支持吧!

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

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

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

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

© 2021 V2EX