找回密码
 加入我们
搜索
      
查看: 11544|回复: 24

[NAS] 请教一个关于HyperV直通网卡的问题--有答案了

[复制链接]
发表于 2023-12-19 07:15 | 显示全部楼层 |阅读模式
本帖最后由 taotao0210 于 2023-12-19 17:29 编辑

NUC9小主机,装了一张8125BG 4口的网卡,配置的HyperV虚拟机直通两个口进去做OP, 配置好可以正常开机,但是小主机重启后会虚拟机开机就会提示以下错误
HyperV.jpg

按理已经正常配置开机运行了,怎么重启就会出错,难道PCIE设备的ID地址每次重启都会变化?


~~~~~~~搞定了,可能是HyperV虚拟机直通PCIE设备后的一个bug,就是虚拟机设置里面必须选择自动启动才不会出错;
HyperV_OK2.jpg
HyperV_OK.jpg
发表于 2023-12-19 07:42 来自手机 | 显示全部楼层
hyperv没有直通,hyperv的优势是完全虚拟化,虚拟机与宿主硬件完全分离
 楼主| 发表于 2023-12-19 08:33 | 显示全部楼层
tedaz 发表于 2023-12-19 07:42
hyperv没有直通,hyperv的优势是完全虚拟化,虚拟机与宿主硬件完全分离

那就算完全虚拟化好了,我不明白的是为什么配置好可以正常开机启动,电脑重启后就出错了

以前也碰到过,把虚拟机关闭选项由 强制关闭虚拟机 改为 关闭 关闭来宾系统 就没问题了,但是这次不管怎么改都是第一次配置好启动没问题,重启后就报错
发表于 2023-12-19 08:43 来自手机 | 显示全部楼层
taotao0210 发表于 2023-12-19 08:33
那就算完全虚拟化好了,我不明白的是为什么配置好可以正常开机启动,电脑重启后就出错了

以前也碰到过, ...

从错误信息看,引用了额外的硬件,请描述下具体是怎么安装的hyperv,引用了哪些硬件?
 楼主| 发表于 2023-12-19 09:06 | 显示全部楼层
本帖最后由 taotao0210 于 2023-12-19 09:08 编辑
tedaz 发表于 2023-12-19 08:43
从错误信息看,引用了额外的硬件,请描述下具体是怎么安装的hyperv,引用了哪些硬件? ...


HyperV建立了一个虚拟机,用的iStoreOS的磁盘文件,添加了两个8125BG的网卡端口

现在问题是,如果是我配置错误,为什么配置好虚拟机是可以正常开机启动运行的,而且虚拟机里面也可以赞成识别添加的两个网口,但是机器重启后虚拟机就报错了

同样的问题,我之前在另外一台机器上也碰到过几次,但之前我把关闭虚拟机选项由“强制关闭虚拟机” 更改为 “关闭来宾系统”之后就没问题了,这次换机器后改这个也没用
发表于 2023-12-19 09:07 | 显示全部楼层
动态内存关闭了吗
发表于 2023-12-19 09:08 来自手机 | 显示全部楼层
没碰到过,双口网口我要起来没问题
 楼主| 发表于 2023-12-19 09:16 | 显示全部楼层
yin19991999 发表于 2023-12-19 09:08
没碰到过,双口网口我要起来没问题

是4口的螃蟹 8125BG网卡,直通了两个网口给虚拟机
 楼主| 发表于 2023-12-19 09:17 | 显示全部楼层
Emmerich 发表于 2023-12-19 09:07
动态内存关闭了吗

关闭了的,没开动态内存
发表于 2023-12-19 09:21 来自手机 | 显示全部楼层
taotao0210 发表于 2023-12-19 09:16
是4口的螃蟹 8125BG网卡,直通了两个网口给虚拟机

直接虚拟化完事了,直通性能虽然好点,但折腾,之前折腾什么sr-iov,直通网卡,各种问题我也放弃了
发表于 2023-12-19 09:27 | 显示全部楼层
安装的是哪个版本的winserver? 这个问题我遇到过,用win2016标准版就报这个问题,后来换win2022 dataserver就好了。  当然也有可能是多口网卡的原因, 有些网卡不支持拆分端口来直通(不过这种一般设置时就会提示失败)
发表于 2023-12-19 09:52 | 显示全部楼层
taotao0210 发表于 2023-12-19 09:06
HyperV建立了一个虚拟机,用的iStoreOS的磁盘文件,添加了两个8125BG的网卡端口

现在问题是,如果是我配 ...

不要直通,hyperv不支持直通。

你说的添加了两个8125BG网卡口,具体是怎么添加的?
按照微软手册,应该将8125BG网卡正确识别到宿主windows,显示成4个网卡,然后针对一个或多个网卡做Hyper-V虚拟化,在虚拟机中添加虚拟化网卡。
 楼主| 发表于 2023-12-19 12:59 | 显示全部楼层
tedaz 发表于 2023-12-19 09:52
不要直通,hyperv不支持直通。

你说的添加了两个8125BG网卡口,具体是怎么添加的?

Powershell 里面用下面命令操作的

Dismount-VMHostAssignableDevice -LocationPath "{目标设备的位置路径}" -Force
Add-VMAssignableDevice -LocationPath "{目标设备的位置路径}" -VMName "{目标虚拟机名}

大家都叫直通,反正不管它叫什么,是可以成功使用的,我之前也是这么用的
 楼主| 发表于 2023-12-19 13:03 | 显示全部楼层
saiyaman5 发表于 2023-12-19 09:27
安装的是哪个版本的winserver? 这个问题我遇到过,用win2016标准版就报这个问题,后来换win2022 dataserver ...

