三種連接模式
虛擬機主要有3種網絡連接方式:NAT(共享),Host-Only,Bridge(橋接)。
Bridge(橋接) :虛擬機與宿主機具有不同的 IP 地址,與宿主機保持在同一網段。
- 宿主機局域網內其他主機可以與虛擬機互相訪問
Host-Only :虛擬機與宿主機具有不同的 IP 地址,與宿主機位於不同網段。從網絡技術上相當於為宿主主機增添了一個虛擬網卡,讓宿主主機變成一臺雙網卡主機。
- 這種方式只能進行虛擬機和宿主機之間的網絡通信,網絡內其他機器不能訪問虛擬機,虛擬機也不能訪問其他機器。
NAT:加設了一個虛擬的 NAT 服務器,使得虛擬局域網內的虛擬機在對外訪問時, 完全“冒用”宿主主機的 IP 地址。
- 這種方式可以實現本機系統與虛擬系統的雙向訪問,但網絡內其他機器不能訪問虛擬系統,虛擬系統可以通過本機系統用 NAT 協議訪問網絡內其他機器。
DHCP
開啟虛擬機即使配置了網絡模式可能也會出現 ifconfig 沒有 IP 的情況(只有127.0.0.1),這可能是由於虛擬機沒有通過 DHCP 分配到 IP 地址,需要先執行:
sudo dhclient -v
dhclient:(DHCP 客戶端)是 Linux 和 Unix 系統中用於動態獲取 IP 地址的工具
虛擬機做靶機的一些例子
在虛擬機上開靶機做內網滲透的時候,需要先用 nmap 掃到這個靶機的 IP 再做後續滲透,第一次掃的時候一直掃不到,搞清楚網段和連接模式之後才成功。
使用 NAT(共享)連接的虛擬機的網段可以從本機 ifconfig - bridge10x 查看,一般是開啟虛擬機之後會新增一個 bridge,這個新增的 bridge 的 IP 地址就指明瞭虛擬機的c段。
同時,虛擬機可以通過這個 bridge 代表的橋接接口與主機通信,比如,我需要從靶機上反彈 shell 的時候就應該選擇這個 bridge 的 inet 地址(IP 地址)連接到主機。
NAT模式,主機和虛擬機支持雙向通信:
- 虛擬機 - 主機:bridge10x
- 主機 - 虛擬機:虛擬機的IPv4地址
為什麼主機ping不通虛擬機,但是主機可以nc連接
GPT:虛擬網絡的 NAT 機制通常只轉發 TCP/UDP 數據包,不會處理 ICMP 數據包。因此,主機 Ping 虛擬機時,虛擬機的回應無法通過 NAT 引擎到達主機。
← Previous post使用 VSCode 做嵌入式開發 on macOS
Next post →常用Linux命令
