路由器仅通过 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' 参数不知道是不是没有重启路由器的缘故还是得修改其他参数总之问题依旧。
总结如下,同时希望大佬指点指点:
目前感觉第三方案最接近但还需要细节上调整主要是不重复通告的问题不知道是否在 odhcp dnsmasq 服务的配置文件能找到答案,如果能在管理界面上不显示别名的接口就更好了
方案 2 中使用 ip 命令添加得时候可能是没有加 noprefixroute 参数原因系统路由表发生了改变,现象就是 br-lan 接口外出流量源地址变成了 pppoe-wan ( wan_6 )口的地址,其实如果通过修改路由表或者是某个参数也算一个曲线救国得方法,但是不知道怎么弄
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.