当我启动 Windows 10 Hyper-V Linux 虚拟机时,没有外部互联网连接,我如何通过 SSH 和 HTTP 连接到它?

问题描述

情况

我有一台 Windows 10 笔记本电脑,有时会在路上使用,希望在没有互联网连接的情况下能够在本地进行 Linux 开发。为此,我设置了一个 CentOS 虚拟机,安装了所有需要的软件。问题是,当笔记本电脑无法获得互联网地址时,Linux 虚拟机也没有互联网地址,因此我无法通过 SSH 或其他方式连接到它。

如果我尝试通过 SSH 连接到 127.0.0.1,我只是尝试连接到 Windows 10 操作系统,而不是虚拟机。

设置

我使用 Windows 10 Hyper-V manger 创建了一个 CentOS 虚拟机。我已使用 Virtual Switch Manager 为其设置了网络连接。

VM network switch for Linux

只要笔记本电脑有互联网连接,这就能很好地工作。 VM 有一个我在网络脚本中设置的 IP 地址。我可以通过 SSH 和 HTTP 连接到这个地址。

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNowN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: eth0: <broADCAST,MULTICAST,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 00:15:5d:01:07:01 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.140/24 brd 192.168.1.255 scope global noprefixroute eth0
       valid_lft forever preferred_lft forever
    inet6 fe80::215:5dff:fe01:701/64 scope link noprefixroute
       valid_lft forever preferred_lft forever

但是,如果笔记本电脑没有网络连接,那么虚拟机就没有我在网络脚本中设置的硬编码 IP 地址。

1: lo: <LOOPBACK,LOWER_UP> mtu 65536 qdisc noqueue state UNKNowN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: eth0: <NO-CARRIER,broADCAST,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000
    link/ether 00:15:5d:01:07:01 brd ff:ff:ff:ff:ff:ff

我尝试使用内部交换机启动 VM。然后,CentOS 系统保留指定的 IP 地址(192.168.1.140)。但是笔记本电脑无法通过ssh连接到它,出现“No Route to Host”错误

当笔记本电脑没有外部互联网连接时,有没有办法通过 SSH、HTTP 等方式连接到这个虚拟机?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)