I'm having a frustrating issue with a Network Load Balancer (NLB) in my staging environment. Although the NLB indicates that my targets are healthy, the traffic never seems to reach my EC2 instances. Here's the setup: I have two VPCs – VPC A contains the NLB, and VPC B hosts two Windows Server EC2 instances. I've confirmed that VPC peering is established and routes are set up correctly between the two. The NLB is configured with UDP and TCP listeners but even with passing health checks, I'm unable to connect to the EC2 instances through the NLB. When I attempt to connect to the NLB from my external IP, the connection times out. The strange part is, I can reach the EC2 instances directly using their private IPs just fine. I'm looking for insights and troubleshooting tips on why this might be happening, especially regarding how NLB handles cross-VPC traffic.
3 Answers
Check if there are any access controls in your setup that could be blocking traffic between the subnets. Since they're in different VPCs, it's certainly possible something is filtering the traffic. Use a tool like VPC Reachability Analyzer to help identify where things might be getting dropped.
It looks like you might be running into a limitation with NLBs across VPC peering. They're not as compatible with peering as ALBs are. You need to either use AWS PrivateLink for cross-VPC access or move the NLB into the same VPC as your EC2 instances. That's why health checks can pass (coming from AWS infrastructure) but actual client traffic isn't getting through. Just double-check your routing and permissions to be sure, but those changes should fix your issue.
Make sure to verify what the DNS of your NLB resolves to. You should be able to connect to it using TCP from your external machine. If that's not working, chances are your local setup might be misconfigured or there's a routing issue. Check that your machine can actually reach the NLB.
Related Questions
Can't Load PhpMyadmin On After Server Update
Redirect www to non-www in Apache Conf
How To Check If Your SSL Cert Is SHA 1
Windows TrackPad Gestures