【发布时间】:2020-12-06 11:32:24
【问题描述】:
我有一台安装了 Windows 10 2004 的笔记本电脑。我配置了 Hyper-V 并创建了两个 VM: 在一个 VM 上运行 Windows 10 以包含我必须用于工作联系人的多个恶意软件 IM 软件。在另一个 VM 上运行 ubuntu server 20.04 进行开发。
我为 Hyper-V 配置了内部网络类型的虚拟交换机,并且 Hyper-V 自动指定了具有静态 IP 的虚拟交换机。我想用机器名连接到 ubuntu。所以我用静态IP指定了ubuntu VM,并在主机windows 10的hosts文件中添加了一个项目。然后我可以使用VS Code的远程SSH功能在windows 10主机上开发node.js应用程序。在我重新启动笔记本电脑之前一切正常。
我重新启动笔记本电脑后,hyper-v 虚拟交换机的 IP 地址已更改。我无法再重新连接到 VM ubuntu,因为 VM ubuntu 配置了静态 IP 和基于虚拟交换机旧 IP 的默认网关。
我通过UI检查了虚拟交换机的IPv4属性,它被配置为“使用以下IP”,所以我认为IP不应该改变。但是我错了。每次我的笔记本电脑重新启动后,虚拟交换机的“静态 IP”总是会发生变化。此更改会中断与 VM ubuntu 的连接。
那么,有没有什么办法可以防止虚拟交换机的IP地址被改变呢?或者以某种方式向 Hyper-V 虚拟交换机添加名称解析机制(然后我可以在 VM 中使用动态 IP 地址进行配置)?
【问题讨论】:
-
如何设置 vswitch 的静态 IP 地址?需要明确的是,当您为 vswitch 分配静态 IP 地址时,您是在主机分区上分配此静态地址,而不是虚拟机本身。
-
路径:控制面板->网络和internet->网络连接。有一个名为“vEthernet(默认交换机)”的适配器。我右键单击此适配器并打开属性 UI。在“网络”选项卡中,我选择了“...IPV4”并打开其属性,然后显示经典的 IP 地址设置 UI。 UI 中显示的是适配器“使用以下 IP 地址”。
-
为什么我需要来自虚拟交换机的信息?原因是当我使用静态 IP 地址配置 VM ubuntu 时需要网关信息。请记住,我已经安装了另一个运行 Windows 10 副本的 VM。 Windows 10 VM 配置为使用 dhcp。也就是说,所有的 IP 配置都是由 Hyper-V 创建的。我观察到虚拟交换机的 IP 被用作 windows 10 VM 中的默认网关。所以我用相同的网关配置了类似的 ubuntu VM。
-
但是,现在我知道虚拟交换机的 IP 在每次重新启动后都会发生变化。它要求我每次都必须修改 ubuntu 的 IP 和网关,或者只使用 dhcp。这两种情况都会破坏保存在 VS Code 中的远程连接。
-
内部 v-switch 是如何制作的?还是安装 Hyper-V 时默认的 v-switch 已经存在?
标签: static switch-statement ip virtual hyper-v