Windows Server 2012 带来了由不同制造商生产的适配器组成的 NIC 组合。
我的意思是使用 1 个来自 Intel 的 NIC 和另一个来自 Realtek 的 NIC 进行组合。在驱动程序级别可以进行组合或绑定,但 Windows Server 2012 中引入的功能是在操作系统级别。我很欣赏 Linux 多年来一直在这样做 :-)
它没有进入 Windows 8/8.1。我看过一些文章,有人报告说它在 Windows 10 Preview 上运行良好,但现在不再运行了。
Windows 10 Pro 是否支持 NIC Teaming?或者其他版本。
答案1
-- 编辑于 2016 年 5 月 4 日 --
该功能已在最新版本的 Windows 10 以及内部版本 14295 中禁用。powershell 命令将出错或提示当前 SKU 不支持 LBFO,具体取决于您运行的 Windows 版本。希望 MS 能尽快重新启用此功能。
-- 以下是原帖 --
是的,这是可能的!对于通过谷歌搜索找到这篇文章的其他人:
我还没有找到通过 GUI 访问它的方法,但运行以下 PowerShell 命令将为您创建一个团队。只需将以太网名称替换为您的 NIC 名称即可。
New-NetLbfoTeam TheATeam "Ethernet","Ethernet 6"
然后您应该会得到一个 2GB 的 Switch Independent 组。然后您可以使用“网络连接”屏幕按您的需要进行设置。
答案2
看来这个功能又回来了,至少对于英特尔网卡来说是这样:
英特尔提到了对 Windows 10 的团队支持驱动程序版本 22.3 或更高版本。目前 23.5 可用。
此版本附带 ANS(高级网络服务,默认安装),它应该允许组队通过powershell 命令。
我还没有尝试过 - 我拥有的唯一带有两个英特尔网卡的主板在 BIOS 升级方面有点棘手。
如果有人可以让它与发行说明中提到的最新 Windows Creator 更新兼容,请告诉我:)
更新:尝试在 Windows 10 上进行链路聚合 - 目前可以正常工作(2019 年 1 月)
PS C:\Windows\system32> Import-Module -Name "C:\Program Files\Intel\Wired Networking\IntelNetCmdlets\IntelNetCmdlets"
PS C:\Windows\system32> Get-IntelNetAdapter
Location Name ConnectionName LinkStatus
-------- ---- -------------- ----------
0:31:6:0 Intel(R) Ethernet Connection (2) I219-LM Intel-219 Nicht verf...
7:0:0:0 Intel(R) I210 Gigabit Network Connection Intel-210 1.00 Gbit/...
PS C:\Windows\system32> New-IntelNetTeam
Cmdlet New-IntelNetTeam an der Befehlspipelineposition 1
Geben Sie Werte fuer die folgenden Parameter an:
TeamMemberNames[0]: Intel(R) Ethernet Connection (2) I219-LM
TeamMemberNames[1]: Intel(R) I210 Gigabit Network Connection
TeamMemberNames[2]:
TeamMode: StaticLinkAggregation
TeamName: link_name_team
PS C:\Windows\system32> Get-IntelNetTeam
TeamName : Gruppe: link_name_team
TeamMembers : {Intel(R) I210 Gigabit Network Connection, Intel(R)
Ethernet Connection (2) I219-LM}
TeamMode : StaticLinkAggregation
PrimaryAdapter : NotSet
SecondaryAdapter : NotSet
从两个客户端运行的 iperf3 表明它似乎有效:
答案3
不,在 Windows 10 客户端 SKU 中无法获得 NIC 组合。但可用于服务器 SKU。
从 14393 版本(周年更新)开始,此 NIC 组合功能已被永久阻止或删除。似乎该功能被错误地添加到客户端 Windows 10 SKU。当您将新网Lbfo团队PowerShell 命令例如New-NetLbfoTeam -Name "NewTeam" -TeamMembers "Ethernet", "Ethernet2"
,错误显示如下
New-NetLbfoTeam:LBFO 功能当前未启用,或者此 SKU 不支持 LBFO。第 1 行,字符:1 + New-NetLbfoTeam -Name“NewTeam”-TeamMembers“Ethernet”、“Ethernet2”+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo:未指定:(MSFT_NetLbfoTeam:root/Standa rdCimv2/MSFT_NetLbfoTeam)[New-NetLbfoTeam],CimException + FullyQualifiedErrorId:MI RESULT 1,New-NetLbfoTeam
主要原因是Social.TechNet.Microsoft:Nic Teaming 在内部版本 10586 中出现故障如下(引述):
“Win10 上没有原生的 LBFO 功能。微软不支持客户端 SKU 网络组合。
Windows 10 build 10240 中的一个缺陷是“New-NetLbfoTeam”在客户端 SKU 上没有被完全阻止。这是一个无意的错误,而不是 SKU 矩阵的变化。我们所有的文档都继续说 NIC Teaming 是服务器 SKU 独有的功能。
虽然 powershell cmdlet 没有在客户端上彻底失败,但 LBFO 处于损坏且不受支持的状态,因为客户端 SKU 不附带 mslbfoprovider.sys 内核驱动程序。该内核驱动程序包含所有负载平衡和故障转移逻辑,以及 LACP 状态机。如果没有该驱动程序,您可能会看到团队的外观,但它实际上不会执行实际的团队逻辑。我们从未在缺少此内核驱动程序的配置中测试过 NIC Teaming。
在几个月后发布的10586更新(“秋季更新”)中,“New-NetLbfoTeam”再次被正确阻止。
在 14393 更新(“周年更新”)中,我们继续阻止它,但改进了错误消息。”
答案4
微软可能已经删除了该功能,但我找到了一种将其重新放回去的方法。如果您从 Windows Server ISO 映像中提取 LBFO 驱动程序和一些相关文件,手动将它们安装到 Windows 10 系统上,应用一些注册表修复,重新启动,然后将 LBFO 网络服务添加到适配器,您可以再次使用 Powershell 命令。
它确实有效:
该过程完全是黑客攻击,我不会认为它接近生产安全,但如果您想要本机 NIC 组合,那么这将为您提供本机 NIC 组合。
您需要从 Windows Server ISO 获取的文件包括:
- \Windows\System32\驱动程序\mslbfoprovider.sys
- \Windows\System32\drivers\en-US\mslbfoprovider.sys.mui
- \Windows\System32\DriverStore\en-US\MsLbfoProvider.inf_loc -\Windows\System32\DriverStore\FileRepository\mslbfoprovider.inf_amd64_9afb7ecb68781bac\mslbfoprovider.inf
- \Windows\System32\CatRoot{F750E6C3-38EE-11D1-85E5-00C04FC295EE}\Microsoft-Windows-Server-Features-Package017~31bf3856ad364e35~amd64~~10.0.17763.1.cat
它们可以在 ISO 中的存档中找到\sources\install.wim
,位于其中一个编号目录下。然后,您需要获取驱动程序服务、网络服务和事件日志提供程序的注册表项,并将它们导入 Windows 10。然后您需要重新启动。之后,您可以使用网络连接 UI 在任何网络适配器上加载 Microsoft 负载平衡/故障转移提供程序服务,这将启动驱动程序服务并在系统上启用 LBFO。
我写下了如何做到这一点的完整发现,以及完整的说明,一篇博客文章. 还有一个github 仓库为了方便起见,使用一些批处理脚本和注册表文件。