Vagrant 中一共有三種網(wǎng)絡(luò)配置脾还,下面我們將會詳解三種網(wǎng)絡(luò)配置各自優(yōu)缺點础拨。
一、端口映射(Forwarded port)
顧名思義是指把宿主計算機(jī)的端口映射到虛擬機(jī)的某一個端口上,訪問宿主計算機(jī)端口時糕簿,請求實際是被轉(zhuǎn)發(fā)到虛擬機(jī)上指定端口的舵鳞。
-
Vagrantfile中設(shè)定語法為:
config.vm.forwarded_port 80, 8080
以上將訪問宿主計算機(jī)8080端口的請求都轉(zhuǎn)發(fā)到虛擬機(jī)的80端口上進(jìn)行處理震檩。
-
默認(rèn)只轉(zhuǎn)發(fā)TCP包,UDP需要額外添加以下語句:
config.vm.forwarded_port 80, 8080, protocol: "udp"
-
-
優(yōu)點:
-
簡單易理解
容易實現(xiàn)外網(wǎng)訪問虛擬機(jī)
-
缺點:
- 如果一兩個端口需要映射很容易,但是如果有有很多端口抛虏,比如MySQL博其,MongoDB,tomcat等服務(wù)迂猴,端口比較多時慕淡,就比較麻煩。
- 不支持在宿主機(jī)器上使用小于1024的端口來轉(zhuǎn)發(fā)沸毁。比如:不能使用SSL的443端口來進(jìn)行https連接峰髓。
-
二、 私有網(wǎng)絡(luò)(Private network)
只有主機(jī)可以訪問虛擬機(jī)息尺,如果多個虛擬機(jī)設(shè)定在同一個網(wǎng)段也可以互相訪問携兵,當(dāng)然虛擬機(jī)是可以訪問外部網(wǎng)絡(luò)的。
-
設(shè)定語法為:
config.vm.network "private_network", ip: "192.168.50.4"
-
優(yōu)點:
安全搂誉,只有自己能訪問
-
缺點:
因為私有的原因徐紧,所以團(tuán)隊成員其他人不能和你寫作
三、公有網(wǎng)絡(luò)(Public network)
虛擬機(jī)享受實體機(jī)器一樣的待遇炭懊,一樣的網(wǎng)絡(luò)配置并级,vagrant1.3版本之后也可以設(shè)定靜態(tài)IP。
-
設(shè)定語法如下:
config.vm.network "public_network", ip: "192.168.1.120"
-
公有網(wǎng)絡(luò)中還可以設(shè)置橋接的網(wǎng)卡侮腹,語法如下
config.vm.network "public_network", :bridge => 'en1: Wi-Fi (AirPort)'
-
優(yōu)點:
方便團(tuán)隊協(xié)作嘲碧,別人可以訪問你的虛擬機(jī)
-
缺點:
需要有網(wǎng)絡(luò),有路由器分配IP
手碼不易父阻,轉(zhuǎn)發(fā)請注明出處愈涩!
參考鏈接: http://www.williamsang.com/archives/2401.html