QEMU 如何建立guest only network

歡迎提問 debian desktop 相關問題,何謂 desktop ? 舉凡您日常生活會用到的部份,如上網 ( www 、 bbs ..) 、程式設計、繪圖...等等。 通常以 X Window 環境底下問題為主。

QEMU 如何建立guest only network

文章maxgreg13625 » 週六 11月 13, 2010 10:28 am

不好意思打擾大家了...因為不曉得這問題該在哪裡問...所以先po 在這裡

如有不妥...麻煩告知...我再處理...Orz

我的問題是這樣的

現在我用QEMU 模擬Debian

在host 電腦上裝bridge-util

然後QEMU 可以透過bridge 透過host 連到外面的網路

可是當我另外再開一個QEMU 時

2 個QEMU 彼此無法看到對方

有沒有什麼方法可以讓host 上的2 個QEMU 可以看到彼此

最好是2 個QEMU 可以彼此SSH 連線

謝謝大家
maxgreg13625
可愛的小學生
可愛的小學生
 
文章: 1
註冊時間: 週六 11月 13, 2010 10:19 am

Re: QEMU 如何建立guest only network

文章訪客 » 週三 11月 17, 2010 4:53 pm

小弟的專題正好是使用qemu來研究虛擬化 :-D
分享一下小弟的設定方式

我將qemu模擬出來的網卡(tap模式)設定成promisc mode
然後virtual machine裡面指定IP,最後host system再設定iptables
就可以讓多個vm同時上網,也可以達到vm互連

假設您已經有了一個bridge叫作br0
設定/etc/qemu-ifup (名字可以變更) 加入以下內容:
代碼: 選擇全部
/sbin/ifconfig $1 0.0.0.0 promisc up
/usr/sbin/brctl addif br0 $1
sleep 2


然後再假設您有兩個vm,虛擬硬碟名稱分別為 vm1.hdavm2.hda
則兩個vm的啟動指令為:
代碼: 選擇全部
[root@localhost]# qemu -hda vm1.hda -net nic,macaddr=00:00:00:00:00:01 -net tap,script=/etc/qemu-ifup &
[root@localhost]# qemu -hda vm2.hda -net nic,macaddr=00:00:00:00:00:02 -net tap,script=/etc/qemu-ifup &


比較重要的是,由於兩個vm同時讀取 /etc/qemu-ifup
因此 macaddr=XX:XX:... 這個參數一定要打,否則兩個vm的mac會一模一樣
至於vm內的網路設定及host的iptable設定這裡暫不贅述

另外,這種方式是將br0當作vm的gateway
因此br0也必須要設定IP

啟動vm後,用brctl show指令查看vm的tap網卡是否加入br0內
ex:
代碼: 選擇全部
br1             8000.2641c3d8245d       no              tap1
                                                        tap2
                                                        tap3

訪客
 


回到 debian desktop

誰在線上

正在瀏覽這個版面的使用者:沒有註冊會員 和 1 位訪客