Application Load Balancer를 사용하여 소스 IP 주소를 기반으로 요청을 라우팅하려면 어떻게 해야 합니까?
최종 업데이트 날짜: 2023년 2월 3일
Application Load Balancer를 사용하여 요청의 소스 IP 주소를 기반으로 요청에 대해 특정 작업을 수행하려고 합니다.
해결 방법
요청의 소스 IP 주소를 기반으로 특정 작업을 수행할 수 있는 몇 가지 사용 사례가 있습니다. 예를 들어 애플리케이션 버전이 두 개 있습니다. 한 가지 버전은 글로벌 사용자를 위한 퍼블릭 버전입니다. 다른 하나는 일부 확장(베타) 기능을 포함하는 내부 버전입니다. 회사 네트워크 CIDR에서 애플리케이션에 액세스하는 직원만 내부 버전을 사용할 수 있게 하고자 합니다. 이 작업 또는 다른 유사한 작업을 수행하려면 소스 IP 주소를 기반으로 리스너 규칙을 구성합니다.
소스 IP 주소를 기반으로 하는 규칙은 IP 헤더(계층 3)에서 소스 IP 주소를 확인합니다. 소스 IP 주소를 변경하는 프록시 또는 방화벽이 있는 경우에는 리스너 규칙에 프록시 또는 방화벽의 IP 주소를 지정합니다.
참고: 리스너 규칙을 사용하여 클라이언트의 요청을 차단하지 마세요. 대신 보안 그룹 또는 네트워크 액세스 제어 목록을 사용하는 것이 좋습니다. 많은 수의 클라이언트를 차단하려면 AWS WAF를 사용할 수 있습니다.
1. Application Load Balancer를 생성합니다. 또는 이미 생성한 Application Load Balancer를 사용합니다.
2. Amazon Elastic Compute Cloud(Amazon EC2) 콘솔을 엽니다.
3. 탐색 창의 로드 밸런싱(Load Balancing)에서 로드 밸런서(Load Balancers)를 선택합니다.
4. 로드 밸런서를 선택합니다.
5. 리스너(Listeners) 탭을 선택합니다.
6. 사용자의 리스너를 선택한 다음 작업(Actions)을 선택합니다. 그런 다음 규칙 관리(Manage rules)를 선택합니다.
7. 규칙 추가(Add rules) 아이콘(더하기 기호)을 선택한 다음 규칙 삽입(Insert rule)을 선택합니다.
8. 조건 추가(Add condition)를 선택한 다음 소스 IP(Source IP)를 선택합니다.
9. 다른 작업을 구성하려는 IP 주소를 지정합니다.
참고: 단일 IP 주소 또는 접두사가 있는 네트워크 CIDR 중 하나를 지정할 수 있습니다. 예를 들어, 1.1.1.1/32 또는10.8.0.0/21을 지정합니다.
10. 작업 추가(Add action)를 선택한 후 필요한 작업을 선택합니다. 다음 작업 예시를 참조하세요.
전달(Forward): 요청을 다른 대상 그룹(예: 애플리케이션의 내부 버전을 실행하는 대상 그룹)으로 전달합니다.
고정 응답 반환(Return fixed response): 특정 사용자를 차단하거나 특정 사용자에게 사용자 지정 응답을 제공합니다.
12. 조건을 저장하려면 확인 표시 아이콘을 선택합니다.
13. 규칙을 저장하려면 저장(Save)을 선택합니다.