现在的位置: 首页 > 综合 > 正文

rhel6 下KVM的虚拟机网络配置

2013年10月05日 ⁄ 综合 ⁄ 共 1768字 ⁄ 字号 评论关闭

在rhel6下搭建KVM的虚拟机后,虚拟机默认的网络是主机和虚拟机的虚拟网络,这个只能保证主机和虚拟机之间的通信,外部网络无法访问,如图:

如果虚拟机想要和其他网络的主机通信,必须更改宿主机的网络为网桥的方式,做如下更改

1、cp ifcfg-eth0 ifcfg-br0

2、vim ifcfg-br0

DEVICE="br0"
TYPE="Bridge"
ONBOOT="yes"
NM_CONTROLLED="no"
BOOTPROTO="static"
IPADDR="10.20.3.171"
NETMASK="255.255.255.0"
NETWORK="10.20.3.0"
GATEWAY="10.20.3.254"

3、vim ifcfg-eth0

DEVICE="eth0"
TYPE="Ethernet"
HWADDR="D4:AE:52:7B:5C:24"
NM_CONTROLLED="no"
ONBOOT="yes"
BRIDGE="br0"

以上3步是将宿主机的网络改为网桥方式,并指定eth0为网桥的成员,使用命令ifconfig可以看到br0取代了eth0

[root@kvm network-scripts]# ifconfig
br0       Link encap:Ethernet  HWaddr D4:AE:52:7B:5C:24 
          inet addr:10.20.3.171  Bcast:10.20.3.255  Mask:255.255.255.0
          inet6 addr: fe80::d6ae:52ff:fe7b:5c24/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:357307 errors:0 dropped:0 overruns:0 frame:0
          TX packets:10927 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:19251025 (18.3 MiB)  TX bytes:27874742 (26.5 MiB)

eth0      Link encap:Ethernet  HWaddr D4:AE:52:7B:5C:24 
          inet6 addr: fe80::d6ae:52ff:fe7b:5c24/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1690216 errors:0 dropped:0 overruns:0 frame:0
          TX packets:713177 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:1432574703 (1.3 GiB)  TX bytes:112072037 (106.8 MiB)
          Interrupt:36 Memory:d6000000-d6012800

4、开启宿主机转发功能,sed -i 's/net.ipv4.ip_forward = 0/net.ipv4.ip_forward = 1/' /etc/sysctl.conf,执行sysctl -p立即生效

5、新建虚拟机的时候选择网络为br0,如图:

6、如果想更改已存在的虚拟机的网络配置,修改/etc/libvirt/qemu/目录下的以主机名命名的xml文件

    <interface type='bridge'>
      <mac address='52:54:00:c9:0f:28'/>
      <source bridge='br0'/>
      <model type='virtio'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
    </interface>

把接口定义改成这样的即可

抱歉!评论已关闭.