我有一台使用 KVM 运行虚拟机的主机。我从托管公司获得的每个额外 IP 都绑定到特定的虚拟 MAC 地址,并且只能与此 MAC(他们的路由器配置)配合使用。
我得到了 vmbr0,它是一个 eth0 桥。现在我需要给一个虚拟机分配两个 IP,它们绑定到两个不同的 MAC。我能想到的唯一方法是给虚拟机分配两个网络设备(eth0 和 eth1),它们有不同的 MAC。问题是它们使用同一个网络。
此处的/etc/network/interfaces
配置(111.111.111.x 和 b:e:e:f:: 是占位符,我的 ISP 要求网络掩码为 255.255.255.255)
auto eth0
iface eth0 inet static
address 111.111.111.36
broadcast 111.111.111.63
netmask 255.255.255.255
pointopoint 111.111.111.1
gateway 111.111.111.1
iface eth0 inet6 static
address b:ee:f:301::2
netmask 64
up ip -6 route add b:ee:f:300::1 dev eth0
down ip -6 route del b:ee:f:300::1 dev eth0
up ip -6 route add default via b:ee:f:300::1 dev eth0
down ip -6 route del default via b:ee:f:300::1 dev eth0
auto eth1
iface eth1 inet static
address 111.111.111.43
broadcast 111.111.111.63
netmask 255.255.255.255
pointopoint 111.111.111.1
gateway 111.111.111.1
iface eth1 inet6 static
address b:ee:f:301:30::2
netmask 64
up ip -6 route add b:ee:f:300::1 dev eth1
down ip -6 route del b:ee:f:300::1 dev eth1
up ip -6 route add default via b:ee:f:300::1 dev eth1
down ip -6 route del default via b:ee:f:300::1 dev eth1
但是,在这种设置下,网络无法工作,当我从 eth1 中删除网关部分时,我在 syslog 中收到以下消息(并且第二个 IP 不起作用):
Apr 14 13:50:36 VM kernel: [ 907.043036] martian source 111.111.111.43 from some.ip, on dev eth1
Apr 14 13:50:36 VM kernel: [ 907.043084] ll header: 00:50:56:00:04:98:00:26:88:76:18:18:08:00
有什么办法可以实现这个功能吗?经过一番研究,我发现不能在同一个网段上使用两个网络接口。但我需要找到一种方法来设置 2 个 IP 地址(最好使用两个网络设备,以便于防火墙)。
答案1
我为我的盒子使用了 3 个 IP,但虚拟接口如下所示。不知道这是否适合您的情况...
auto eth0 eth0:1
iface eth0 inet static
metric 100
address 111.111.111.36
broadcast 111.111.111.63
netmask 255.255.255.255
pointopoint 111.111.111.1
gateway 111.111.111.1
hwaddress ether 11:11:11:11:11:11 //updated
iface eth0 inet6 static
address b:ee:f:301::2
netmask 64
up ip -6 route add b:ee:f:300::1 dev eth0
down ip -6 route del b:ee:f:300::1 dev eth0
up ip -6 route add default via b:ee:f:300::1 dev eth0
down ip -6 route del default via b:ee:f:300::1 dev eth0
iface eth0:1 inet static
metric 200
address 111.111.111.43
broadcast 111.111.111.63
netmask 255.255.255.255
pointopoint 111.111.111.1
gateway 111.111.111.1
hwaddress ether 22:22:22:22:22:22 //updated
iface eth0:1 inet6 static
address b:ee:f:301:30::2
netmask 64
up ip -6 route add b:ee:f:300::1 dev eth1
down ip -6 route del b:ee:f:300::1 dev eth1
up ip -6 route add default via b:ee:f:300::1 dev eth1
down ip -6 route del default via b:ee:f:300::1 dev eth1