使用VBox 5.02 OSE,主機作業系統是Arch Linux 4.1.6-1-ARCH
我已使用網路的預設名稱 (intnet) 將帶有網路適配器的來賓作業系統 Ubuntu Minimal 14.04 配置為「內部網路」。
現在我已經使用以下命令為「intnet」專用網路啟用了 Virtualbox dhcp 伺服器:
$ VBoxManage dhcpserver add --netname intnet --ip 10.10.10.1 --netmask 255.255.255.0 --lowerip 10.10.10.2 --upperip 10.10.10.12 --enable
我啟動來賓作業系統,發現它獲得了由 dhcp 伺服器動態分配的 IP 10.10.10.2。
但如果我現在嘗試從我的虛擬機器 ping dhcp 伺服器,我得不到答案:
$ ping 10.10.10.1
PING 10.10.10.1 (10.10.10.1) 56(84) bytes of data.
^C
--- 10.10.10.1 ping statistics ---
6 packets transmitted, 0 received, 100% packet loss, time 5005ms
這是為什麼?
答案1
「內部網路」僅允許虛擬訪客之間的連接,而不允許主機之間的連接。如果您也想與主機連接,請選擇“僅主機網路”(該名稱有點誤導)
答案2
您無法 ping 內部 DHCP 伺服器的原因可能是由於服務本身的簡約/強化配置,因此您實際上有一個未配置為回應 ping 的「主機」。
但是,您可以使用以下命令執行連接埠掃描,nmap
這將幫助您查看主機是否在內部網路中啟動(請注意,此類掃描需要sudo
特權):
sudo nmap -Pn -n -sU -p67-68 10.10.10.1 | grep Host
您應該看到以下輸出:
Host is up (0.00021s latency).
嘗試使用不存在的 IP 位址,您應該不會得到任何結果。