1
2
3
4
5
6
7
8
9
10
<code># ifconfig</code>
<code>...</code>
<code>virbr0 Link encap:Ethernet HWaddr d2:91:97:b8:3d:fc</code>
<code> </code><code>inet addr:192.168.122.1 Bcast:192.168.122.255 Mask:255.255.255.0</code>
<code> </code><code>UP BROADCAST MULTICAST MTU:1500 Metric:1</code>
<code> </code><code>RX packets:0 errors:0 dropped:0 overruns:0 frame:0</code>
<code> </code><code>TX packets:0 errors:0 dropped:0 overruns:0 carrier:0</code>
<code> </code><code>collisions:0 txqueuelen:0</code>
<code> </code><code>RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)</code>
这是由于安装和启用了 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 让设置生效:
11
<code># virsh net-list</code>
<code>Name State Autostart</code>
<code>-----------------------------------------</code>
<code>default active </code><code>yes</code>
<code># virsh net-destroy default</code>
<code>Network default destroyed</code>
<code># virsh net-undefine default</code>
<code>Network default has been undefined</code>
<code># service libvirtd restart</code>
<code>Stopping libvirtd daemon: [ OK ]</code>
<code>Starting libvirtd daemon: [ OK ]</code>
本文转自 暗黑魔君 51CTO博客,原文链接:http://blog.51cto.com/clovemfong/1200938,如需转载请自行联系原作者