
1. Network Load Balancer (v2)
- Network load balancers (Layer 4) allow to:
- - Forward TCP & UDP traffic to your instances
- - Handle millions of request per seconds
- - Less latency ~100 ms (vs 400 ms for ALB)
- NLB has one static IP per AZ, and supports assigning Elastic IP
- (helpful for whitelisting specific IP)
- NLB are used for extreme performance, TCP or UDP traffic
- Not included in the AWS free tier
시험문제에 고성능, TCP, UDP, 네트워크 layer 4 계층이랑 정적IP가 나오면 네트워크 로드 밸런서를 떠올리자!
NLB(Network Load Balancer)란 AWS에서 제공하는 고성능 로드 밸런서로, NLB는 빠르고 안정적으로 TCP/UDP 트래픽을 분산하므로 전송 속도와 안정성이 중요한 서비스에 사용된다. ALB(Application Load Balancer)보다 속도가 빠르고, 고정 IP를 제공하는 게 특징이다.
- L4 (전송 계층, TCP/UDP) 기반의 로드 밸런싱
- 수백만 개의 요청을 초당 처리 가능 (고성능)
- 고정 IP 제공 → 클라이언트가 특정 IP를 통해 접근 가능
- 초저지연(Low Latency) 처리
- Auto Scaling 지원
언제 사용하면 좋을까?
- 고속 통신이 필요한 경우 (예: 금융 서비스, 게임 서버)
- 고정 IP가 필요한 경우
- TCP/UDP 기반 서비스 (웹소켓, VoIP 등)
2. TCP (Layer 4) Based Traffic


애플리케이션 로드 밸런서의 작동 방식과 유사하다. 대상그룹을 생성하면 네트워크 로드 밸런서가 대상 그룹을 리다이렉트한다. 백엔드, 프론트엔드 모두 TCP 트래픽을 사용하거나 백엔드에서는 HTTP를, 프론트엔드에서는 TCP를 사용할 수 있다.
3. Network Load Balancer - Target Groups
- EC2 instances
- IP Addresses - must be private IPs
- Application Load Balancer
- ⭐Health Checks support the TCP, HTTP and HTTPS Protocols

왜 세 번째 그림에서 NLB를 ALB 앞에 배치할까? 이렇게 하면 NLB 덕분에 고정 IP주소를 얻을 수 있고 ALB 덕분에 HTTP 유형의 트래픽을 처리하는 규칙을 얻을 수 있기 때문에 조합이 좋다. 시험에 자주 나오는 부분은 네트워크 로드 밸런서 대상 그룹이 수행하는 '상태 확인(Health check)'이다.
4. Network Load Balancer 실습
NLB를 생성할 때 AZ를 지정하면 각 가용 영역마다 고정된 IPv4 주소를 받고, 이 주소는 AWS로부터 할당된다. 다만 만약 Elastic IP를 가지고 있다면 대신 사용할 수도 있다.




이렇게 NLB를 생성한 후 DNS 네임을 복사해서 주소창에 붙여넣기 하면 서버가 실행되지 않는다.
그래서 Health check를 확인 해 보니 2개의 인스턴스가 Unused 상태로 확인되었다.


이렇게 Unused로 뜨는 이유는 인스턴스들의 보안 그룹 때문이다. 이들의 보안그룹 launch-wizard-1의 Inbound rules를 보면 HTTP 규칙이 ALB로 오는 트래픽만 받도록 허용되었기 때문이다. Edit inbound rules 를 통해서 새로운 규칙을 추가 해 준다.

위처럼 NLB가 대상 그룹의 EC2 인스턴스에게 트래픽을 보낼 수 있도록 허용하는 인바운드 룰을 추가 해 준다. 이렇게 하고 다시 Health Check로 가면 이제 Instances의 상태가 Healthy로 바뀐다. 그리고 NLB가 두 개의 인스턴스로 로드를 분산하는 것을 확인 할 수 있다.

