Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

Possible Duplicate:
Microsoft NLB + MySQL + IIS7

Here is my setup:

HyperV VM 1: Server 2008 R2 + Microsoft Network Load Balancer (NLB) + MySQL + IIS 3 NICs- LAN1 - Management 192.168.1.1 LAN2 - Web 192.168.1.2 LAN3 - SQL 192.168.1.3

HyperV VM 2: Server 2008 R2 + Microsoft Network Load Balancer (NLB) + MySQL + IIS 3 NICs- LAN1 - Management 192.168.1.4 LAN2 - Web 192.168.1.5 LAN3 - SQL 192.168.1.6 LAN2 and LAN3 are both setup with NLB so that LAN2 on each is tied to 192.168.1.7 for port 80. LAN3 and LAN3 are both setup with NLB to that LAN3 on each is tied to 192.168.1.8 for port 3306

I have setup the 192.168.1.7 to balance the load equally and 192.168.1.8 to default to VM1 and failover to VM2 if VM1 fails.

When accessing with 192.168.1.7 or 192.168.1.8 from a third party machine behavior works as it should according to the NLB rules.

However here is my problem. When I tired to access 192.168.1.7 or 192.168.1.8 from one of the VMs they only talk to their respective interface tied to NLB.

Ex. Browser on VM2 that talks to mysql (192.168.1.8) will only talk to mysql on VM2 when calling 192.168.1.8 even though 192.168.1.8 is set to go to VM1 unless VM1 is unavailable.

I imagine this has something to do with the fact that on each VM, LAN3 has it's own IP and the shared IP, and it goes to the nearest one, whereas a client outside the VM's asks which it should go to.

Any thoughts on how to make this work as it should?

share|improve this question

migrated from webmasters.stackexchange.com Nov 8 '11 at 17:38

This question came from our site for pro webmasters.

marked as duplicate by Chris S Feb 17 '12 at 16:25

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

add comment

1 Answer

I think this is expected behavior in a NLB setup. The local TCP/IP stack realizes that it's a local IP address and will not even go out on to the network to transmit the packet. For load balancing web servers the use of NLB is more of less deprecated. You might want to check out the Web Farm Framework in combination with the Application Request Routing (ARR) module for IIS. This offers far better scalable and flexible load balancing solutions for web servers.

share|improve this answer
add comment

Not the answer you're looking for? Browse other questions tagged or ask your own question.