我在将虚拟机连接到桥接接口时遇到问题。我的虚拟机无法连接到主机和主机外部的 LAN,当我 ping 它时,只显示目标主机无法访问。似乎我的虚拟机未连接到 br0 接口。我在主机上使用 redhat 5.6,在虚拟机上使用 centos 6
我使用以下命令修改 ifcfg-br0 接口:
DEVICE=br0
BOOTPROTO=none
ONBOOT=yes
USERCTL=no
TYPE=Bridge
GATEWAY=10.1.2.1
NETMASK=255.255.255.0
IPADDR=10.1.2.2
我的服务器通过bond0接口连接外网,我对ifcfg-bond0进行如下修改:
DEVICE=bond0
BOOTPROTO=yes
ONBOOT=yes
USERCTL=no
BONDING_OPTS="mode=4 miimon=50"
BRIDGE=br0
NM_CONTROLLED=no
我使用 bond0 作为我的 KVM 客户机的网络接口
这是我的 CentOS KVM 客户机内的 ifcfg-eth0 配置:
DEVICE=eth0
ONBOOT=yes
GATEWAY=10.1.2.1
NETMASK=255.255.255.0
IPADDR=10.1.2.22
NAME=eth0
NM_CONTROLLED=no
以下是 brctl show 的输出:
bridge name bridge id STP enabled interfaces
br0 8000.bc305be8c04f no bond0
我已经禁用桥接接口的 netfilter,重新启动网络服务,但没有运气,如果有人知道问题出在哪里,请帮忙:'(
答案1
首先,确保您的主机网络配置正常工作。在虚拟机配置文件中,使用“br0”作为网络接口。
<interface type='bridge'>
<mac address='xx:xx:xx:xx:xx:xx'/>
<source bridge='br0'/>
<model type='virtio'/>
</interface>
答案2
- 停止使用pcnet,切换到virtio。
-net nic,vlan=1,macaddr=00:1a:4a:01:00:0a,model=virtio -net tap,vlan=1,ifname=vnet0,script=/etc/kvm/qemu-ifup-br0
正常情况下应该是这样的。第一部分缺少 MAC 地址。