在 Hyper-V 中设置网络连接

Alb*_*bin 5 linux ip-address hyper-v

我使用有线 USB 以太网适配器在 Windows\xc2\xa010 Pro 客户端上的 Hyper-V 上创建了多个虚拟机。Windows 计算机在重新启动后保留其 IP 地址,而 Linux 计算机(Ubuntu Server)则不会。两者都使用默认开关(注意:外部开关不适用于 USB 以太网适配器)。

\n

我注意到 Windows VM 保留了其 MAC 地址,因此我尝试将 Linux VM 的 MAC 地址从动态更改为静态。不幸的是这没有帮助。

\n

目标是在主机和 Linux VM 之间建立 SSH 连接(始终通过相同的 IP 地址)。除此之外,我希望虚拟机能够访问互联网。注意:主机是笔记本电脑,因此将通过不同的 LAN 和不同的接口建立互联网连接(内置 WLAN、不同扩展坞上的不同有线 USB-LAN 适配器等)

\n

解决方案:

\n

目前我正在考虑配置内部交换机。此设置建议依赖于提供内部交换机静态设置。不幸的是,它不允许设置默认网关,因此虚拟机无法使用主机互联网连接(至少我没有找到使用内部交换机实现此目的的解决方案)。

\n

注意:我对交换机使用 192.168.192.1/24,对虚拟机使用 192.168.192.2/24。我可以从主机 ping 交换机和虚拟机,反之亦然(我在主机上适当设置了 Windows 防火墙)。

\n

为了同时访问互联网(同时使用内部交换机通过不变的 IP 地址从主机连接到虚拟机),我向虚拟机添加了第二个网络接口并将其设置为默认交换机。我将第二个 NIC 配置为通过 DHCP 获取其配置(通过/etc/netplan/00-installer-config.yaml):

\n
network:\n  version: 2\n  renderer: networkd\n  ethernets:\n    eth0:\n      dhcp4: no\n      addresses: [192.168.192.2/24]\n    eth1:\n      dhcp4: true\n
Run Code Online (Sandbox Code Playgroud)\n

ip a显示它已启动并正在运行:

\n
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000\n   link/ether 00:15:5d:97:34:01 brd ff:ff:ff:ff:ff:ff\n   inet 192.168.192.2/24 brd 192.168.192.255 scope global eth0\n      valid_lft forever preferred_lft forever\n   inet6 fe80::215:5dff:fe97:3401/64 scope link\n      valid_lft forever preferred_lft forever\n3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000\n   link/ether 00:15:5d:97:34:03 brd ff:ff:ff:ff:ff:ff\n   inet 192.168.204.131/28 brd 192.168.204.143 scope global dynamic eth1\n      valid_lft 86333sec preferred_lft 86333sec\n   inet6 fe80::215:5dff:fe97:3403/64 scope link\n      valid_lft forever preferred_lft forever\n
Run Code Online (Sandbox Code Playgroud)\n

ping 内部交换机 ( 192.168.204.129) 有效(注意 Windows 防火墙!), ping 外部服务器(例如8.8.8.8 )也有效。感谢JW0914在评论中提出的建议!

\n

另请注意约翰的回答。它不适合我的情况,但它给你带来了一个很好的好处,即可以从路由器 LAN(而不仅仅是从主机)访问虚拟机。

\n

JW0*_*914 3

\n

默认交换机的唯一目的是提供 WAN 访问,并且不会在设计上提供静态 IP:

\n\n

根据需要静态 IP 的原因,在Virtual Switch ManagerPowerShell中创建:

\n

路由器管理的流量:

\n
    \n
  • 外部交换机:路由器分配静态IP(@John的回答 \n
      \n
    • 为以太网和 WiFi创建一个,因为虚拟机不会在有线/无线之间自动切换

    • \n
    \n
  • \n
\n

主机管理的流量:

\n
    \n
  • 内部交换机:在主机和客户端上手动分配 IP 子网\n
      \n
    • 允许 VM \xe2\x9f\xb7 主机和/或 VM \xe2\x9f\xb7 VM 之间的通信
    • \n
    • 缺少 DHCP 服务器和网关,因此只需设置IP 和子网掩码
      例子
      避免使用路由器通常使用的子网 [ 192.168.1.0/242.0/24100.0/24等],否则在使用同一子网连接到路由器时会出现问题

    • \n
    \n
  • \n
  • 专用交换机:在客户端上手动分配 IP 子网\n
      \n
    • 允许与主机流量隔离的 VM \xe2\x9f\xb7 VM 通信
    • \n
    \n
  • \n
\n
\n


虚拟交换机管理器:

\n
    \n
  1. Hyper-V 管理器\xe2\x86\x92操作\xe2\x86\x92虚拟交换机管理器
  2. \n
  3. 新建虚拟网络交换机\xe2\x86\x92创建虚拟交换机\xe2\x86\x92 <type> \xe2\x86\x92创建虚拟交换机
  4. \n
  5. 创建名称\xe2\x86\x92 选择连接类型\xe2\x86\x92确定/应用

  6. \n
\n

电源外壳:

\n
    \n
  1. WinKey+ R\xe2\x86\x92 powershell\xe2\x86\x92 Ctrl+ Shift+确定
  2. \n
  3. 列出现有网络适配器并记下要Name使用的适配器的:\n
    PS $ Get-NetAdapter\n\n  Name                      InterfaceDescription                    ifIndex Status       MacAddress             LinkSpeed\n  ----                      --------------------                    ------- ------       ----------             ---------\n  vWiFi                     Hyper-V Virtual Ethernet Adapter #3          62 Up           A0-11-22-33-44-55        10 Gbps\n  LAN                       Killer E2200 Gigabit Ethernet Controll\xe2\x80\xa6      25 Disconnected B0-11-22-33-44-55         0 bps\n  BT                        Bluetooth Device (Personal Area Networ\xe2\x80\xa6      23 Disconnected B1-11-22-33-44-55         3 Mbps\n  vLAN                      Hyper-V Virtual Ethernet Adapter             54 Up           A1-11-22-33-44-55        10 Gbps\n  vDefault                  Hyper-V Virtual Ethernet Adapter #2          58 Up           A2-11-22-33-44-55        10 Gbps\n  OpenVPN TAP6              TAP-Windows Adapter V9                       12 Disconnected A3-11-22-33-44-55         1 Gbps\n  OpenVPN WinTun            Wintun Userspace Tunnel                      11 Disconnected                         100 Gbps\n  WiFi                      Intel(R) Dual Band Wireless-AC 7260           5 Up           B2-11-22-33-44-55     866.7 Mbps\n  vShare                    Hyper-V Virtual Ethernet Adapter #4           2 Up           A4-11-22-33-44-55        10 Gbps\n
    Run Code Online (Sandbox Code Playgroud)\n
  4. \n
  5. 创建虚拟交换机:\n\n
  6. \n
\n