Unraid 篇三:SR-IOV网卡虚拟分组直通及避坑指南

2022-05-31 11:20:15 7点赞 70收藏 11评论

写在前面

这个课题其实可以说是老生常谈了,自己很早就配置了.

主要是最近想把两年前的坑补上,并且留下记录以后备查方便.踩过的坑太多,自己写一段流畅的操作记录,比扒拉各个帖子更实在点.


Q:SR-IOV是啥?

A:简单讲就是讲一张网卡支持SR-IOV就可以将单个或多个网口分组直通出更多的虚拟网卡,提供给虚拟机或者docker等其他应用使用,节约成本,更高效利用,比较明显的缺点就是小包转发效率比正常单口直通要差.支持的设备有比较常见的 I350 , X520 等网卡.选购这些网卡也是有比较大的坑,本篇不详述.

Q:如何看自己的设备是否支持SR-IOV?

A:现在unraid已经非常无脑简单配置了,打开 工具 - 系统设备 ,鼠标移动到网卡的字段上,

如果在单根 I/O 后面有(SR-IOV)字样,就说明支持.


SR-IOV网卡虚拟分组直通及避坑指南



阅读完以上,如果你没有需求,alt+F4. 有需求,这篇文章可以让你少踩很多坑,我会提供我的方案,并且快速配置完.



正文


1.前提及准备工作:


主板开启 VT-d , 网卡支持 SR-IOV

以我这张 I350-T4 网卡( 01:00.0 ~ 01.00.3 )为例

查询是否支持的命令:

lspci -s 01:00.0 -vvv | grep Capabilities

查询可虚拟数量的命令:

cat /sys/bus/pci/devices/0000:01:00.0/sriov_totalvfs


我的显示8,所以最多能虚拟7个,1个被物理口占用,根据实际需求,可以不用一次全都单口虚拟成8个,一张网卡虚拟成64个可用口,因为虚拟的越多,虚拟网口效率自然更差.


2.正式施工:

还是以我的硬件条件为例 (主板H370N:2个物理网口+I350T4网卡:4个物理网口)

A. 规划,选择性虚拟直通(重要) :

eth0:主板上的i211网口 : 不直通,用作管理口

eth1:主板上的i219-v网口 : 直通给win10虚拟机

I350T4网卡 : 1~3口直通 , 4口不直通 , 分组后再直通虚拟出来的VF卡 (前3口提供直通,4口留作更多虚拟机的备用,虚拟7个网口)

提前规划,很重要的原因是: 如果不规划好,提前在网络里设置顺序及后续的MAC分配,重启以后,或者启动项修改成GUI方式等等原因,会造成之后的配置混乱,又要倒回来重新搞,必须一步到位,以免后患!SR-IOV网卡虚拟分组直通及避坑指南

B. 网络设置 :

  • 关闭阵列, 前往 设置 - 网络设置

eth0用作管理口,保持之前设置不动

SR-IOV网卡虚拟分组直通及避坑指南

  • 往下翻,找到 接口规则

按照我前面的规划,按照顺序分别分配

下图中,我的分配顺序,因为我已经直通过了,所以中间的网卡不显示,这里的eth8就是我的规划中,I350网卡的最后一个口不直通,所以能显示

SR-IOV网卡虚拟分组直通及避坑指南

配置完,保存

C. 测试获取硬件号 :

  • 先测试一下,以及获取对应硬件号留存备用:

echo 1 > /sys/bus/pci/devices/0000:01:00.3/sriov_numvfs

ip link set eth8 vf 0 mac 00:55:15:21:e1:f0

ip link show dev eth8

SR-IOV网卡虚拟分组直通及避坑指南

注 :

0000:01:00.3 - 对应我的第四个网口的子编号 ( 01:00.3 )

eth8 - 就是上文所述的要虚拟的口

echo 1 - 要分组几个就填几

vf 0 - 编号从0开始计

mac XX:XX:XX:XX:XX:XX - 网卡地址自定义

  • 工具 - 系统设备 : 记录下虚拟出来的硬件号 ( 8086:1520 )

SR-IOV网卡虚拟分组直通及避坑指南