安装的是WIN11然后通过SN切换到企业多会话版本使用的,理论上等同于WIN2022 dataserver

我之前一台机器也碰到过,但是更改了关闭系统选项后就没问题了;

这两天新买了一台NUC9后碰到同样的问题但是没法解决,很奇怪;出现这个错误的时候,我把虚拟机删除重新建一个新的,然后按照同样操作把网卡的两个口直通过去,是可以正常启动虚拟机并使用的
 楼主| 发表于 2023-12-19 13:04 | 显示全部楼层
yin19991999 发表于 2023-12-19 09:21
直接虚拟化完事了,直通性能虽然好点,但折腾,之前折腾什么sr-iov,直通网卡,各种问题我也放弃了 ...

我就是折腾玩玩,直接虚拟化肯定是没问题的,但碰到问题总想着看看如何解决

其实,最终底层系统我会选择用Esxi或者PVE的
发表于 2023-12-19 13:05 | 显示全部楼层
taotao0210 发表于 2023-12-19 12:59
Powershell 里面用下面命令操作的

Dismount-VMHostAssignableDevice -LocationPath "{目标设备的位置 ...

这样使用是有一些前提条件的。有些硬件无法稳定的这样使用。
发表于 2023-12-19 13:09 | 显示全部楼层
本帖最后由 danety 于 2023-12-19 13:19 编辑
tedaz 发表于 2023-12-19 09:52
不要直通,hyperv不支持直通。

你说的添加了两个8125BG网卡口,具体是怎么添加的?


谁告诉你hyperv不支持直通的?Hyper-V虚拟机的物理设备直通,简称DDA,Discrete Device Assignment

lz这个问题我也遇到过,也是8125bg 4口2.5G卡,黑色的,我觉得是网卡的问题,我同样操作57810s就一切正常

另外命令界面太麻烦了,可以使用DiscreteDeviceAssigner这个工具,图形化操作

这个问题一般是出现在winserver下的hyperv上,解决方法是在注册表里,新建两个项值,禁用SDA(SecureDeviceAssignment,安全设备分配 和SupportedDeviceAssignment,支持的设备分配)检测:

HKLM:\SOFTWARE\Policies\Microsoft\Windows\HyperV,
RequireSecureDeviceAssignment,DWORD, 0
RequireSupportedDeviceAssignment, DWORD,0
发表于 2023-12-19 14:15 | 显示全部楼层
taotao0210 发表于 2023-12-19 13:04
我就是折腾玩玩,直接虚拟化肯定是没问题的,但碰到问题总想着看看如何解决

其实,最终底层系统我会选择 ...

我用windows 10 后来升级到了11 做服务器好几年了 挺稳的 没有用直通
 楼主| 发表于 2023-12-19 14:20 | 显示全部楼层
magiclu 发表于 2023-12-19 14:15
我用windows 10 后来升级到了11 做服务器好几年了 挺稳的 没有用直通

不直通的话,不是说效率会低么,当然我实际也没比较过,HyperV所谓直通和不直通效率差异多大
发表于 2023-12-19 15:43 | 显示全部楼层
taotao0210 发表于 2023-12-19 14:20
不直通的话,不是说效率会低么,当然我实际也没比较过,HyperV所谓直通和不直通效率差异多大 ...

现代的硬件 千兆是能跑得动的 如果跑的不是很接近千兆之类的 可以换万兆
我之前用过万兆的洋垃圾网卡 复制速度500MB/S 左右是能达到的 不过万兆网卡跑满就算是直通 有时候也会存在兼容问题之类的跑不满
后来觉得万兆的洋垃圾网卡太耗电就拆掉了 千兆的也够用 主板上有2.5g的网卡 不过还没买2.5g的交换机之类的 不好测试2.5g
发表于 2023-12-19 16:21 | 显示全部楼层
本帖最后由 pkaewwc1 于 2023-12-19 16:24 编辑

想直通的话必须是server版本的系统 然后用DDA这个软件就可以了
https://github.com/chanket/DDA

也可以看这个视频跟着操作就行https://www.bilibili.com/video/BV1k8411777H/
我现在就是这么设置的 一直在用
发表于 2023-12-19 16:47 | 显示全部楼层
DDA图形化操作,直通非常简单,Hyper-V建立完虚拟机刷新下选择设备就行了
 楼主| 发表于 2023-12-19 17:09 | 显示全部楼层
pkaewwc1 发表于 2023-12-19 16:21
想直通的话必须是server版本的系统 然后用DDA这个软件就可以了
https://github.com/chanket/DDA

不是操作的问题,直通开始是成功的,而且虚拟机可以正常启动;问题在于宿主机重启后才出现

DDA我知道,我也用过,和这个问题没有太大关系,不管是用命令行操作还是DDA操作实质是一样的
 楼主| 发表于 2023-12-19 17:29 | 显示全部楼层
搞定了,可能是HyperV虚拟机的bug, 需要在虚拟机设置里面选择 “自动启动', 之前说的调整来宾账户自动关闭没有影响,以前可能正好设置选到了自动启动

具体见一楼
发表于 2024-8-27 08:57 | 显示全部楼层
是不是只能winserver才能直通,win10可以网卡直通不
您需要登录后才可以回帖 登录 | 加入我们

本版积分规则

Archiver|手机版|小黑屋|Chiphell ( 沪ICP备12027953号-5 )沪公网备310112100042806 上海市互联网违法与不良信息举报中心

GMT+8, 2025-4-27 15:41 , Processed in 0.013946 second(s), 6 queries , Gzip On, Redis On.

Powered by Discuz! X3.5 Licensed

© 2007-2024 Chiphell.com All rights reserved.

快速回复 返回顶部 返回列表