可以 ssh 到另一个子网中的物理服务器,但不能 ssh 到该机器上的桥接虚拟机
can ssh to physical server in another subnet, but cannot ssh to bridged vm on that machine
子网 192.168.2.0 中的主机 A 192.168.2.4
子网 192.168.3.0 中的主机 B 192.168.3.53
子网 192.168.3.0 中的主机 C 192.168.3.54
主机 B 上的 VM D 192.168.3.60,桥接网络
- 主机A可以ssh到主机B和主机C
- 主机 B 和主机 C 可以通过 ssh 连接到虚拟机 D
但是,
- 主机 A 无法通过 ssh(甚至 ping)到虚拟机 D
我使用 vagrant 来启动虚拟机,供应商是 VirtualBox。
谁能指出问题出在哪里?非常感谢。
已解决!
Vagrant推出的VirtualBox Vm有2个网卡
eth0: 10.0.2.15
eth1: 192.168.3.60
并且默认网关设置为 10.0.2.2。
如果我想ssh到虚拟机,我应该将其默认网关设置为与子网192.168.3.0相同(例如192.168.3.252)并删除之前的默认网关10.0.2.2
所以,我在vm上为解决问题所做的是:
$ sudo 路由添加默认 gw 192.168.3.252
$ sudo route del default gw 10.0.2.2
子网 192.168.2.0 中的主机 A 192.168.2.4
子网 192.168.3.0 中的主机 B 192.168.3.53
子网 192.168.3.0 中的主机 C 192.168.3.54
主机 B 上的 VM D 192.168.3.60,桥接网络
- 主机A可以ssh到主机B和主机C
- 主机 B 和主机 C 可以通过 ssh 连接到虚拟机 D
但是,
- 主机 A 无法通过 ssh(甚至 ping)到虚拟机 D
我使用 vagrant 来启动虚拟机,供应商是 VirtualBox。
谁能指出问题出在哪里?非常感谢。
已解决!
Vagrant推出的VirtualBox Vm有2个网卡
eth0: 10.0.2.15
eth1: 192.168.3.60
并且默认网关设置为 10.0.2.2。
如果我想ssh到虚拟机,我应该将其默认网关设置为与子网192.168.3.0相同(例如192.168.3.252)并删除之前的默认网关10.0.2.2
所以,我在vm上为解决问题所做的是:
$ sudo 路由添加默认 gw 192.168.3.252
$ sudo route del default gw 10.0.2.2