我通过 vagrant 配置了一个 VirtualBox 虚拟机,使其拥有一个位于 192.168.56.100 的 private_network 地址,并注意到我可以 ping 该地址,但不能 ssh 到它。
经过一番调查后,我发现即使关闭虚拟机,我仍然可以 ping 通地址 192.168.56.100,而没有 VirtualBox 虚拟机正在运行。
更奇怪的是,当我重新配置我的 Vagrant 文件以使用地址 192.168.56.101,然后重新启动我的主机时。然后最初重新启动后 vboxnet0 不存在,我无法 ping 任何 192.168.56.* 地址。然后,当我通过 vagrant up 启动虚拟机时,vboxnet0 在 192.168.56.1 上可用,新虚拟机在 192.168.56.101 上可用。但我仍然可以 ping 通 192.168.56.100?不存在使用该地址的虚拟机!
我怎样才能进一步调试这个?我怎样才能知道 192.168.56.100 是什么? vboxnet0不是brdige设备,因此我无法使用brctl等工具。
谢谢!
PS:我使用的是“Ubuntu 22.04 LTS”:Linux master 5.15.0-30-generic #31-Ubuntu SMP Thu May 5 10:00:34 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux。
我使用的是 VirtualBox 版本 6.1.32_Ubuntu r149290。
首先,这是我之前要求的附加信息vagrant up
。
ip route sh
default via 192.168.178.1 dev wlp4s0 proto dhcp metric 600
169.254.0.0/16 dev virbr0 scope link metric 1000 linkdown
172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 linkdown
172.18.0.0/16 dev br-87529e8f38b0 proto kernel scope link src 172.18.0.1 linkdown
172.20.0.0/16 dev br-09115dd7adf5 proto kernel scope link src 172.20.0.1 linkdown
172.21.0.0/16 dev br-95476c66ec3f proto kernel scope link src 172.21.0.1 linkdown
172.25.0.0/16 dev br-f259d334ba7f proto kernel scope link src 172.25.0.1 linkdown
192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1 linkdown
192.168.178.0/24 dev wlp4s0 proto kernel scope link src 192.168.178.63 metric 600
ip addr show | grep 'inet '
inet 127.0.0.1/8 scope host lo
inet 192.168.178.63/24 brd 192.168.178.255 scope global dynamic noprefixroute wlp4s0
inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
inet 172.20.0.1/16 brd 172.20.255.255 scope global br-09115dd7adf5
inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0
inet 172.18.0.1/16 brd 172.18.255.255 scope global br-87529e8f38b0
inet 172.21.0.1/16 brd 172.21.255.255 scope global br-95476c66ec3f
inet 172.25.0.1/16 brd 172.25.255.255 scope global br-f259d334ba7f
ping 192.168.56.100
PING 192.168.56.100 (192.168.56.100) 56(84) bytes of data.
^C
--- 192.168.56.100 ping statistics ---
4 packets transmitted, 0 received, 100% packet loss, time 3080ms
和这里之后一样vagrant up
:
ip route sh
default via 192.168.178.1 dev wlp4s0 proto dhcp metric 600
169.254.0.0/16 dev virbr0 scope link metric 1000 linkdown
172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 linkdown
172.18.0.0/16 dev br-87529e8f38b0 proto kernel scope link src 172.18.0.1 linkdown
172.20.0.0/16 dev br-09115dd7adf5 proto kernel scope link src 172.20.0.1 linkdown
172.21.0.0/16 dev br-95476c66ec3f proto kernel scope link src 172.21.0.1 linkdown
172.25.0.0/16 dev br-f259d334ba7f proto kernel scope link src 172.25.0.1 linkdown
192.168.56.0/24 dev vboxnet0 proto kernel scope link src 192.168.56.1
192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1 linkdown
192.168.178.0/24 dev wlp4s0 proto kernel scope link src 192.168.178.63 metric 600
ip addr show | grep 'inet '
inet 127.0.0.1/8 scope host lo
inet 192.168.178.63/24 brd 192.168.178.255 scope global dynamic noprefixroute wlp4s0
inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
inet 172.20.0.1/16 brd 172.20.255.255 scope global br-09115dd7adf5
inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0
inet 172.18.0.1/16 brd 172.18.255.255 scope global br-87529e8f38b0
inet 172.21.0.1/16 brd 172.21.255.255 scope global br-95476c66ec3f
inet 172.25.0.1/16 brd 172.25.255.255 scope global br-f259d334ba7f
inet 192.168.56.1/24 brd 192.168.56.255 scope global vboxnet0
我启动的虚拟机的 IP 为 192.168.56.101 并按预期响应:
ping 192.168.56.101
PING 192.168.56.101 (192.168.56.101) 56(84) bytes of data.
64 bytes from 192.168.56.101: icmp_seq=1 ttl=64 time=0.364 ms
64 bytes from 192.168.56.101: icmp_seq=2 ttl=64 time=0.205 ms
但现在 192.168.56.100 上也有响应:
ping 192.168.56.100
PING 192.168.56.100 (192.168.56.100) 56(84) bytes of data.
64 bytes from 192.168.56.100: icmp_seq=1 ttl=255 time=0.108 ms
64 bytes from 192.168.56.100: icmp_seq=2 ttl=255 time=0.078 ms
答案1
答案实际上是由 @BrahimGaabab 提供的:我通过文件 -> 主机网络管理器 GUI 检查,然后切换到 DHCP 选项卡,那里显示“服务器地址:192.168.56.100”。
我绝对不会想到这一点。我猜测“基地址”192.168.56.1 也将充当 DHCP 服务器。