當我們在開發部署時,如果時在虛拟機上部署,那麼我們希望虛拟機能上網,并且主機能通路到虛拟機裡的項目,那麼我們就需要使用host-only模式了。
首先我們先了解一下什麼是host-only模式:(非常重要,這個理不清會踩很多坑)
轉載自:VMware虛拟機三種網絡模式詳解--Host-Only(僅主機模式)
【簡介】
Host-Only模式是出于安全考慮,Host-Only模式将虛拟機與外網隔開,使得虛拟機成為一個獨立的系統,隻與主機互相通訊。如果要使得虛拟機能聯網,我們可以将主機網卡共享給VMware Network Adapter VMnet1網卡,進而達到虛拟機聯網的目的
【詳情】
Host-Only模式其實就是NAT模式去除了虛拟NAT裝置,然後使用VMware Network Adapter VMnet1虛拟網卡連接配接VMnet1虛拟交換機來與虛拟機通信的,其網絡結構如下圖所示:

接下來我們研究一下怎麼使用host-only模式搭建網絡:
以virtualbox+centos7為例,首先點開 【管理】-》【主機網絡管理器】配置好你的網卡資訊:
接下來點開你的網絡連接配接,會發現有個名字相對應的虛拟網卡
可以看到我設定的網關位址是:192.168.137.1,與第一張圖相符。實體位址(MAC)為:08-00-27-00-D4-71
接下來我們把本機網絡共享給這張網卡
我們再回到virtualbox
在虛拟機的網卡設定裡一定要確定MAC位址一緻,不一緻自己改一下。
進入虛拟機,我們去配置一下網卡資訊。
cd /etc/sysconfig/network-scripts
vi ifcfg-enp***
TYPE=Ethernet
#這個就是網卡的實體位址(MAC位址)
HWADDR=08:00:27:00:D4:71
PROXY_METHOD=none
BROWSER_ONLY=no
#IP設為靜态的
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=enp0s3
UUID=e30094fc-76f0-4fcf-8ee2-11d8874e17f4
DEVICE=enp0s3
#指定網絡開機自啟動
ONBOOT=yes
#與虛拟網卡在同一網段
IPADDR=192.168.137.20
NETMASK=255.255.255.0
#網關為虛拟網卡ip
GATEWAY=192.168.137.1
#DNS為外網DNS,不指定的話能ping通ip但無法解析域名
DNS1=192.168.10.1
編輯好後,按esc 然後 打 :wq! 儲存退出即可,w=write q=quit
然後我們使用指令重新開機網絡
service network restart
重新開機成功後檢視一下網卡資訊
ip addr
最後确認資訊無誤的話,試着ping 一下主機ip吧!