如何在KVM主機上創(chuàng)建橋接網(wǎng)絡(luò)接口
運行在Linux主機上較舊的KVM版本無法提供簡單的創(chuàng)建橋接網(wǎng)絡(luò)接口的方法。幸運的是,你可以在Red Hat Enteprise Linux 6.3中手動執(zhí)行這一操作步驟。
KVM基礎(chǔ)設(shè)施網(wǎng)絡(luò)
大多數(shù)虛擬基礎(chǔ)設(shè)施使用四種網(wǎng)絡(luò),但是KVM基礎(chǔ)設(shè)施通常不包括這四種網(wǎng)絡(luò)類型中的橋接網(wǎng)絡(luò)。
第一種網(wǎng)絡(luò)類型是網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT),用于在NAT之后安裝虛擬機。如果虛擬機必須訪問互聯(lián)網(wǎng)但是該虛擬機并不需要被外部訪問那么NAT非常有效。如果你想在虛擬機上提供公共服務(wù)那么NAT并不是理想的選擇。
第二種網(wǎng)絡(luò)類型是路由網(wǎng)絡(luò),用于在專用網(wǎng)絡(luò)上安裝虛擬機。流量將會在主機網(wǎng)絡(luò)以及虛擬網(wǎng)絡(luò)之間進行路由。第三種類型是僅主機網(wǎng)絡(luò),允許你在安全以及隔離的環(huán)境中進行功能測試。
最后,橋接網(wǎng)絡(luò)的優(yōu)勢是允許虛擬機訪問運行該虛擬機的物理主機所在的物理網(wǎng)絡(luò)。
如何創(chuàng)建橋接網(wǎng)絡(luò)接口
在創(chuàng)建橋接網(wǎng)絡(luò)接口前,首先需要準備物理主機。不同Linux發(fā)行版的配置過程有所不同,以下步驟在RHEL 6.3下經(jīng)過了驗證:
1. 在Linux主機上,使用service NetworkManager stop命令停止網(wǎng)絡(luò)管理器,然后使用chkconfig NetworkManager off命令禁止網(wǎng)絡(luò)管理器開機自動啟動。
2. 修改網(wǎng)絡(luò)配置。創(chuàng)建文件/etc/sysconfig/network-scripts/ifcfg-br0然后輸入如下內(nèi)容創(chuàng)建一個虛擬橋接網(wǎng)絡(luò)接口(一定要將示例中的IP地址修改為實際網(wǎng)絡(luò)環(huán)境中的地址):
DEVICE="br0"
TYPE=Bridge
DELAY=0
ONBOOT=YES
BOOTPROTO=static
IPADDR=10.0.0.10
NETMASK=255.255.255.0
NETWORK=10.0.0.0
GATEWAY=10.0.0.1
NM_CONTROLLED=no
DNS1=10.0.0.1
PEERDNS=yes
3. 修改控制物理網(wǎng)卡的配置文件。通常是/etc/sysconfig/network-scripts/ifcfg-eth0,但是該文件名取決于網(wǎng)絡(luò)配置。如果你不確定,可以輸入ip link show命令查找Linux主機正在使用的網(wǎng)絡(luò)接口。物理網(wǎng)卡成為了橋接網(wǎng)絡(luò)接口的下級,因此物理網(wǎng)卡的配置文件應(yīng)該包括如下內(nèi)容:
DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=no
BRIDGE=br0
輸入service network restart命令重啟網(wǎng)絡(luò)。
此時,輸入ip link show命令將會顯示虛擬橋接。你還可以使用brctl show命令顯示Linux主機上的橋接拓撲。拓撲顯示正常的物理網(wǎng)卡現(xiàn)在是橋接配置的一部分。然后你可以在主機上安裝虛擬機,虛擬機將會自動綁定你已經(jīng)創(chuàng)建的橋接網(wǎng)卡。