I hope this message finds you well.
I am trying to load balance a .NET application with multiple services hosted under the same website, which run on the same VM. I’ve tried achieving this with Azure’s Gateway V1 (NLB) but it cant handle loopback traffic (from one service to another when both are running on the same VM). The following passage was extracted from Azure’s documentation:
Cause 3: Access of the internal load balancer from the same VM and network interface
If your application hosted in the backend VM of an internal load balancer is trying to access another application hosted in the same backend VM over the same network interface, it’s an unsupported scenario and will fail.
Resolution
You can resolve this issue via one of the following methods:
Configure separate backend pool VMs per application.
Configure the application in dual NIC VMs so each application was using its own network interface and IP address.
The potential fixes don’t work/are not worth it in my case because two of the services barely use any computing power and therefore having a separate back-end pool for them would be a waste of money. Configuring another NIC and IP for each VM is too much configuration work in our case.
Our application is authenticated via NTLM and therefore needs a persistent TCP connection – not supported by ALB, so that is no solution at the moment. I have to use an NLB
I was wondering if the AWS NLB supports intra-VM/loopback traffic by default/with minimal additional configuration. Any resource that I can reference would be greatly appreciated.
Thank you,
Paul
I tried overcomming this isue by using an ALB(AGV2) with sticky sessions but this didn’t work…The authentication pop-up kept appearing even though I got a 200 response. NTLM needs a persistent TCP connection not just for the communication to happen between the same cleint-server. When the connection is re-established NTLM can’t tell what step the authentication process is on due to its desing.