Tag Archives: network

Troubleshooting network teaming issue on ESX/ESXi

Today, VMWare blog posted a fantastic and detailed article on troubleshooting network teaming issue on ESX/ESX (which as a VMWare newbie frankly had been a danting task, but I am getting the hang of it)

A quick summary of what I picked up from this:

  • If you are using VST or Virtual Switch Tagging, your physical network must be configured with VLAN trunking using 802.1q protocol on the physical switch
  • If you are using ‘Route based on originating virtual port ID’ load balancing type, the physical switch should not be configured for link aggregation (802.3ad or etherchannel or Trunks). Link aggregation or bonding should be used only with IP hash load balancing type.
  • When troubleshooting VM network issue, remember to identify which port group and VLAN ID is belongs to
  • To determine this which NIC a VM, connect to the host using SSH or via the Local Tech Support Mode console and use a tool called esxtop. From within esxtop, we simply hit ‘n’ for the networking view and it will show you which NIC the VM is using.


Leave a comment

Posted by on February 22, 2013 in vmware


Tags: ,

NSVPBind: CLI for setting network binding order

One of the most requested features for Windows admin scripters is a utility to allow them to set network binding order in a script. This has always been in the realm of device driver developers and out of reach of scripters.

Recently, with the deployment of Windows 2008 clusters another issue with network binding order surfaced. The problem is that Windows 2008 cluster’s virtual network adapter would end up being the top of the binding order. It a hidden device and not manageable via your standard network neighbourhood. The problem with this is that its ip address is an APIPA address, so when you ping the computer name within the server itself, it will return the APIPA address instead of the public address. Of course, if you ping the computer name from outside the server, it returns the public address. Read the rest of this entry »

Leave a comment

Posted by on April 16, 2010 in Windows



Getting the network adapters’ order in Windows

Now, one of the biggest problem for us when deployment new servers is that we want to get everything as automated as possible. One of the most complex to automate is networking configuration. That is, you need to figure out which nic to team and which to set as heartbeat or backup nic, etc. In this, I use nic and network adapter interchangeably.

The most persistent problem is getting a ordered list of network adapters from Windows. Windows itself does not present nics in any order. So your slot 0 (embedded) port 1 could be named as “local area network connection 3” or called “Broadcom 1GB PCI Ethernet Adapter 4” and the slot 10 port 2 nic could be named as the first nic. Read the rest of this entry »


Posted by on October 17, 2009 in Windows



Network: The relationship between TCPWindowSize and DefaultReceiveWindow

We threw this question to our MS premier techie as we were troubleshooting some related issues and I thought his reply would be helpful for some of you out there.

Q1: What’s the relationship between the TCPWindowSize setting and the DefaultReceiveWindow handled by AFD.sys?

TCPWindowSize defines the amount of receive data (in bytes) that can be buffered during a connection at TCP/IP layer. The sending host can send only that amount of data before it must wait for an acknowledgment and window update from the receiving host. Windows will self-tune the TCP window size if it’s not explicitly defined in registry.

DefaultReceiveWindow defines the default receive buffer in Socket layer. By default, it’s 8 KB. Programs based on Socket gets data from that buffer. When a program receives more data than this buffer is configured to hold, all data received up to this count must be transferred to the program before receiving continues. When this happens, an acknowledgement will be sent to the source machine.

For example, if the application wants to read 32KB from the socket, it actually reads it from the buffer for 4 times (32/8 = 4). Read the rest of this entry »


Posted by on May 20, 2008 in Windows



Windows server hang at “Applying computer settings…”

Just last week, we had a HP proliant server which I was helping to configure. Everything was setup up as usually and upon rebooting the server, it restarted but hung with the dreaded “Applying computer settings…” dialog box. Nothing in the Internet was helpful to resolve this matter.

Tried restarting the server into save mode with networking and still we had this problem. Next we tried restart just in save mode and it got started. This makes me suspect that there is something wrong with the network card (physically) or the drivers.

It could not have been the drivers because we just rebuilt the server because it had this problem. Anyway, went into save mode and disabled all NICs and reboot the server. It came up perfectly with all the NICs disabled. Slowly, we enabled one NIC at a time and reboot the server each time.

Turned out that when we enabled the embedded NIC from the server, this hanging occured, but not on the other NIC cards. Seems like we need to get the NICs replaced with HP.

Leave a comment

Posted by on July 10, 2007 in Windows



Windows networking script: Set show icon for all NICs

In the Internet, there is a number of examples of how to set an individual NIC to show icon in notification area, but you cannot find one if you want to set ALL the NICs by default. This is a required for my work and, hence, modified some of the scripts on the net and using WMI registry class to do the task.

You can download the VBS (please rename doc to vbs) script here

ShowIcon VBS Script

The WriteToLog() is my own function (show you some other days), you can replace it with WScript.echo.

Also note, I stopped indent after some levels so that it does not wrap around too much

Sub SetShowIconValue

Const HKLM = &H80000002

Dim ServerName
Dim objReg

Dim CtrlNetworkKeyPath
Dim arrAdapterGUIDs, AdapterGUID
Dim AdapterGUIDConnKeyPath
Dim AdapterNameValue
Dim AdapterNameStringValue
Dim ShowIconDWORDValue

ServerName = “.”

‘Don’t want any errors here to kill the program
On error resume next

Set objReg=GetObject(“winmgmts:{impersonationLevel=impersonate}!\\” & _
ServerName & “\root\default:StdRegProv”)

‘This path is fixed in Windows

CtrlNetworkKeyPath = “SYSTEM\CurrentControlSet\Control\Network\{4D36E972-E325-11CE-BFC1-08002BE10318}”

‘grab all the subkeys, i.e. the Adapter GUIDs

objReg.EnumKey HKLM, CtrlNetworkKeyPath, arrAdapterGUIDs

for each AdapterGUID in arrAdapterGUIDs

if InStr(AdapterGUID, “{“) > 0 then ‘look for keys that looks like a GUID

AdapterGUIDConnKeyPath = CtrlNetworkKeyPath & “\” & AdapterGUID & “\Connection”

AdapterNameStringValue = “”



if AdapterNameStringValue <> “” then

WriteToLog “Looking at registry path: ” & AdapterGUIDConnKeyPath
WriteToLog “Network Name: ” & AdapterNameStringValue

‘Just set all NICs regardless of their status, no harm done

objReg.SetDWORDValue HKLM,AdapterGUIDConnKeyPath,”ShowIcon”,1

if Err.Number = 0 then
WriteToLog “Show Icon value is set to: 1”

WriteToLog “Error ” & CStr(Err.Number) & ” while trying to check ShowIcon value, ” & Err.Description
end if


WriteToLog “Cannot get name for network adapter GUID:” & AdapterGUIDConnKeyPath

end if

end if


On error goto 0

End Sub


Posted by on June 29, 2007 in Scripts, VBScripts


Tags: ,