使用 VBox 5.02 OSE,主机操作系统是 Arch Linux 4.1.6-1-ARCH
我已将客户操作系统 Ubuntu Minimal 14.04 的网络适配器配置为“内部网络”,使用网络的默认名称 (intnet)。
现在我已经使用以下命令为“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。
但是如果我现在尝试从我的 VM 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 地址尝试此操作,您将不会得到任何结果。