D . 修改启动项 :

  • 打开Syslinux文件

: OS和GUI模式下都改,为的是万一系统被自己折腾出毛病,还能进GUI抢救的情况下,网卡配置不会乱,省的下次再改,如果进下面其他安全模式之类的,没有配置过,重启以后,顺序还是会乱的,这点注意

  • OS 和 GUI 模式 , 修改添加 :

append pcie_acs_override=downstream,multifunction vfio_iommu_type1.allow_unsafe_interrupts=1 intel_iommu=on iommu=pt pci_pt_e820_access=on pci=assign-busses xen-pciback.hide=(01:00.0)(01:00.1)(01:00.2) vfio-pci.ids=8086:1520 initrd=/bzroot

SR-IOV网卡虚拟分组直通及避坑指南

以上命令的解释:

(01:00.0)(01:00.1)(01:00.2) - 就是我的规划中所注,直通前I350网卡的前3个口,第四个口不能直通,需要RS-IOV.

vfio-pci.ids=8086:1520 - 是I350网卡开启SR-IOV以后出现的VF卡所对应的分组硬件号

其他命令是关于IMMO分组,开启虚拟机PCIe-ACS覆盖等的相关命令,照抄就行

E . 固定网卡地址

  • go文件添加 :

echo 7 > /sys/bus/pci/devices/0000:01:00.3/sriov_numvfs

ip link set eth8 vf 0 mac 00:55:15:21:e1:f0

ip link set eth8 vf 1 mac 00:55:15:21:e1:f1

ip link set eth8 vf 2 mac 00:55:15:21:e1:f2

ip link set eth8 vf 3 mac 00:55:15:21:e1:f3

ip link set eth8 vf 4 mac 00:55:15:21:e1:f4

ip link set eth8 vf 5 mac 00:55:15:21:e1:f5

ip link set eth8 vf 6 mac 00:55:15:21:e1:f6

SR-IOV网卡虚拟分组直通及避坑指南


F.重启,完工




避坑及拓展


  • 实测我的卡不能虚拟出来给群晖用,但是windows有效,其他卡也有别人的案例说分配爱快驱动问题,无法拨号,我没试过不知

  • 虚拟网卡主要作用是有限PCI插槽下,为了拓展给更多的虚拟机使用,量力而行,不要盲目为了多网口而去直通

  • 多口划分出来可以玩交换机vlan,参照 https://post.smzdm.com/p/a0dopz6z/

  • 如果你是2.5G网口,需要添加额外代码,否则容易出现断连 , 别人帖子里看到的解决方法 ,

    go 文件添加 :

/usr/sbin/ethtool -s eth8 speed 2500 duplex full
/sbin/ifconfig eth8 down
/sbin/ifconfig eth8 up



unraid国内的氛围太差,很多东西需要扒拉外网,挺累人的

打算把几年踩过的坑,趁这股劲一起扒拉出来写写完,写着写着又有点没动力了,主要是之前整套HTPC自动化观影布完,一下就养老了,也没啥新鲜的玩意儿完.现在就期待intel什么时候能推出平民级的GPU虚拟化方案,这个只能在11-12代期待能实现,所以目前还是继续用我现在的硬件配置来作这个多用体,既能搞定HTPC硬解,又是一台办公家用的windows/mac/linux, 有兴趣的可以参考我这篇哦SR-IOV网卡虚拟分组直通及避坑指南

Unraid 篇一:Docker核显硬解 + windows虚拟机外接显示器物理输出iGPU YES!_显示器_什么值得买 (smzdm.com)

作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

展开 收起

乐扩PCIE2.5G网卡8125B台式机网络适配器千兆有线网口

乐扩PCIE2.5G网卡8125B台式机网络适配器千兆有线网口

39元起

纽曼 650M免驱动 USB无线网卡 5G双频笔记本台式机电脑无线接收器 随身wifi发射器电脑通用免驱

纽曼 650M免驱动 USB无线网卡 5G双频笔记本台式机电脑无线接收器 随身wifi发射器电脑通用免驱

33.15元起

DIEWU PCI-E千兆网卡Rtl8111E千兆网卡 台式机pcie家用网卡1000M TXA059-8111F

