SUSE 11 1上XEN虛擬機器NAT組網方式

2021-08-26 21:25:54 字數 1453 閱讀 3148

為了做一段時間的專案測試,需要在一台伺服器上安裝3臺虛擬機器,因為esxi的免費版本只能使用4個cpu核心,而xenserver又在拷貝檔案到物理伺服器上困難重重。所以選擇了suse11.1 +xen的方案。

考慮到不希望辦公網路能直接訪問到3臺虛擬機器,因此決定採用nat方式組網。經過一番試驗,遭遇各種的失敗,最後終於成功。

有兩種方案可選,一種是完全自己建立nat方式,另外一種是利用xen提供的virtual networking來建立nat。

先說利用xen提供的virtual networking的方式。

xen安裝好後,它預設提供了乙個網路介面叫做virbr0, 另外一種介面叫做xenbr0-4(根據物理機的網絡卡數目來的,用於bridge方式組網,不是本文說明的組網方式,從略)。

在建立虛機的時候,選擇網絡卡的時候,會讓選擇virbr0,還是物理網絡卡等等。也可以在xen虛擬機器管理視窗上新建virtual networking。它們的區別是,預設的virbr0提供的是dhcp方式,虛機可以獲得的ip範圍是192.168.122.2 到192.168.122.254。自己建立的virtual networking可以指定為靜態ip方式。我在這裡建立了新的virtual networking,介面名稱被xen設定為virbr1,自己可以指定乙個描述名,指定閘道器為192.168.1.1,ip範圍從192.168.1.2到192.168.1.255。然後在新建虛機時就可以選擇這個網路方式了。

建立虛擬機器,選擇網路時指定virbr1,安裝虛擬機器作業系統並且執行起來後,在虛擬機器中設定ip為192.168.1.100,閘道器為192.168.1.1。這時,虛機和物理機之間實現了互通。但是虛機還不能和物理機所在的網路連通。

此時,需要修改物理機上的防火牆設定。作如下修改:

#修改虛擬機器發出的網路請求的ip為物理機的ip

iptables -t nat -a postrouting -s 192.168.1.0/24 -o eth0 -j snat --to 8.8.8.8

#允許埠**

iptables -p forward accept

還要修改物理機的網路配置,使之支援nat方式:

echo "1">/proc/sys/net/ipv4/ip_forward

完成上述設定後,虛擬機器就可以連通外網了。

要注意的是如果採用這種方式建立nat組網的話,也要在物理機上對防火牆作上述的修改。

看來,suse11.1上的xen,對nat方式組網的支援沒有完全做好,還需要自己作相應的配置才能正常工作。

另一方面,在xen上使用nat方式組網的情況可能也不多,網上還沒有搜到有這方面的例子。要說也是,在這個專案之前,我做的各種虛擬機器基本上都是採用bridge方式組網的。

參考:

1.networking

2.connect to host network - 虛擬網路裝置(virtual network)

3.如何用iptables實現nat

Xen虛擬機器

虛擬化技術是雲計算實現彈性計算的核心技術。在構建雲計算平台中,虛擬機器的安裝是基礎。常用的虛擬機器工具很多,如vmware xen kvm virtual pc等,這些工具使得使用者可以在單台物理pc上 稱為宿主機 虛擬出多個虛擬機器vm virtual machine 由於在每個vm上可以安裝與宿...

CentOS上安裝Xen虛擬機器

1.安裝 xen yum y install xen kernel xen xen lib virt manager python virtinst kernel xen 可以跑 xen 的 linux 核心 xen 主要的 xen 套件,包括配置檔案 啟動指令碼和一些函式庫 xen libs xe...

Xen虛擬機器檢測

應用程式如何獲知自己是否工作在xen 虛擬機器中呢?使用cpuid指令可以完成該任務。uint32 t eax,ebx,ecx,edx,pages,msr,i char signature 13 cpuid 0x40000000,eax,ebx,ecx,edx uint32 t signature ...