xen 和 kvm 下关闭 virbr0

回复 收藏
安装 Xen 或安装 KVM 后都会发现网络接口里多了一个叫做 virbr0 的虚拟网络接口:
  1. # ifconfig
  2. ...
  3. virbr0    Link encap:Ethernet  HWaddr d2:91:97:b8:3d:fc  
  4.           inet addr:192.168.122.1  Bcast:192.168.122.255  Mask:255.255.255.0
  5.           UP BROADCAST MULTICAST  MTU:1500  Metric:1
  6.           RX packets:0 errors:0 dropped:0 overruns:0 frame:0
  7.           TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
  8.           collisions:0 txqueuelen:0
  9.           RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
  10. ...
这是由于安装和启用了 libvirt 服务后生成的,libvirt 在服务器(host)上生成一个 virtual network switch (virbr0),host 上所有的虚拟机(guests)通过这个 virbr0 连起来。
默认情况下 virbr0 使用的是 NAT 模式(采用 IP Masquerade),所以这种情况下 guest 通过 host 才能访问外部


大多数时候我们虚拟机使用的是 bridge(网桥)直接连到局域网里,所以这个 virbr0 不是必须的(注:不要搞混淆了,bridge 和这里的 virbr0 bridge 是互不相干的)。如何关掉这个 virbr0 呢?先 net-destroy 然后 net-undefine,最后别忘了重启 libvirtd 让设置生效:
  1. # virsh net-list
  2. Name                 State      Autostart
  3. -----------------------------------------
  4. default              active     yes
  5. # virsh net-destroy default
  6. Network default destroyed
  7. # virsh net-undefine default
  8. Network default has been undefined
  9. # service libvirtd restart
  10. Stopping libvirtd daemon:                                  [  OK  ]
  11. Starting libvirtd daemon:                                  [  OK  ]
2012-10-22 08:53 举报
已邀请:

回复帖子,请先登录注册

退出全屏模式 全屏模式 回复
评分
可选评分理由: