我甚至不确定我是否正确地做了这件事,但我想看看是否存在这个选项。
我的网络上运行着一台 Fedora Linux 服务器。我2600
从 ISP 那里获得了一个 GUA IPv6 前缀,并且fd56
我的网络上还设置了一个 ULA 前缀。我在 systemd-networkd 配置中为我的服务器分配了一个 ULA 前缀空间中的静态 IPv6 地址。我也启用了AcceptIPv6RA=yes
此功能,因为我想从路由器获取 GUA 前缀。由于我已经为服务器分配了一个 ULA 地址,我不希望机器接受这些 RA。
是否可以告诉系统拒绝来自特定 IPv6 前缀的 RA 但接受其他 RA?
在这种情况下,我是否错误地实施了 IPv6 ULA?我是否最好让服务器通过 RA 获取 ULA 地址,而不是静态分配它?我的网络正在运行 mDNS,因此查找服务器不是问题。我想这对我来说更像是一种家务。但是,我认为我陷入了 IPv4 思维中,不知道如何将 IPv6 地址分配给服务器。
将静态配置和自动配置 (SLAAC) 与 RA 相结合是完全没问题的。IPv6 的设计理念是系统可以/将拥有多个地址。
Systemd-networkd 支持
PrefixAllowList=
。与其这样做,不如使用
[IPv6AcceptRA] Token=
参数请求配置特定的地址后缀 (IID)。尽管自动配置的地址在大多数情况下已经稳定并且可以安全地在 DNS 中使用(因为它基于 IPv6 前缀和机器 ID 的哈希值),但指定自定义“令牌”将明确使其静态,同时仍使用 SLAAC。