Networking

如何為 VM 配置橋接網路

  • April 4, 2014

我在 CentOS 6 中設置 KVM 虛擬化伺服器。如何配置橋接網路?(我想我需要網路介面 eth0 才能被虛擬機訪問)

我試圖遵循本指南:

如何使用橋接網路在 CentOS 6.2 上安裝 KVM 和 libvirt

/etc/sysconfig/network-scripts/ifcfg-br0通過使用適合我的網路的值進行修改:

DEVICE="br0"
TYPE=Bridge
DELAY=0
ONBOOT="yes"
BOOTPROTO=static
IPADDR=178.126.193.153
NETMASK=255.255.255.192
NETWORK=178.126.193.128
GATEWAY=178.126.193.190
DNS1=37.58.58.137
DNS2=91.109.25.225
PEERDNS="yes"
NM_CONTROLLED=no

並將以下幾行添加/etc/sysconfig/network-scripts/ifcfg-eth0

BRIDGE=br0
NM_CONTROLLED=no

也許我不應該添加,而是寫指南中概述的行?我不確定 NETWORK 值應該是什麼,我是否設置正確以及它是否重要。

無論如何,當我這樣做時,service network restart我被鎖定在伺服器之外,我必須要求我的託管服務提供商的支持重新安裝它。有沒有一種“防彈”的方式來架起一座橋,不是那麼容易搞砸的?比如我發現的這個Debian 例子:

brctl addbr br0

我在RHEL 文件中找到的這種方式怎麼樣:

virsh iface-bridge eth0 br0

然後,當然,重新啟動網路服務:

sudo service network restart

並驗證網橋配置:

brctl show

對我來說,它顯示 ‘brctl show’ 顯示 2 個橋:br0 和 virbr0

我沒想到virbr0會出現,但事實證明virbr0(“Virtual Bridge 0”)介面被設置為使用NAT網路的客人使用;它被故意設置為預設使用 192.168.122.0/24 作為其子網,並包含自己的 dhcp 伺服器並使用 dnsmasq 進行 DNS 解析。

它用於 NAT(網路地址轉換),由libvirt庫提供,虛擬環境有時使用它來連接外部網路

我將離開它,這正是我所需要的:我希望一些虛擬機能夠直接訪問網際網路(我有這些虛擬機的 IP),而其他虛擬機將通過 NAT 訪問網際網路。但是,如果確定不需要額外的橋,virbr0 可以通過

brctl delbr virbr0

引用自:https://serverfault.com/questions/585020