CentOS 上的 Xen、网桥和多个 IP

CentOS 上的 Xen、网桥和多个 IP

有一台分配了 5 个 IP 地址的新服务器。我想使用 Xen 来运行多个具有各种服务的 VM。

这是我第一次尝试安装Xen,我使用本教程作为指导方针。停留在一开始:他们谈论用网桥替换 eth0 上的单个 ip br0。我的服务器有 5:和eth14 个别名eth1:1...eth1:4

网络配置应该是什么样的?

  1. 完全取代eth1的网桥,然后在网桥上添加4个别名?
  2. 网桥只能替换 5 个 IP 中的一个吗?

请原谅我的蹩脚问题,第一次来到这个森林。

答案1

1 对 xen 的建议,如果您决定使用经典桥(与 ovs),请手动设置,因为脚本一开始并不适合我(单个网卡被锁定)

像这样的事情应该可以桥接工作:

auto lo br0
iface lo inet loopback

iface br0 inet static
        address 192.168.128.7
        netmask 255.255.255.128
        network 192.168.128.0
        broadcast 192.168.128.127
        gateway 192.168.128.126
        dns-nameservers 172.16.2.200
        bridge_ports eth1
        bridge_stp off
        bridge_fd 0
        #bridge_hello 2
        #bridge_maxage 12

iface eth1 inet manual

现在,在每个来宾操作系统上,您将获得一个“eth0”接口(rfr.bridge_fd=0),如果您为该接口分配一个 IP 地址,它将位于 br0 桥上,并且能够像主机一样执行所有操作,鉴于没有任何东西阻止它(netfilter等)

为了完整起见,然后编辑 /etc/sysctl.conf (假设这里是 debian,sry)并根据您的网络可能需要进行设置

net.ipv4.conf.eth1.proxy_arp = 1
net.bridge.bridge-nf-call-ip6tables = 0
net.bridge.bridge-nf-call-iptables = 0
net.bridge.bridge-nf-call-arptables = 0

并执行 sysctl -p 来提交它们。这会禁用 netfilter 干预网桥。或者,您也可以使用 iptables 来执行此操作。从我的脑海中,类似这样的东西(它们可能并不都需要),但由于我不使用这些,这只是为了提供一个想法:

iptables -I FORWARD -m physdev --physdev-is-bridged -j ACCEPT
iptables -I FORWARD -m physdev --physdev-in vif1.0 -j ACCEPT

一旦您的来宾操作系统启动,就会显示 vif1.0(或者可能命名有点不同)界面,您可以使用经典工具(ip、ifconfig 等)检查主机上的网络。

答案2

eth1:1您需要:通过摆脱别名eth1:4,在现有的 eth1 接口上设置桥接,然后继续生活。

相关内容