I’ve seen this a couple of times already and just had a very long phone call with a customer who created the following set up:

So basically the first two nics are active with load balancing set to IP-Hash and configured as an Etherchannel on the stacked Cisco 3750′s. The second pair are “standby”. Also with load balancing set to IP-Hash and configured as a second Etherchannel on the stacked Cisco 3750′s. A diagram probably makes more sense:

Explanation: All NICs belong to the same vSwitch. Etherchannel 01 consist of “vmnic0″ and “vmnic3″ and both are active. Etherchannel 02 consists of “vmnic1″ and “vmnic4″ and both are standby.

My customer created this to ensure a 2Gb link is always available. In other words if “vmnic3″ fails “vmnic1″ and “vmnic4″ should take over as they are a “pair”. But is this really what happens when “vmnic3″ fails?

As you can clearly see, what they expected to happen did not happen. When “vmnic3″ failed VMware ESX “promoted” the first standby NIC to active, which in this case belongs to a different Etherchannel. What happened next was not a pretty sight, mac-address table went completely nuts with “MACFLAPS” all over the place. I’m not a networking guy but I can tell you this introducing a loop when you configured portfast is not a smart idea. DON’T DO THIS AT HOME KIDS!