NLB의 preserve_client_ip.enabled 설정 관련 문의

0

NLB에서 preserve_client_ip.enabled 가 어떨 때 사용하는 건가요? 기존의 L4 SNAT 하고 뭐가 다른걸까요?

Brown
질문됨 일 년 전422회 조회
2개 답변
0
수락된 답변

Client ip preservation은 l7 스위치의 x-forwarded-for 헤더처럼 클라이언트 IP정보를 변경없이 보내는 기능입니다. 이 기능은 NLB에서만 제공합니다. 만약, 클라이언트 IP를 보존 안 한다고 하면 NLB의 Private IP로 변경해서 리얼서버로 전달합니다. 기존 온프렘에서 사용하는 L4 SNAT과 다소 차이가 있는 부분은, 기존의 SNAT (Citrix, F5, etc..)은 Real Server가 아웃바운드 통신을 할 때 각 Vendor 사가 제공하는 Option을 통해 L4스위치의 VIP(Virtual IP)로 변경하여 전달합니다. 그러나 AWS에서는 인스턴스가 Outbound 통신을 할 때 NAT Gateway 또는 NAT Instance를 사용합니다. 그래서 방향성측면으로 봤을 때 Source가 외부 클라이언트인지 혹은 Real Server인지가 가장 큰 차이점입니다. https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-target-groups.html#client-ip-preservation

profile pictureAWS
답변함 일 년 전
0

추가 설명 드리자면, 바꾸어 말해 NLB 의 타겟 인스턴스에 도달하는 패킷의 출발지 IP 주소가 원래 클라이언트의 IP 주소 그대로 보존되어 (NLB 의 IP 주소로 바꾸지 않고) 패킷이 전달되는 것을 의미합니다.

예를 들어, NLB 의 타겟 인스턴스가 방화벽 어플라이언스로 동작하고 있고 클라이언트의 IP 주소를 기반으로 검사 후 허용 처리된 다음 타겟 인스턴스 이 후에 존재하는 다른 리소스 (예> 인스턴스, ELB 등 / NLB -> 타겟 인스턴스 (방화벽) -> NLB/ALB...) 에 전달하는 아키텍처가 있다고 가정할 때, 클라이언트 IP 주소 보존 기능을 활성화하여 이러한 구성이 가능하도록 할 수 있습니다.

[1] https://docs.aws.amazon.com/ko_kr/elasticloadbalancing/latest/network/load-balancer-target-groups.html#client-ip-preservation

profile pictureAWS
지원 엔지니어
답변함 일 년 전

로그인하지 않았습니다. 로그인해야 답변을 게시할 수 있습니다.

좋은 답변은 질문에 명확하게 답하고 건설적인 피드백을 제공하며 질문자의 전문적인 성장을 장려합니다.

질문 답변하기에 대한 가이드라인