同局域网里设备远程访问Hyper-V里的Windows虚拟机

上一篇中,记录了为Hyper-V虚拟机配置静态IP供本机连接访问,但是后面自己实践了一下,发现同“局域网内的设备”依旧无法访问到Hyper-V内的虚拟机。之前也说过,博主大部分都是偏向记录型文章,可能上一秒执行完下一秒就忘了,外加上零零散散不怎么完整所以很多都是丢写一半丢私密里,记得那一篇记录的内容似乎还是在去年……这次重新更新一下“同局域网内访问Hyper-V虚拟机”的相关内容,方便以后自己查阅,简单看看就好。

简单说明

写在前面

如果物理宿主机使用的是WIFI网络,那么通过本文记录的方式,可能会出现“网桥”桥接,那这种就不建议了。

反正博主过去很长一段时间被WIFI网络折腾的苦不堪言:每次开机/重启,都能有概率的出现网络异常,包括但不限于无网络、网络访问受限。所以除了之前像之前水过的“Windows11 网桥 无网络访问权限?无法使用ipv6网络?”底下的解决方案那样,使用网络修复外,只能无奈的选择多次重启来“粗暴”的解决问题……但治标不治本,能复现的概率永远不为0……

简述

  • E1 :手动创建的虚拟外部网络

通过创建外部网络,指定网卡、为虚拟机分配静态IP的方式,让同局域网内的其它设备都能访问到,同时当前的物理主机也能使用该网卡访问该虚拟机。

  • 随手录

[bvideo bv="1ea4y1f7SD"][/bvideo]

方式

今天心血来潮试了一下上一篇文章,结果发现同局域网下死活不能访问到虚拟机内部。一检查就发现问题了:内部网络只能由此物理计算机上运行的虚拟机使用,或者虚拟机与物理机之间的连接,不提供与物理网络之间的连接。而专用网络给出的描述就更不满足需求。

因此,在排除掉:桥接共享的两种方式后,Hyper-V虚拟机只能选择“外部网络”。
使用外部网络的好处是:可以简单理解成将物理机当前使用的网卡虚拟一块连接到Hyper-V虚拟机,这样子的话比如物理机里有ipv6网络,那么虚拟机内部依旧有ipv6,相对来说便捷很多。

2.1 新建外部网络

设置,虚拟交换机管理器,添加一个外部网络,名称随意。为了方便记录,博主这里用的是 E1 。然后下面的网卡选择你当前使用的网卡。

2.2 使用外部网络

找到对应的虚拟机,设置。直接修改原来的switch default为上面创建好的 E1 网络,保存就可以了。当然,你也可以选择新添加一块网络卡进去,这里就不展开了。

2.3 设置静态IP(虚拟机)

虚拟机里点开网络适配器,找到创建好的 E1 虚拟外部网卡,将其ipv4信息填写一下,设置为静态的,方便同局域网下的其它设备访问。注意,这里的ip地址就不能任意填写了,你可以使用ipconfig命令来查看当前分配的ip地址,然后最后一段可以选择性的填大一些,反正不会被同局域网内的其它设备重复冲突就没问题。

完成之后,还要测试网络是否正常,你可以禁用虚拟机内部除了E1以外的网卡,如能正常访问到互联网,那就表示一切正常。否则请检查上面分配的ip地址是否正确。

2.4 使用方式

如果需要访问到该虚拟机内部资源、服务等,直接使用上面分配好的静态ip地址。

折叠标题

2.5 删除其它网络(虚拟机)

这个为“可选”。如果没有其它的需要,那可以选择性的删除,或者直接在虚拟机内禁用相关的网卡,仅保留E1这块外部网卡就可以了。对于“删除”操作,需要打开Hyper-V管理器,选择对应的虚拟机,右侧右下角选择设置,将不需要的网络适配器移除就可以了。这个过程可能会提示你关闭虚拟机后操作,反正有提示再按照提示来操作就ok。

这很重要

虽然博主自己也就遇到过一次(手贱,拔了网卡……),但是还是蛮记录下吧,指不定哪天又复现了也不至于各种搜索引擎。

当网卡变更后,本地无网络连接。只需要打开Hyper-V管理器,找到虚拟交换机管理器,将使用的外部网络里的物理网卡切换为你物理机当前使用的网卡就可以了,切换完成后,本地和虚拟机内部的网络均会恢复。也可以选择简单粗暴一点:直接打开宿主机的控制面板——网络连接,将外部虚拟网卡禁用也能让本地网络恢复连接,但是这样会造成Hyper-V里的虚拟机无网络,所以一般也只适用于本地急需要连接到互联网的情况。

碎碎念

对于其它设备要远程访问到Hyper-V虚拟机、WEB服务等, E1 对应的物理网卡所使用的网络应和这些设备处在同一局域网下,这样才能被访问到,否则依旧是白搭。

另外,如果只是要物理机访问Hyper-V虚拟机里的资源,那么建议还是使用内部网络,相对来说安全一些,反正ip随便设置别人也连不上对吧 ~

阅读剩余
THE END