避免接口上的 IPv6 链路本地地址

避免接口上的 IPv6 链路本地地址

我有一个虚拟 Xen 主机连接到一组 VLAN 的设置。在 Dom0 上,我为每个 VLAN 设置了一个网桥以连接 DomU。网桥在 /etc/network/interfaces 中设置如下:

auto eth0
iface eth0 inet manual

auto eth0.1
iface eth0.1 inet manual
  vlan_raw_device eth0

auto br1
iface br1 inet manual
  bridge_ports eth0.1

对于大多数这些接口,我不希望 Dom0 可访问,我只希望它能够桥接。

然而,使用 IPv6,每个接口都会自动获取 fe80::/64 网络上的链路本地地址,这通过让 Dom0 在所有接口/VLAN 上可用而有效地破坏了我的安全性。

我想我可以使用 iptables 阻止所有传入数据包,但完全避免任何 IPv6 地址似乎是一个更干净的解决方案。

有没有办法在链路层而不是IP层上建立一个接口?

这是 linux/debian (抱歉我最初错过了这个细节......)

(master) 844$ cat /etc/issue.net 
Debian GNU/Linux 5.0
(master) 845$ uname -a
Linux master 2.6.26-2-xen-amd64 #1 SMP Sun Jun 20 20:51:58 UTC 2010 x86_64 GNU/Linux

答案1

看起来您正在运行 Debian 变体,并且至少是 Linux。您可以放入一个文件/etc/sysctl.d以在接口或所有接口上禁用 IPv6。我已启用 IPv6,但这是我用来禁用 IPv6 的文件。最初,我禁用了所有内容,然后在启用 IPv6 时禁用了各个接口。您应该能够禁用您的网桥。

# 80-禁用-ipv6.conf

#net.ipv6.conf.default.disable_ipv6 = 0
#net.ipv6.conf.all.disable_ipv6 = 0
#net.ipv6.conf.lo.disable_ipv6 = 0
#net.ipv6.conf.eth0.disable_ipv6 = 0
#net.ipv6.conf.virbr0.disable_ipv6 = 0
#net.ipv6.conf.virbr1.disable_ipv6 = 0

相关内容