Server 2012 R2 Virtual Switch Configuration

Not to state the obvious, however when a virtual switch encounters problems the entire network is affected. I've configured many and haven't had any issues while others have caused more problems leaving me baffled and frustrated. What I can't determine is with absolute clarity if it's a bug or me. I've followed the written articles from Microsoft some work some don't, there's plenty of discussion online how to configure it's when the same config doesn't work for the same setup on another network that I continue to be baffled about. I'm hoping to put a rest to any confusion with this discussion.

The scenario is 2012 r2 server (host) with two VM's, one VM the PDC and the other exchange.  My understanding is configure an internal virtual switch for the VM's to communicate together with the host and each other. I've not had allot of trouble with internal virtual switches  by themselves however I've had to delete the internal virtual switch to get the external virtual switch to work. Strange behavior, according to my knowledge both should be configured and not affect the other. I've seen where after deleting the internal virtual switch this allows the VM's to communicate past the host (only the external virtual switch configured). I cannot determine why this happens.

Another frustrating problem is when the static IP's on the switches change to dynamic. I believe the internal switch should only have a static IP and default gateway, everything else left blank. The external switch left to dynamic, however after the internal switch changes to dynamic (not sure why) the communication between the VM's and host is horrible and troubleshooting often prevails. It's not as easy as just resetting...another problem that seems random.

I've installed quite a few server 2012 r2 with VM's and beginning to lose confidence, seems hit and miss at times as well hear allot of concerns others are having with similar issues.

Thank you.
LVL 17
WORKS2011Austin Tech CompanyAsked:
Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Cliff GaliherCommented:
You've *WAY* overcomplicated things.  First, let's clear something up.  A virtual switch is still a switch.  Don't try to think of it any other way.  

Networking 101:  The difference between a hub and a switch.  A hub will send a received packet out every other port. Lots of traffic, high chance of collision.  A switch learns addresses, does basic ARP mapping, and sends traffic on those ports. Even the dumbest of dumb switches does this.

This means that every switch, no matter how dumb, runs a basic OS of some sort and does that ARP mapping in software. That's what makes a switch a switch instead of a hub.

A virtual switch in Hyper-V is exactly that. It is a switch with virtual ports that plug into virtual NICs in the VMs. And it runs basic software to send packets to the right VMs.

Do basic switches in the real world have IP addresses?  No.  If you take two servers, put two NICs in each server, and plug each NIC into a different switch, do the servers magically know which NIC to use?  No. You configure bind order, you configure the NICs with settings so they pair with the other NIC for communications, and the switch plays little to no role in that configuration.

Same with a virtual switch. Your virtual switch does not have an IP. Neither static nor dynamic. Which you brought up in your question.  So that's just plain wrong. IF you are going in and forcibly turning on IPv4 on the switch settings in the host, you are breaking things. That isn't default, and the defaults should be left.

And in most cases, you wouldn't plug a server into multiple switches. In rare cases you'd do this in the physical world for redundancy if a switch failed, but you still need to accommodate for that with some fairly complex NIC settings and failover detection. But in the virtual world, both switches are running on the same Hyper-V host, and if that crashes, both switches go. There is almost never a reason to have an internal and an external switch servicing the same VM. That's just more overhead with no benefit. You wouldn't even get good failover, because any problem in the Hyper-V networking stack (very very rare) would take down both switches, not just one.

So one switch. If the VMs need the outside world, make it external. And don't try to force an IP address on the switch. Bad things happen.

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
WORKS2011Austin Tech CompanyAuthor Commented:
You've *WAY* overcomplicated things.
this is a relief :-)

Your virtual switch does not have an IP. Neither static nor dynamic. Which you brought up in your question.  So that's just plain wrong.
I've read about it's "correct" to add both internal and external however I take your word over different articles on the internet. Note, from sources I feel are legit.

So one switch. If the VMs need the outside world, make it external. And don't try to force an IP address on the switch. Bad things happen.
perfect, thank you Cliff. If I have network issues in the future I'll create another post it will be something outside of the VM switch config.

Thank you Cliff.
WORKS2011Austin Tech CompanyAuthor Commented:
Thank you for the clarification.
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Windows Server 2012

From novice to tech pro — start learning today.