Application binds with the wrong NIC card

Ruwantha Kodikara
Ruwantha Kodikara used Ask the Experts™
on
Hi, I have Windows Fail Over  Cluster configured as below in VMware vSAN environment:

Production Network: 192.168.50.0/24

Cluster Heartbeat Newark: 10.1.1.0/24 (Communication only between two cluster nodes, no gateway, DNS specified, only IP and mask)

vSAN iSCSI shared storage network: 172.31.10.0/24  (Communication only between vSAN and Windows iSCSI initiator, no gateway, DNS specified, only IP and mask)

Windows cluster is configured, and the cluster test is passing. I can restart the servers and cluster switching is working fine.

The problem is, that we have an application, which is supposed to bind to the Production network (usually it does it automatically), where it can communicate with other servers in the network, however, it always binds to Heartbeat network. How to get the nic priority level sorted. I followed the steps in the below link, but no luck.

https://www.mssqltips.com/sqlservertip/4928/configure-network-binding-order-for-a-windows-server-2016-failover-cluster/

We need urgent help.
Comment
Watch Question

Do more with

Expert Office
EXPERT OFFICE® is a registered trademark of EXPERTS EXCHANGE®
Top Expert 2016

Commented:
What is the metric for Production and Heartbeat Network (network adapter ipv4/advanced settings
Ruwantha KodikaraIT Manager

Author

Commented:
Production - 1
Heartbeat - 2
iSCSI - 3

Commented:
You must specify the bind order in advanced network settings. By default, Microsoft will give priority to "minor" network IP subnet .
Ruwantha KodikaraIT Manager

Author

Commented:
It is a problem between Java and Windows. Our developers found out that this behavior is related to a setting of the Java Virtual Machine. We are currently starting all our processes with the option java.net.preferIPv4Stack=true to use only iPv4 adaptors. If this option is enabled Java ignores the first adaptor (domain network adapter) for the default binding.
If disabled, the network adapter is picked  correctly as the default. IPv 6 is already disabled in all our adaptors. Not sure why this is happening.

Commented:
For JAVA >7, the interface is get by index. So :1) Add some code to bind on right interface ; 2) Change the index in OS ( not recommended in a already setup Cluster , after me!)

Check here : https://www.baeldung.com/java-network-interfaces

Do more with

Expert Office
Submit tech questions to Ask the Experts™ at any time to receive solutions, advice, and new ideas from leading industry professionals.

Start 7-Day Free Trial