Was this page helpful?

Connect to Host Network - 虛擬網路裝置(virtual network)

    內容表格
    沒有標頭
    在 RHEL5 Xen 下設定 Virtual machine 時 Network 有兩種選項. 1.Virtual network 2.Shared physical device 這兩種有何不同.
    在 RHEL5 Xen 的環境預設會建立兩個 bridge,一個則是由 QEMU 所提供出來的 virbr0,另外一個是由 Xen 所提供叫做 xenbr0,在安裝 Virtual machine 時網路卡的選擇也就是這兩種. 1.Virtual network 2.Shared physical device這兩個使用的模式和方式全然不同,先來解釋一下 virbr0.
    • Virtual network - virbr0
    • 1.QEMU 會在你的 Dom0 產生一個 bridge 虛擬裝置 "virbr0" .virbr0 不只是個單純的 NAT 而已,他是一個 NAT + DHCP 的架構,所有的 Virtual machine(DomU) 都會透過 virbr0 來指派一個私人網域 (private IP).預設為 192.168.122.2 ~ 192.168.122.254 (在他的設定檔中可以定義其 DHCP 可指定的 IP 範圍).
      2.其預設的 default gateway 為 192.168.122.1/24 ,所有在這架構下的 domU 虛擬機器的封包都必須透過 dom0 的 NAT 去連結到其他的網路.
      3. 如同一般的 NAT 所有 domU 上的虛擬機器都是被隱藏在 private 私人網域,所以外部不能直接連接到 DomU 上的虛擬機器.

      這一個是由 Qemu 所產生所以設定檔並不跟 Xen 在相同的目錄下 ( /etc/xen ) 而是存放在 /etc/libvirt/qemu/networks/default.xm

    <network>
      <name>default</name>
      <uuid>49a0ceb-5662-4a61-8149-98ea750d393b</uuid>
      <bridge name="virbr0" />
      <forward/>
      <ip address="192.168.122.1" netmask="255.255.255.0">
        <dhcp>
          <range start="192.168.122.2" end="192.168.122.254" />
        </dhcp>
      </ip>
    </network>
     
    其中的 ip address 是 default gateway IP,range 則是DHCPclients 所能使用的範圍,都可以依據需求做改變.
    • Shared physical device - xenbr0
    所有的 Virtual machine(DomU) 和 Dom0 的網路裝置就會像是串接在一個 Hub 或是 Switch 上,只要是同區段的 IP 都可以互通. 
    更多關於 XEN 的 Network 請參考 : http://benjr.tw/?q=node/215
     
    如果安裝完之後想改模式只要直接修改 Virtual machine 的設定檔(位於 /etc/xen 的目錄下),Virtual machine 的設定檔通常會依據你 Virtual machine 名稱 "system Name"來命名.假如我的 Virtual machine 的 system name 為 rhel4 這樣設定檔直接會被命名為 /etc/xen/rhel4,只要修改 vif 改成 virbr0 或是 xenbr0

    1.Virtual network - virbr0
    vif =[ bridge=virbr0 ]
    或是
    2.Shared physical device - xenbr0
    vif =[ bridge=xenbr0 ]

    安裝完的 Guest OS 除了可以透過 Virtual Machine Manager 的 Details / hardware 來看 NIC 當初是用 NAT 或是 Bridge 的形式! XEN 提供了一些指令來觀察所有的 Virtual machinet 的 NIC 狀態所使用的模式.首先來看看我們所有的 Guest OS 有哪一些!!
    目前可以看到的有 rhel4(Dom 3) 和 rhel5(Dom 4) 兩種,至於他們的 networking 模式是什麼,要使用下面的指令.不過要先記住他們對應的 Dom  ID 為何!

    virbr0 代表了 NAT networking ,也就是說 vif3.0 就是 Dom3(rhel4) 的第一個 eth0 是使用了 NAT networking.

    xenbr0 代表了 bridge networking,vif0.0 / vif4.0就是 Dom0(RHEL5 本身)和 Dom4(rhel5)  的第一個 eth0 是使用了bridge networking.

    note:這是很討厭的一點 RHEL5 下預設最多只能有 4 個 Xen bridge.不管你怎麼設定都只能有 4 個,一個也多不了,對於一台網路卡多過4個 port 的 Server 而言,其他的 port  豪無用武之地,也常常發現重新開機後某個 port 又不通了,光是重新設定就搞死人了.所以現在都只能限制 port 數來解決這個問題.幸好 RHEL 將在 RHEL5 U3 解決這個問題.

    • Set fixed MAC address for your virtual system
    另外最後的一個選項是我們自己指派給虛擬網卡一個 MAC address ,要設定虛擬網路裝置的 mac 他是有一個規則性的. mac :XY:XX:XX:XX:XX:XX ,mac 使用16進制來顯示 X 可為任何的16進制(0~9,A,B,C,D,E,F), Y 則只能使用 2, 6, A 或 E. 不過 Xen 建議使用的範圍 00:16:3e:xx:xx:xx. 這個區段是保留給 Xen 使用的. 如果在安裝完成之後可以直接針對 Virtual machine 的設定檔來修改而設定檔位於目錄 /etc/xen/ 下.
    [root@benjr ~]# vi /etc/xen/rhel4
    name = "rhel4"
    uuid = "cf67710d-b756-086b-8cde-be61d2faca1b"
    maxmem = 512
    memory = 512
    vcpus = 1
    bootloader = "/usr/bin/pygrub"
    on_poweroff = "destroy"
    on_reboot = "restart"
    on_crash = "restart"
    vfb = [ "type=vnc,vncunused=1,keymap=en-us" ]
    disk = [ "phy:/dev/sda5,xvda,w" ]
    vif = [ "mac=00:16:3e:27:95:c0,ip=10.0.0.1" ]

    在 vif = ["mac=XY:XX:XX:XX:XX:XX"] 就可針對 mac 來設定.

    Was this page helpful?
    標籤 (Edit tags)
    • No tags
    您必須 登入 才能發佈評論。
    Powered by MindTouch Core