我正在尝试与KVM建立桥接网络,但我无处可去.有关于这个主题的文档和教程,但它们似乎都有冲突或者没有提供足够的信息.我想知道是否有人可以给我一个关于如何使其工作的高级概述.我自己可以自己解决细节(配置接口,添加路由等),我只需要大局的帮助:一切是如何互连的.
我有一台安装并运行KVM的RHEL5服务器.它在同一VLAN中有两个物理网卡eth0和eth1.我想将eth1用于guest虚拟机和网络其余部分之间的所有流量,并在可能的情况下为主机管理,guest虚拟机迁移等保留eth0.我并不挑剔哪一个获得默认路由,尽管如果我们能将它设为eth0会很好.所有客人都将拥有静态IP.我希望在添加新的guest虚拟机时,只需要在guest虚拟机本身内设置网络配置.基本上,我想要这个:
eth0:所有主机流量
eth1:所有访客流量
如果这是不可能的,或者将是愚蠢/困难,请接受任何其他建议.指向现有文档的指针可能没有用,因为我已经完成了所有内容.
谢谢你的帮助.
更新
好的,这是我到目前为止所拥有的:
> eth0按正常方式配置静态IP地址.没有惊喜.
> br0是一个没有IP地址的桥
> eth1是在没有IP地址的情况下提出的.它被添加到br0桥.
> VM实例配置为使用br0并配置了静态IP地址
使用此配置,我可以从guest虚拟机内部连接到外部计算机,但发往guest虚拟机的数据包永远不会成功.这是我的配置到目前为止的样子:
# cat /etc/sysconfig/network-scripts/ifcfg-br0 DEVICE=br0 TYPE=Bridge BOOTPROTO=none ONBOOT=YES # cat /etc/sysconfig/network-scripts/ifcfg-eth0 # host-only interface DEVICE=eth0 TYPE=Ethernet HWADDR=00:23:7D:E1:1F:22 IPADDR=10.8.91.18 NETMASK=255.255.252.0 GATEWAY=10.8.91.254 BOOTPROTO=none ONBOOT=yes # cat /etc/sysconfig/network-scripts/ifcfg-eth1 # guest-only interface DEVICE=eth1 TYPE=Ethernet BRIDGE=br0 HWADDR=00:23:7d:e1:1f:26 BOOTPROTO=NONE ONBOOT=YES (virbr0 is the default kvm/libvirt NAT bridge,it's not being used here) # brctl show bridge name bridge id STP enabled interfaces br0 8000.00237de11f26 no vnet0 eth1 virbr0 8000.000000000000 yes # route Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 192.168.122.0 * 255.255.255.0 U 0 0 0 virbr0 10.8.88.0 * 255.255.252.0 U 0 0 0 eth0 169.254.0.0 * 255.255.0.0 U 0 0 0 eth0 default 10.8.91.254 0.0.0.0 UG 0 0 0 eth0
这是guest虚拟机的libvirt XML定义的相关部分:
<interface type='bridge'> <mac address='54:52:00:76:94:73'/> <source bridge='br0'/> </interface>
更新2
好吧,我想我已经准备好了.由于我的客户操作系统(SLES 11,我不熟悉)在默认情况下具有相当严格的防火墙规则,我被绊倒了.防火墙清空后,我可以进行连接.
解决方法
这是我所看到的问题的一般描述.你能告诉我你现在做了什么,所以我们可以试着找出你犯的错误,如果当然有的话