×

主機訪問VirtualBox虛擬機服務(wù)

  • 作者:新網(wǎng)
  • 來源:新網(wǎng)
  • 瀏覽:100
  • 2018-05-09 14:57:10

使用虛擬機常常是為了調(diào)試服務(wù)器,因為在桌面系統(tǒng)安裝服務(wù)程序,一來容易有安全問題,更重要是容易拖慢系統(tǒng)。

   使用虛擬機常常是為了調(diào)試服務(wù)器,因為在桌面系統(tǒng)安裝服務(wù)程序,一來容易有安全問題,更重要是容易拖慢系統(tǒng)。

blackfriday.jpg

blackfriday.jpg

  VirtualBox作為一款輕快的開源虛擬機軟件,自從被Sun公司收購后,更新相當頻繁,功能也逐漸完善,比起VMware動輒幾百M的安裝文件,VirtualBox幾十M的身材而功能絲毫不在VMware之下,而且性能遠遠高出VMware。
  如果把虛擬機作為服務(wù)器調(diào)試工具,VM默認是使用橋接方式連接虛擬機和主機,安裝完后虛擬機直接對主機可見,調(diào)試很方便,但是VBox則默認是NAT方式,主機完全訪問不了虛擬機。
  除了設(shè)置VBox為橋接方式外(有點麻煩),另一更加簡捷的方式是給虛擬機開端口。這和使用家用路由器映射端口原理是一樣的,經(jīng)過路由器后,局域網(wǎng)內(nèi)的機器對公網(wǎng)外是不可見的,但是通過添加端口映射,公網(wǎng)就可以訪問到內(nèi)網(wǎng)的機器。
  VirtualBox 的User Manual(2.1.4版)在6.4.1介紹了這個方法:使用VBox自帶的VBoxManage工具設(shè)置端口映射。下面是介紹一個例子:
  主機:Ubuntu 8.10
  虛擬機:Win XP + phpStudy 套件(Apache、MySQL….),Apache在81端口提供服務(wù)。
  配置后通過主機的8080訪問虛擬機:localhost:8080。
  在虛擬機關(guān)機情況下,在主機終端執(zhí)行:
  VBoxManage setextradata “xp” “VBoxInternal/Devices/pcnet/0/LUN#0/Config/web/Protocol” TCP
  VBoxManage setextradata “xp” “VBoxInternal/Devices/pcnet/0/LUN#0/Config/web/GuestPort” 81
  VBoxManage setextradata “xp” “VBoxInternal/Devices/pcnet/0/LUN#0/Config/web/HostPort” 8080
  VBoxManage是VirtualBox的配置工具,setextradata只是其中一個方法。”xp”是虛擬機的名稱,而”VBoxInternal/Devices/pcnet/0/LUN#0/Config/web/…”是該虛擬機的一個屬性,其中/web/是可以任意設(shè)置的名稱。如果虛擬機用的虛擬網(wǎng)卡不是默認的PCNet,而是用了Intel PRO/1000,則需把路徑中的“pcnet”替換為“e1000”,同樣地,如果你為虛擬機配置了n個網(wǎng)卡,則要把/0/換成相應(yīng)的序列。
  重新運行虛擬機,在Host的瀏覽器里敲入https://localhost:8080/phpinfo.php,虛擬機里面的php環(huán)境顯示出來了。注意此時對主機網(wǎng)絡(luò)內(nèi)的其他機器,也可以通過本機的8080端口訪問到虛擬機的web服務(wù)(當然,前提是主機的防火墻沒有攔截該端口)。不過無法為主機小于1024端口進行映射(設(shè)了之后虛擬機啟動報錯),這涉及到Unix/Linux的保護措施,可能在root賬戶下可用。有興趣的在Windows 平臺試試,可能沒此限制。
  注意在虛擬機運行的時候這樣配置是無效的,必須重新啟動一次,休眠(save state)了再開也可以。
  如果想刪除這些映射,同樣執(zhí)行以上的命令,而把最后的命令值留空即可,如:
  VBoxManage setextradata “xp” “VBoxInternal/Devices/pcnet/0/LUN#0/Config/web/Protocol”
  VBoxManage工具是VirtualBox自帶的配置工具,不論是Linux、Mac還是Windows平臺下,都有這個工具,使用方法都是一樣的。
        以上就是小編今天分享的全部內(nèi)容。

免責聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻自行上傳,本網(wǎng)站不擁有所有權(quán),也不承認相關(guān)法律責任。如果您發(fā)現(xiàn)本社區(qū)中有涉嫌抄襲的內(nèi)容,請發(fā)送郵件至:operations@xinnet.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,本站將立刻刪除涉嫌侵權(quán)內(nèi)容。

免費咨詢獲取折扣

Loading