如何为虚拟机configuration桥接networking

我正在CentOS 6中build立一个KVM虚拟化服务器。如何configuration桥接networking? (我想我需要networking接口eth0可以访问虚拟机)

我试图遵循这个指南:

如何使用桥接networking在CentOS 6.2上安装KVM和libvirt

通过修改/etc/sysconfig/network-scripts/ifcfg-br0以及适合我networking的值:

 DEVICE="br0" TYPE=Bridge DELAY=0 ONBOOT="yes" BOOTPROTO=static IPADDR=178.126.193.153 NETMASK=255.255.255.192 NETWORK=178.126.193.128 GATEWAY=178.126.193.190 DNS1=37.58.58.137 DNS2=91.109.25.225 PEERDNS="yes" NM_CONTROLLED=no 

并将以下行添加/etc/sysconfig/network-scripts/ifcfg-eth0

 BRIDGE=br0 NM_CONTROLLED=no 

也许我不应该添加 ,而是写指南中列出的线? 我不确定networking价值应该是什么,如果我把它设置正确,是否重要。

无论如何,当我service network restart我被locking了服务器,我不得不要求我的托pipe服务提供商的支持来重新安装它。 有没有一种“防弹”的方式来build立一座桥梁,这不容易搞砸? 就像这个Debian的例子一样,我发现:

 brctl addbr br0 

在RHEL文档中,我如何find这种方法:

 virsh iface-bridge eth0 br0 

那么,当然,重新启动networking服务:

 sudo service network restart 

并validation网桥configuration:

 brctl show 

对我来说,这表明 'brctl show'显示2个桥:br0和virbr0

我没有想到会出现virbr0 ,但事实certificate, 使用NATnetworkingbuild立的guest虚拟机将使用virbr0 (“虚拟网桥0”)接口 ; 故意将其设置为192.168.122.0/24作为其子网,并包含自己的DHCP服务器,并使用dnsmasq进行DNSparsing。

它用于NAT(networking地址转换),由libvirt库提供,虚拟环境有时用它连接到外部networking 。

我将要离开它,这正是我所需要的:我希望一些虚拟机能够直接访问互联网(我有这些IP),而其他虚拟机将通过NAT访问互联网。 但是如果有人确定不需要额外的桥, virbr0 可以被删除

 brctl delbr virbr0 

要使configuration持久,您将不得不编辑configuration文件。 你并不需要你的NETWORK部分有一个IPADDR,NETMASK和GATEWAY设置。

ifcfg-eth0脚本应该包含以下内容:

 DEVICE="eth0" HWADDR=AA:BB:CC:DD:11:22 TYPE=Ethernet ONBOOT="yes" BOOTPROTO=none BRIDGE=br0 

为了确保你没有被locking,你可以设置一个脚本,每隔20分钟左右将networking重新设置为一个工作configuration,把它放在cron中,然后破解掉。 如果您被locking,您只需等待脚本恢复工作configuration即可。