13

Windows Server 2012 brought with it NIC teaming of adapters by different manufacturers.

I mean teaming using 1 NIC from say Intel and the other from Realtek. It has been possible to do teaming or bonding at the driver level, but what was introduced in Windows Server 2012 is at the operating system level. I appreciate Linux has been doing this for years :-)

It didn't make it onto Windows 8/8.1. I've seen some article where people reported it was working on Windows 10 Preview but no longer working.

Is NIC Teaming supported on Windows 10 Pro? Or another edition.

albal
  • 1,251
  • 1
  • 11
  • 23

4 Answers4

9

-- EDIT 5/4/16 --

This has been disabled in the most recent version of Windows 10 as well as the insider build 14295. The powershell command will error out or say that LBFO is not supported on the current SKU depending on the versin of Windows you are running. Hopefully MS will re-enable this feature sometime soon.

-- Original Post Below --

Yes, This is possible! To anyone else who found this post by Googling:

I haven't found a way to access this though a GUI, but running the following PowerShell command will create a team for you. Just replace the Ethernet names with your NIC names.

New-NetLbfoTeam TheATeam "Ethernet","Ethernet 6"

You should then get a 2GBs Switch Independent team. From there you can use the Network Connections screen to set it up how you want.

Screenshot of networks and Team

FunkeDope
  • 206
4

It seems this feature is coming back, at least for Intel NICs:

Intel mentions teaming support for Windows 10 in driver versions 22.3 or newer. Currently 23.5 is available.

This version comes with ANS (advanced network services, installed by default) which should allow teaming via powershell commands.

I havent tried it yet - the only mainboard I have with two intel nic's is a bit bios upgrade stubborn.

If anyone could get this to work with the latest windows creator update mentioned in the release notes, let me know :)

Update: tried link aggregation on Windows 10 - so currently it works (Jan 2019)

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

An iperf3 run from two clients shows it seems to work:

enter image description here

wemu
  • 166
1

No it is not possible to get NIC teamin in Windows 10 client SKUs. But available for Server SKUs.

From 14393 version (Anniversary update) this NIC teaming feature had been blocked or removed forever. It is seemed that the feature mistakenly added to client Windows 10 SKUs. When you put New-NetLbfoTeam command in PowerShell e.g. New-NetLbfoTeam -Name "NewTeam" -TeamMembers "Ethernet", "Ethernet2", the error shows as follows

New-NetLbfoTeam : The LBFO feature is not currently enabled, or LBFO is not supported on this SKU. At line:1 char:1 + New-NetLbfoTeam -Name "NewTeam" -TeamMembers "Ethernet", "Ethernet2" + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : NotSpecified: (MSFT_NetLbfoTeam:root/Standa rdCimv2/MSFT_NetLbfoTeam) [New-NetLbfoTeam], CimException + FullyQualifiedErrorId : MI RESULT 1,New-NetLbfoTeam

New-NetLbfoTeam

The main reason was given in Social.TechNet.Microsoft: Nic Teaming broken in build 10586 as follows (quoted):

"There are no native LBFO capabilities on Win10. Microsoft does not support client SKU network teaming.

It was a defect in Windows 10 build 10240 that “New-NetLbfoTeam” wasn’t completely blocked on client SKUs. This was an unintentional bug, not a change in the SKU matrix. All our documentation continued to say that NIC Teaming is exclusively a feature for Server SKUs.

While the powershell cmdlet didn’t outright fail on client, LBFO was in a broken and unsupported state, since the client SKU does not ship the mslbfoprovider.sys kernel driver. That kernel driver contains all the load balancing and failover logic, as well as the LACP state machine. Without that driver, you might get the appearance of a team, but it wouldn’t really do actual teaming logic. We never tested NIC Teaming in a configuration where this kernel driver was missing.

In the 10586 update (“Fall update”) that was released a few months later, “New-NetLbfoTeam” was correctly blocked again.

In the 14393 update (“Anniversary update”), we continued blocking it, but improved the error message."

Biswapriyo
  • 11,584
0

Microsoft may have removed the feature, but I figured out a way to put it back in. If you extract the LBFO driver and some associated files from a Windows Server ISO image, manually install them onto your Windows 10 system, apply some registry fixes, reboot, then add the LBFO network service to an adapter, you can use the Powershell commands again.

NIC teaming commands on Windows 10

It actually works:

NIC teaming working on Windows 10

The process is a total hack, and I wouldn't consider it anywhere near production safe, but if you want native NIC teaming then this will give you native NIC teaming.

The files you need from a Windows Server ISO are:

  • \Windows\System32\drivers\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

They can be found in the \sources\install.wim archive inside the ISO, under one of the numbered directories. You then need to take the registry entries for the driver service, network service, and event log provider and import them into Windows 10. You then need to reboot. After that you use the Network Connections UI to load the Microsoft Load Balancing/Failover Provider service on any network adapter, which will start the driver service and enable LBFO on the system.

I wrote up the full discovery of how to do this, along with complete instructions, in a blog post. There's also a github repo with some batch scripts and registry files for convenience.

Polynomial
  • 1,459
  • 3
  • 15
  • 27