The main Technet references:

https://technet.microsoft.com/en-us/library/cc770558.aspx

http://technet.microsoft.com/en-us/library/cc725691%28WS.10%29.aspx

A Network Load Balancing (NLB) cluster host can use any one of four Network Load Balancing (NLB) models shown below.

Windows Server 2003 or greater Network Load Balancing (NLB) does not support a mixed unicast mode and multicast mode together in a Network Load Balancing (NLB) cluster. All hosts in the Network Load Balancing (NLB) cluster must be either multicast or unicast.

• Single network adapter in unicast NLB cluster mode

• Single network adapter in multicast NLB cluster mode

• Multiple network adapters in unicast NLB cluster mode

• Multiple network adapters in multicast NLB cluster mode

Single network adapter in unicast NLB cluster mode

In this model, only one Network Interface Card (NIC) is required and the cluster is operating in unicast mode of communication. This is cheap, since only one Network Interface Card (NIC) is required. The limitations of this model are 1) Reduced network performance 2) Ordinary communications between hosts are disabled and 3) NetBIOS support is disabled.

Single network adapter in multicast NLB cluster mode

Here also only one Network Interface Card (NIC) is required for the host, but the host is working on multicast instaed on unicast. The ordinary communications are possible between hosts in this mode. Still some limitations are there in this mode similiar to Single network ndapter unicast mode. 1) Reduced network performance 2) Multicast MAC addresses are not supported by some routers 3) NO NetBIOS support.

Multiple network adapters in unicast NLB cluster mode

Multiple network adapters in unicast mode is the preferred configuration for NLB clusters. You require two Network Interface Card (NIC) cards configured on the servers to operate in this mode, but it has many advantages. 1) Increased network performance 2) NetBIOS support is available.

Multiple network adapters in multicast NLB cluster mode

If you have some hosts in the cluster with a single Network Interface Card (NIC), and if you have enabled multicast mode on that servers, you need to configure Multiple network adapters in multicast mode on a server with multiple Network Interface Cards (NIC). You cannot run some hosts in unicast mode and some other hosts in multicast mode in a Network Load Balancing (NLB) cluster

NLB with Unicast or Multicast ? http://blogs.catapultsystems.com/jstocker/archive/2013/02/06/network-load-balancing-multicast-vs-unicast/

my advice:

In general, you should enable and use multicast NLB whenever possible. Use unicast mode only if your network equipment—switches and routers—don’t support multicast or if they experience significant performance issues when multicast is enabled.

I Have Two Network Adapters on Each Server in My NLB Cluster. How Do I Ensure That All Outbound Traffic Goes Through Non-Load-Balanced Network Adapters?

Sometimes it is desirable for performance or other reasons to direct all outgoing traffic through a different network adapter that the one that is being load balanced with NLB. This implies that there is more than one network adapter on each host in a cluster: NLB is bound to one network adapter called cluster network interface card, and the other network adapter does not have NLB bound to it. To make sure that the outbound traffic leaves each host through the non-cluster network adapter, do the following:

Set the metric on the cluster network adapter to a higher value than the non-cluster network adapter. For example, if you have two network adapters on each host, set the non-cluster network adapter metric to 1 and cluster network adapter metric to 2. The network adapter with a higher metric means it is more expensive to use than the other one with a lower metric. That will ensure that the outbound traffic will be routed out of the non-cluster network adapter.

If you want to use default gateways on both cluster and non-cluster network adapters, make sure the metric of the default gateway on the cluster network adapter has a higher value than the one on the non-cluster network adapter. If you do not want to route any outgoing traffic out of the cluster network adapter, you should not specify the default gateway for it at all.

Configuring NLB with Powershell: http://windowsmasher.wordpress.com/2012/05/14/configuring-nlb-with-powershell/

my advice:

You can create NLB cluster with two or more servers with only one NIC each or you can create NLB cluster on multiple servers with two NIC each (NIC_Internal and NIC_Nlb), but in that case: One other very important thing to note in 2008/2008 R2 if you are using 2 nics do not put a gateway on the Nic_NLB interface, you need to enabled forwarding on the NLB nic using the command below:

netsh interface ipv4 set interface NIC_Nlb forwarding=enabled

“When configuring ‘Unicast’ NLB mode, Unicast takes over the NIC, thats why we used to create two NICs and set up IP forwarding so that requests that arrive on one NIC (NIC_Nlb) are sent to the other NIC (NIC_Internal) connected to the other servers in the domain.”

or in powerShell: Set-NetIPInterface -InterfaceAlias Nic_Nlb -AddressFamily IPv4 -Forwarding Enabled

See more details here: http://www.jeremytaylor.net/2013/10/10/configure-ip-forwarding-nlb-powershell/

Strong and Weak Host Models:

https://technet.microsoft.com/en-us/magazine/2007.09.cableguy.aspx

Windows 2008 introduced a strong host model that does not allow different NICs to communicate with each other. For example, if a request comes in on the second NIC and if there is no default gateway set up, then the NIC will not use the first NIC to reply to the requests, even though a default gateway setup on the first NIC.

To change that behavior and return to the 2003 model, run these commands from the command prompt: If the conversion fails we will need to enable weak host receive and send options on our secondary interface. Basically we will have to run the following on both NLB Node Servers

netsh interface ipv4 set interface NIC_Nlb weakhostreceive=enable
netsh interface ipv4 set interface NIC_Nlb weakhostsend=enable

other netsh commands:
netsh interface ipv4 show interfaces
netsh interface ipv4 show config
netsh interface ipv4 show global
netsh interface ipv4 show tcpconnections

netsh interface ipv4 show udpconnections

netsh interface ipv4 show route

 

NLB for IIS web sites: http://virtuallyhyper.com/2013/04/load-balancing-iis-sites-with-nlb/

NLB on Vmware infrastructure:

Reference document: http://www.vmware.com/files/pdf/implmenting_ms_network_load_balancing.pdf

Vmware and NLB in Unicast mode: http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1006778

Vmware and NLB in Multicast mode: http://kb.vmware.com/selfservice/search.do?cmd=displayKC&docType=kc&docTypeID=DT_KB_1_1&externalId=1006558

Vmware KB articles about NLB:

https://communities.vmware.com/message/1392417

https://support.microsoft.com/en-us/kb/898867

Microsoft NLB not working properly in Unicast Mode: http://kb.vmware.com/selfservice/microsites/search.do?cmd=displayKC&docType=kc&externalId=1556&sliceId=1&docTypeID=DT_KB_1_1&dialogID=42912404&stateId=0%200%2041454115