需求:可以访问内网资源,所有向外部网络发起的请求全部拒绝.
在 ipv4 下很好做,内网都是静态 IP,我使用的是 RouterOS 路由器,直接写一条这台机器目标地址非内网网段的连接全部 drop 的规则就好了。
但是在 ipv6 下,由 ISP 分配的前缀是会变化的,而后 64bit 的接口标识符,有的设备会遵循 IEEE EUI-64 标准,后缀也就是接口标识符保持不变,这时候使用脚本判断标识符还可以做一下相应的策略。
例如我下面上图的这台运行 ESXI 的主机,无论前缀怎么变化,它的接口标识符从未发生过变化。
而有的设备,例如安卓手机,还有运行 macOS 的电脑,接口标识符在在前缀变化后也会跟着变化,这样一来完全不知道该怎么写 ipv6 的防火墙规则了,还请各位 V 友不吝赐教.

1
ysc3839 2019 年 1 月 30 日
DHCPv6 分配固定的 IP 地址也许可以?
|
3
yzwduck 2019 年 1 月 30 日
之前有一个相关的讨论,可以参考一下 https://www.v2ex.com/t/530084
或者想办法在终端上禁用 IPv6 Privacy Extensions ? |
5
Danswerme OP @yzwduck 另外隐私扩展地址和 EUI-64 是两码事,前者是生成一个临时的 ip 地址,用来向外发起请求隐藏自己的真实地址,这就是为什么设备一般会有两个 v6 地址的原因。
后者则是根据 mac 地址计算出的接口 ID,而 Windows 和 macOS 没有使用 mac 地址来计算接口 ID,用的是其他方法随机(?)生成的接口 ID |
6
Danswerme OP |
7
yzwduck 2019 年 1 月 30 日
我是想通过禁用 IPv6 Privacy Extensions 来强制设备根据 EUI-64 使用 MAC 地址来生成后缀固定的 ipv6 地址。
不过目前我的路由器无法接入 v6 的网络,自身对 ipv6 网络也不熟悉,如有错误 希望各位 V 友能批评指教。 |