Chinaunix首页 | 论坛 | 博客
  • 博客访问: 545719
  • 博文数量: 84
  • 博客积分: 6010
  • 博客等级: 准将
  • 技术积分: 2109
  • 用 户 组: 普通用户
  • 注册时间: 2006-09-25 14:02
文章分类

全部博文(84)

文章存档

2011年(10)

2010年(22)

2009年(16)

2008年(36)

我的朋友

分类: LINUX

2011-03-07 17:36:52

在 Enterprise Linux 5 (RHEL5)上设置KVM虚拟机时有两种网络选项:1. Virtual network  2.Shared physical device 但预设的只有 Virtual network.
在RedHat Enterprise Linux 5上配置KVM网络
先来看看在 RHEL5 KVM 的环境预设会建立一个 bridge,由 QEMU 所提供出的 virbr0 预设安装 Virtual machine 时网络卡的选择也就是这种 Virtual network .
 
?    Virtual network - virbr0
1.QEMU 会在你的 Linux 产生一个 bridge 虚拟装置 "virbr0" .virbr0 不只是个单纯的 NAT 而已,他是一个 NAT + DHCP 的架构,所有的 Virtual machine 都会透过 virbr0 来指派一个私人网域 (private IP).预设为 192.168.122.2 ~ 192.168.122.254 (在他的设定档中可以定义其 DHCP 可指定的 IP 范围).
2.其预设的 default gateway 为 192.168.122.1/24 ,所有在这架构下的 Virtual Machine 虚拟机器的封包都必须透过这 NAT 去连结到其它的网络.
3. 如同一般的 NAT 所有的 Virtual Machine 虚拟机器都是被隐藏在 private私有网络,所以外部不能直接连接到 Virtual Machine 虚拟机器上.
在RedHat Enterprise Linux 5上配置KVM网络

这一个是由 Qemu 所产生所以设定档存放在 /etc/libvirt/qemu/networks/default.xml

  default
  49a0ceb-5662-4a61-8149-98ea750d393b
 
 
 
   
     
   

 


其中的 ip address 是 default gateway IP,range 则是 DHCP clients 所能使用的范围,都可以依据需求做改变.
  • Shared physical device

如果要使用第二种 "Shared physical device" 时需要经过手动设定才能使用.此时所有的 Virtual machine 的网络装置就会像是串接在一个 Hub 或是 Switch 上,只要是同区段的 IP 都可以互通. 在 Linux 下网络的模式有一个东西叫做 Bridge mode,有点像将多个 NIC Adapter ports 透过一个虚拟出来的 Bridge(Switch) 全部串在一起,再透过一个虚拟出来的网络装置出去,这就像是把 Linux 当成一个 switch 来使用了.
在一般的 Linux 环境下的方法也很简单:我们也可以透过下面几个简单的指令来产生自己所需要的 Bridge 装置出来.下面的图示你可以很清楚的看出来虚拟 NIC 和实体 NIC 是如何透过 bridge 模式串接在一起.


 
在RedHat Enterprise Linux 5上配置KVM网络

如何配置共享网络(shared physical device)
1. 停止物理网卡eth0
   ifdown eth0
2. 修改eth0的网卡配置/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
# change the hardware address to match the hardware address your NIC uses
HWADDR=00:16:76:D6:C9:45
ONBOOT=yes
BRIDGE=br0
NM_CONTROLLED=no
3. 创建一个新的网络接口br0
#动态IP配置
DEVICE=br0
TYPE=Bridge
BOOTPROTO=dhcp
ONBOOT=yes
Delay=0
#静态IP配置
DEVICE=br0
TYPE=Bridge
BOOTPROTO=static
IPADDR=
NETMASK=
GATEWAY=
ONBOOT=yes
4. 启动网络
   ifup eth0
   ifup br0
5. 配置Iptables,编辑/etc/sysconfig/iptables  
   -A RH-Firewall-1-INPUT -i br0 -j ACCEPT
  参考资料:
阅读(3032) | 评论(2) | 转发(0) |
给主人留下些什么吧!~~

michaelcho2011-04-26 17:31:23

很受启发,谢谢了! 我还有一个问题,如果采用第一种方式virtual network,怎么来修改vnet0和virbr0的网络参数呢

chinaunix网友2011-03-27 13:45:48

很好的, 收藏了 推荐一个博客,提供很多免费软件编程电子书下载: http://free-ebooks.appspot.com