DIEWU PCI-E千兆网卡Rtl8111E千兆网卡 台式机pcie家用网卡1000M TXA059-8111F

28元起

SSU SU-AX210A 5374M 千兆网卡 Wi-Fi 6

SSU SU-AX210A 5374M 千兆网卡 Wi-Fi 6

103元起

Synology 群晖 NAS专用E10G18-T2万兆网卡

Synology 群晖 NAS专用E10G18-T2万兆网卡

1800元起

COMFAST AX210PLUS无线网卡WiFi6升级版双频千兆PCI-E内置无线网卡5374M+蓝牙5.2二合一无线网络wifi接收器

COMFAST AX210PLUS无线网卡WiFi6升级版双频千兆PCI-E内置无线网卡5374M+蓝牙5.2二合一无线网络wifi接收器

228元起

华硕adol全网通用4G免插卡随身wifi无线网络移动wifi车载usb全国纯流量上网卡托笔记本便携宽带热点神器1188

华硕adol全网通用4G免插卡随身wifi无线网络移动wifi车载usb全国纯流量上网卡托笔记本便携宽带热点神器1188

139元起

FAST /迅捷 台式机电脑千兆双频5G免驱USB无线网卡 笔记本随身wifi无线网络信号接收发射器 双天线双频1300M免驱版-FAC1300UH

FAST /迅捷 台式机电脑千兆双频5G免驱USB无线网卡 笔记本随身wifi无线网络信号接收发射器 双天线双频1300M免驱版-FAC1300UH

89元起

绿联 PCI-E千兆网卡台式机电脑pcie内置1000M有线上网主机箱独立扩展卡usb3.0双接口rj45网络游戏拓展转接面板 【千兆】PCI-E转网口-网速提升畅玩更尽兴

绿联 PCI-E千兆网卡台式机电脑pcie内置1000M有线上网主机箱独立扩展卡usb3.0双接口rj45网络游戏拓展转接面板 【千兆】PCI-E转网口-网速提升畅玩更尽兴

69元起

乐扩 PCI-E2.5G有线网卡2500M电口千兆以太网网络适配器服务器游戏电竞网卡英特尔INTEL I225-V/LM芯片

乐扩 PCI-E2.5G有线网卡2500M电口千兆以太网网络适配器服务器游戏电竞网卡英特尔INTEL I225-V/LM芯片

69元起

TP-LINK AX3000全屋WiFi6薄款面板AP套装路由器无线家用企业mesh组网双频千兆路由5口AC路由器*1+3AP(白色)

TP-LINK AX3000全屋WiFi6薄款面板AP套装路由器无线家用企业mesh组网双频千兆路由5口AC路由器*1+3AP(白色)

暂无报价

先机 随身wifi

先机 随身wifi

38元起

群晖(Synology) DS1522+ RS422+专用 RJ45万兆电口网卡

群晖(Synology) DS1522+ RS422+专用 RJ45万兆电口网卡

1100元起

TP-LINK TL-NG421 2.5G千兆台式机电脑服务器内置高速以太网络PCI-E有线网卡

TP-LINK TL-NG421 2.5G千兆台式机电脑服务器内置高速以太网络PCI-E有线网卡

85元起

椰贝 随身wifi免插卡无线移动wi-fi 4g上网卡三网通全国高速免费无限流量车载热点网络信号好强网络直播路由器

椰贝 随身wifi免插卡无线移动wi-fi 4g上网卡三网通全国高速免费无限流量车载热点网络信号好强网络直播路由器

18.6元起

绿联网卡usb转网口有线百兆千兆typec外接网卡台式电脑转换器rj45外置网线接口适用苹果笔记本switch小米盒子 20255-USB3.0千兆网卡-标准款白色

绿联网卡usb转网口有线百兆千兆typec外接网卡台式电脑转换器rj45外置网线接口适用苹果笔记本switch小米盒子 20255-USB3.0千兆网卡-标准款白色

72.91元起
11评论

发表评论请 登录
  • 最新
  • 最热
评论举报

请选择举报理由

相关好价推荐
查看更多好价

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
70
扫一下,分享更方便,购买更轻松