원격 네트워크에 호스팅된 DNS 레코드를 내 VPC의 리소스에서 확인하도록 Route 53 Resolver 아웃바운드 엔드포인트를 구성하려면 어떻게 해야 합니까?

최종 업데이트 날짜: 2020년 9월 15일

Amazon Virtual Private Cloud(Amazon VPC)의 Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스에서 원격 네트워크에 호스팅된 DNS 레코드를 확인하도록 Amazon Route 53 Resolver 아웃바운드 엔드포인트를 구성하려면 어떻게 해야 합니까?

간략한 설명

Amazon VPC로 생성된 VPC는 Route 53 Resolver로부터 자동 DNS 확인을 수신합니다. VPC의 EC2 인스턴스는 VPC CIDR IPv4 네트워크 범위의 베이스에 2를 더한 예약 IP 주소를 사용하여 해석기에 DNS 쿼리를 보낼 수 있습니다. VPC의 Amazon EC2 인스턴스에서 원격 네트워크의 DNS 해석기로 도메인 이름에 대한 DNS 쿼리를 전달하도록 해석기를 구성할 수 있습니다.

DNS 쿼리를 전달하려면 다음을 각각 생성합니다.

  • DNS 쿼리를 원격 네트워크로 보내기 위한 아웃바운드 엔드포인트
  • Resolver가 원격 DNS 서버로 전달하는 DNS 쿼리의 도메인 이름을 지정하기 위한 Resolver 규칙

해결 방법

사전 요구 사항 완료

  • 아웃바운드 엔드포인트를 생성하려는 VPC에 대한 DNS 지원 속성에서 DNS 확인을 활성화합니다.
  • VPC에서 사용자 지정 DNS 서버를 사용하는 경우: VPC IPv4 네트워크 범위의 베이스에 2를 더한 예약 IP 주소를 사용하여 해당 도메인 이름에 대한 DNS 쿼리를 Resolver에 조건부로 전달하도록 구성되어 있는지 확인합니다.
  • VPC에서 사용자 지정 DNS 서버를 사용하지 않는 경우: DHCP 옵션의 도메인 이름 서버(Domain name servers)AmazonProvidedDNS로 설정되어 있거나 VPC IPv4 네트워크 범위의 베이스에 2를 더한 예약 IP 주소로 설정되어 있는지 확인합니다.

아웃바운드 엔드포인트 구성

  1. Route 53 콘솔을 엽니다.
  2. 탐색 창에서 [Outbound endpoints]를 선택합니다.
  3. 탐색 모음에서 아웃바운드 엔드포인트를 생성하려는 VPC의 리전을 선택합니다.
  4. 아웃바운드 엔드포인트 생성(Create outbound endpoint)을 선택합니다.
  5. 아웃바운드 엔드포인트 생성(Create outbound endpoint) 페이지에서 아웃바운드 엔드포인트에 대한 일반 설정(General settings for outbound endpoint) 섹션을 작성합니다. 해석기가 원격 네트워크의 DNS 쿼리에 사용하는 IP 주소 및 포트에 대한 아웃바운드 TCP 및 UDP 연결을 허용하는 보안 그룹(Security group)을 선택합니다.
  6. IP 주소(IP addresses) 섹션을 작성합니다. Resolver가 서브넷의 사용 가능한 IP 주소에서 IP 주소를 자동으로 선택하도록 하거나 IP 주소를 직접 지정할 수 있습니다. DNS 쿼리에 대해 2개(최소)~6개(최대) IP 주소 중에서 선택합니다. 두 개 이상의 서로 다른 가용 영역에서 IP 주소를 선택하는 것이 가장 좋습니다. 서브넷(Subnet)에서 다음과 같은 항목이 있는 서브넷을 선택합니다.
    • AWS Direct Connect, VPN 연결 또는 NAT(네트워크 주소 변환) 게이트웨이를 사용하는 원격 네트워크에 있는 DNS 해석기의 IP 주소에 대한 경로가 포함된 라우팅 테이블
    • 해석기가 원격 네트워크에 대한 DNS 쿼리에 사용하는 포트로 전송되는 UDP 및 TCP 트래픽, 그리고 대상 포트 범위 1024-65535에서 해석기로부터 수신되는 UDP 및 TCP 트래픽을 모두 허용하는 네트워크 ACL(액세스 제어 목록)
  7. (선택 사항) 태그(Tags) 섹션을 작성합니다.
  8. 제출(Submit)을 선택합니다.

해석기 규칙 구성

새 규칙을 생성하려면 다음을 수행합니다.

  1. Route 53 콘솔을 엽니다.
  2. Route 53 탐색 창에서 규칙(Rules)을 선택합니다.
  3. 탐색 모음에서 새로 생성된 아웃바운드 엔드포인트가 있는 리전을 선택합니다.
  4. 규칙 생성(Create rule)을 선택합니다.
  5. 규칙 생성(Create rule) 페이지에서 아웃 바운드 트래픽에 대한 규칙(Rule for outbound traffic) 섹션을 작성합니다. 규칙 유형(Rule type)에서 전달 규칙을 구성하고 원격 네트워크로 DNS 쿼리를 전달할 VPC에 연결합니다. 아웃바운드 엔드포인트(Outbound endpoint)에서 방금 생성한 아웃바운드 엔드포인트를 선택합니다.
    참고: 이 규칙이 연결될 VPC는 아웃바운드 엔드포인트를 생성한 VPC와 동일할 필요는 없습니다.
  6. IP 주소(IP addresses) 섹션을 작성합니다. IP 주소(IP addresses)에서 원격 네트워크에 있는 DNS 해석기의 IP 주소를 지정합니다. 포트(Port)에서 이러한 해석기가 DNS 쿼리에 사용하는 포트를 지정합니다.
    참고: Resolver는 이 규칙과 일치하고 이 규칙에 연결된 VPC에서 시작된 DNS 쿼리를 참조된 아웃바운드 엔드포인트로 전달합니다. 그 결과 이러한 쿼리는 여기에서 지정한 대상 IP 주소로 전달됩니다.
  7. (선택 사항) 태그(Tags) 섹션을 작성합니다.
  8. 제출(Submit)을 선택합니다.

기존 규칙을 사용하려면 다음을 수행합니다.

  • 계정의 VPC와 동일한 지역에 동일한 도메인에 대한 규칙이 이미 있습니까? 새 규칙을 생성하는 대신 해당 규칙을 VPC에 연결할 수 있습니다. 규칙 대시보드에서 규칙을 선택하고 이를 지역의 해당 VPC에 연결합니다.
  • VPC와 동일한 지역이지만 다른 계정에 있는 동일한 도메인에 대한 규칙이 이미 있습니까? 그런 다음, Resource Access Manager를 사용하여 원격 계정의 규칙을 계정에 공유할 수 있습니다. 규칙을 공유할 때 해당하는 아웃바운드 엔드포인트도 공유합니다. 규칙을 계정과 공유한 후 규칙 대시보드에서 규칙을 선택하고 계정의 VPC에 연결합니다.

참고: Resolver 규칙에 연결된 VPC에서 아웃바운드 엔드포인트가 위치한 VPC로 DNS 쿼리를 전달할 때에는 네트워크 연결이 필요하지 않습니다. 이는 VPC가 동일한 계정에 있는지 여부와 상관없이 마찬가지입니다.

구성 테스트

VPC의 Amazon EC2 인스턴스 중 하나에서 DNS 확인을 수행합니다.

  • Linux 또는 macOS의 경우: dig <record name> <record type>
  • Windows의 경우: nslookup -type=<record type> <record name>