CentOS 禁用 IPv6 SLAAC EUI-64 地址生成

CentOS 禁用 IPv6 SLAAC EUI-64 地址生成

在 CentOS 7.9.2009 版本上手动分配静态 IPv6 地址时,我注意到正在生成另一个(第二个)IPv6 地址,即所谓的 EUI-64,其中包含地址主机部分中间的 ff::fe。我想删除它并只保留手动分配的地址,但不幸的是无法做到。目前在接口下我有以下参数。

/etc/sysconfig/network-scripts/ifcfg-br0

界面如下:

DEVICE=br0
BOOTPROTO=static
NM_CONTROLLED=no
ONBOOT=yes
USERCTL=no

TYPE=Bridge
MACADDR=01:02:03:01:02:03
MTU=9000
    
IPADDR=MY_PUBLIC_IPV4
PREFIX=29
NETWORK=MY_PUBLIC_IPV4_NETWORK

DNS1=8.8.8.8
DNS2=8.8.4.4

IPV6INIT=yes
IPV6_AUTOCONF=no
DHCPV6C=no
IPV6ADDR=MY_GLOBAL_IPV6/48
IPV6_DEFAULTGW=MY_GLOBAL_IPV6_GATEWAY
IPV6_MTU=9000

ZONE=public

接口本身正在启动,L2 和 L3 网络在 v4 和 v6 上运行良好,但是当我发出命令时

ip addr show dev br0

我不仅看到了静态配置的 ipv6,还看到了基于 EUI-64 生成的第二个 ipv6。我想删除这个第二个 IPv6。如何在 CentOS 中做到这一点?

我还从所有区域删除了 dhcpv6-client 服务,以查看是否会改变任何内容,但事实并非如此。

firewall-cmd --zone=internal --remove-service=dhcpv6-client --permanent
firewall-cmd --zone=home --remove-service=dhcpv6-client --permanent
firewall-cmd --zone=public --remove-service=dhcpv6-client --permanent
firewall-cmd --zone=block --remove-service=dhcpv6-client --permanent
firewall-cmd --zone=dmz --remove-service=dhcpv6-client --permanent
firewall-cmd --zone=drop --remove-service=dhcpv6-client --permanent
firewall-cmd --zone=external --remove-service=dhcpv6-client --permanent
firewall-cmd --zone=trusted --remove-service=dhcpv6-client --permanent
firewall-cmd --zone=work --remove-service=dhcpv6-client --permanent

之后,我重新加载了防火墙,以确保万无一失。

firewall-cmd --reload 

如何在 CentOS/RHEL/FEDORA 中摆脱该 EUI-64 地址?

跑步:

Linux server 3.10.0-1160.6.1.el7.x86_64 #1 SMP Tue Nov 17 13:59:11 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

我试图删除的有问题的 IPv6 地址具有范围:范围全局 mngtmpaddr 动态,即我们在这里不讨论链接本地地址,即不是 fe80::

答案1

就我而言,

IPV6_AUTOCONF=no 

在接口配置下。还必须在/etc/sysconfig/network

然后 SLAAC 被完全禁用,EUI-64 地址也被禁用。

相关内容