我前段时间安装了Xen,但还没有启动虚拟机pipe理程序。 我昨天做了,所有的事情都打破了。 由于Xen,我的服务器上完全失去了互联网连接。
当我启动服务器并且eth0
不在br0
内时,Xen会尝试通过将其重命名为peth0
(物理eth0
)来虚拟化它,然后创build一个veth0
(虚拟eth0
)并将其重命名为eth0
,至less到Xen文档 。
问题是它没有提出一个eth0
,我没有互联网连接。 我在我的服务器上有一个eth1
,并想虚拟化该接口, 而不是 eth0
。 为了做到这一点,我把eth1
放在br0
, br0
正在虚拟化到virbr0
。 如何阻止Xen虚拟化eth0
并使用br0/eth1
?
这是我从systemctl -o cat status network.service
:
Bringing up lookback interface: [ OK ] Bringing up interface eth0: Error: either "dev" is a duplicate, or "virbr0" is a garbage. ERROR : [/etc/sysconfig/network-scripts/ifup-eth] Failed to bring up peth0 virbr0. [FAILED] Bringing up interface eth1: [ OK ] Bringing up interface br0: [ OK ]
要喜欢第二行的语法(这是逐字下来的间距)。
virbr0由libvirt直接处理,可以从对这个消息的答复中看到, 这是从/etc/libvirt/qemu/networks
。
答案包含在您提供的链接中: 设置桥接networking 。
在XEN 4.1之前,XEN是build立networking桥接的angular色。
之后,相应的网桥应该设置为OS方式。
但是:如果在XEN-Startup期间没有定义网桥,它将创build一个默认网桥(相当于以前的行为)。
有一个很好的理由把它放在XEN控制之外,因为有非常复杂的绑定/ VLAN组合,这是默认脚本所不能涵盖的。 networking堆栈也不同于OS到OS。
我有一个SLES10 SP4的类似问题 – 我需要一个相当复杂的networking设置。
所以我在/etc/init.d/中设置了自己的init脚本来设置桥接/绑定/ vlans。
使用SLES11 SP2,这是一块蛋糕,可以通过OS- yast2
命令来设置。
在XEND开始之前,这些桥梁就开始运行了。
像这样的东西可能适合你:
XENBRIDGE=/etc/xen/scripts/network-bridge $XENBRIDGE bridge=br0 netdev=eth1 start
Fedora应该与RHEL6相媲美 – 所以也许你可以使用networking设置文档 ,并将你的桥接configuration集成到正常的networking设置中(这是更好的方法)。
为了解决这个问题,我改变了这些:
(network-script 'network-bridge bridge=virbr0') (vif-script vif-bridge)
对这些:
(network-script 'network-bridge bridge=virbr0 netdev=eth1') (vif-script vif-nat)
在/etc/xen/xend-config.sxp
,它成功的离开了eth0
,现在只把eth1
重命名为peth1
,而且我认为它并不是因为它在br0
里面而veth1/eth1
了veth1/eth1
。 然后,我把ifcfg-em1/ifcfg-em2
为ifcfg-eth0/ifcfg-eth1
,并改为:
IPADDR0=xxx.xxx.xxx.xxx PREFIX0=xx GATEWAY0=xxx.xxx.xxx.xxx DNS1=xxx.xxx.xxx.xxx
至:
IPADDR=xxx.xxx.xxx.xxx PREFIX=xx GATEWAY=xxx.xxx.xxx.xxx DNS=xxx.xxx.xxx.xxx
这给了我回到我的互联网和本地主机。
你知道这个经历的最好的部分是什么? 我可以永久禁用NetworkManager。