1. 程式人生 > >Linux系統關閉virbr0

Linux系統關閉virbr0

安裝 Xen 或安裝 KVM 後都會發現網路接口裡多了一個叫做 virbr0 的虛擬網路介面:

#[[email protected] network-scripts]#ifconfig 
... 
virbr0    Link encap:Ethernet  HWaddr 52:54:00:51:8C:F6  
          inet addr:192.168.122.1  Bcast:192.168.122.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

...


這是由於系統安裝和並啟用了 libvirt 服務後生成的,libvirt 在伺服器(host)上生成一個 virtual network switch (virbr0),host 上所有的虛擬機器(guests)通過這個 virbr0 連起來。預設情況下 virbr0 使用的是 NAT 模式(採用 IP Masquerade),所以這種情況下 guest 通過 host 才能訪問外部。

virbr0 是 KVM 預設建立的一個 Bridge,其作用是為連線其上的虛機網絡卡提供 NAT 訪問外網的功能。

virbr0 預設分配了一個IP 192.168.122.1,併為連線其上的其他虛擬網絡卡提供 DHCP 服務。

大多數時候虛擬機器使用的是 bridge(網橋)直接連到局域網裡,所以這個 virbr0 不是必須的(注:不要搞混淆了,bridge 和這裡的 virbr0 bridge 是互不相干的),bridge模式改為普通模式後,檢視網絡卡的時候還是可以看到很多垃圾資訊,想徹底刪除自己不想要的網絡卡配置資訊。

如何關掉這個 virbr0 呢?總結為以下三步:
1)首先net-destroy,刪除掉
2)接著net-undefine,從配置檔案剔除
3)最後重啟libvirtd讓設定生效,service libvirtd restart

檢視網路列表命令:

[[email protected]

network-scripts]# virsh net-list 
setlocale: No such file or directory
Name                 State      Autostart     Persistent
--------------------------------------------------

[[email protected] network-scripts]#