如何在 Debian 中手动设置链接本地地址?

如何在 Debian 中手动设置链接本地地址?

我正在尝试使用手动分配的链路本地地址来获得更有意义的路由表。我在 /etc/sysctl.conf 中禁用了所有接口的自动配置

net.ipv6.conf.all.autoconf=0

并在 /etc/network/interfaces 中配置所有地址

allow-hotplug eth1
iface eth1 inet manual
iface eth1 inet6 static
    address fe80::A dev eth1
    netmask 64

iface eth1 inet6 static
    address 2002:db8::A
    netmask 64
    gateway fe80::B
    dns-server 2002:db8::C

但是,当我启动接口时,不仅获得了第二个自动生成的本地链路地址,而且还显示了一条错误消息:

Waiting for DAD... Error: inet6 prefix is expected rather than "fe80::A dev eth1/64".
Error: inet6 prefix is expected rather than "fe80::A dev eth1/64".
Done

是否有可能实现我想要的,还是我被迫坚持使用 EUI-64?

答案1

首先,禁用链路本地地址的自动配置似乎在 stretch 中不起作用,因此需要删除自动配置的地址。以下是有效的 /etc/network/interfaces 配置

allow-hotplug eth1
iface eth1 inet manual
iface eth1 inet6 static
    address fe80::a
    netmask 64

iface eth1 inet6 static
    address 2001:db8::a
    netmask 64
    gateway fe80::b
    dns-server 2001:db8::c

    post-up ip address del fe80::a:b:c:d/64 dev eth1

相关内容