VPC의 DNS 속성 - Amazon Virtual Private Cloud

VPC의 DNS 속성

도메인 이름 시스템(DNS)은 인터넷에서 사용되는 이름을 해당 IP 주소로 확인할 때 기준이 됩니다. DNS 호스트 이름은 컴퓨터 이름을 고유하고 절대적으로 지정하는 이름으로서, 호스트 이름과 도메인 이름으로 구성됩니다. DNS 서버는 DNS 호스트 이름을 해당 IP 주소로 확인합니다.

퍼블릭 IPv4 주소를 사용하면 인터넷으로 통신할 수 있는 반면, 프라이빗 IPv4 주소를 사용하면 인스턴스의 네트워크 내에서 통신할 수 있습니다. 자세한 내용은 IP 주소 지정 단원을 참조하십시오.

Amazon은 VPC용 DNS 서버(Amazon Route 53 Resolver)를 제공합니다. 자체 DNS 서버를 대신 사용하려면 자신의 VPC에 대한 새로운 DHCP 옵션 세트를 생성하세요. 자세한 내용은 Amazon VPC의 DHCP 옵션 세트 섹션을 참조하세요.

Amazon DNS 서버

Amazon DNS 서버는 Amazon Route 53 Resolver 서버입니다. 이 서버는 VPC의 인터넷 게이트웨이를 통해 통신할 필요가 있는 인스턴스의 DNS를 사용 설정합니다.

Amazon DNS 서버는 VPC의 특정 서브넷 또는 가용 영역 내에 상주하지 않습니다. 주소 169.254.169.253(VPC IPv4 네트워크 범위를 기초로 2를 더해 예약된 IP 주소) 및 fd00:ec2::253에 위치합니다. 예를 들어 10.0.0.0/16 네트워크 상의 Amazon DNS 서버는 10.0.0.2에 위치합니다. IPv4 CIDR 블록이 여러 개인 VPC의 경우 DNS 서버의 IP 주소가 기본 CIDR 블록에 위치합니다.

VPC에 인스턴스를 시작하는 경우 인스턴스에 프라이빗 DNS 호스트 이름을 제공합니다. 인스턴스가 퍼블릭 IPv4 주소로 구성되어 있고 VPC DNS 속성이 사용 설정된 경우 퍼블릭 DNS 호스트 이름도 제공합니다.

프라이빗 DNS 호스트 이름의 형식은 EC2 인스턴스를 시작할 때 구성하는 방법에 따라 다릅니다. 프라이빗 DNS 호스트 이름 유형에 대한 자세한 내용은EC2 인스턴스 이름 지정 단원을 참조하십시오.

VPC에 있는 Amazon DNS 서버는 Route 53의 프라이빗 호스팅 영역에서 지정하는 DNS 도메인 이름을 확인하는 데 사용합니다. 프라이빗 호스팅 영역에 대한 자세한 내용은 Amazon Route 53 개발자 안내서프라이빗 호스팅 영역 작업을 참조하세요.

규칙 및 고려 사항

Amazon DNS 서버를 사용할 때 다음 규칙 및 고려 사항이 적용됩니다.

  • 네트워크 ACL 또는 보안 그룹을 사용하여 Amazon DNS 서버의 양방향 트래픽을 필터링할 수는 없습니다.

  • Amazon EMR 같은 Hadoop 프레임워크를 사용하는 서비스에서는 인스턴스가 자신의 FQDN(정규화된 도메인 이름)을 확인해야 합니다. 그런 경우, domain-name-servers 옵션이 사용자 지정 값으로 설정되어 있는 경우 DNS 확인이 실패할 수 있습니다. DNS를 올바르게 확인하려면 region-name.compute.internal 도메인에 대한 쿼리를 Amazon DNS 서버로 전달하기 위해 DNS 서버 상에 조건부 전달자를 추가하는 방법을 고려하십시오. 자세한 내용은 Amazon EMR 관리 가이드클러스터를 호스팅하도록 VPC를 설정을 참조하십시오.

  • Windows Server 2008에서는 링크-로컬 주소 범위(169.254.0.0/16)에 위치한 DNS 서버의 사용이 허용되지 않습니다.

  • Amazon Route 53 Resolver는 재귀 DNS 쿼리만 지원합니다.

DNS 호스트 이름

인스턴스를 시작하면 인스턴스가 프라이빗 IPv4 주소와 프라이빗 IPv4 주소에 해당하는 프라이빗 DNS 호스트 이름을 항상 수신합니다. 인스턴스에 퍼블릭 IPv4 주소가 있는 경우 VPC의 DNS 속성은 퍼블릭 IPv4 주소에 해당하는 퍼블릭 DNS 호스트 이름을 수신할 여부를 결정합니다. 자세한 정보는 VPC의 DNS 속성을 참조하십시오.

Amazon에서 제공한 DNS 서버를 사용 설정하면 DNS 호스트 이름이 다음과 같이 할당되고 확인됩니다.

프라이빗 IP DNS 이름(IPv4에만 해당)

프라이빗 IP DNS 이름(IPv4 전용) 호스트 이름을 사용하여 동일 VPC의 인스턴스 간에 통신할 수 있습니다. 인스턴스가 동일한 AWS 리전에 있고 다른 인스턴스의 호스트 이름이 RFC 1918: 10.0.0.0 - 10.255.255.255 (10/8 prefix), 172.16.0.0 - 172.31.255.255 (172.16/12 prefix)192.168.0.0 - 192.168.255.255 (192.168/16 prefix)에서 정의한 프라이빗 주소 공간 범위에 있는 한, 다른 VPC에 있는 다른 인스턴스의 프라이빗 IP DNS 이름(IPv4 전용) 호스트 이름을 확인할 수 있습니다.

프라이빗 리소스 DNS 이름

이 인스턴스에 대해 선택한 A 및 AAAA DNS 레코드로 확인할 수 있는 RBN 기반 DNS 이름입니다. 이 DNS 호스트 이름은 이중 스택 및 IPv6 전용 서브넷의 인스턴스에 대한 인스턴스 세부 정보에서 볼 수 있습니다. RBN에 대한 자세한 내용은 EC2 인스턴스 호스트 이름 유형을 참조하십시오.

퍼블릭 IPv4 DNS

퍼블릭(외부) IPv4 DNS 호스트 이름은 us-east-1 리전의 경우 ec2-public-ipv4-address.compute-1.amazonaws.com, 다른 리전의 경우 ec2-public-ipv4-address.region.compute.amazonaws.com 형식이 됩니다. Amazon DNS 서버는 퍼블릭 DNS 호스트 이름을 인스턴스 네트워크 외부에서는 인스턴스의 퍼블릭 IPv4 주소로 확인하고, 인스턴스 네트워크 내부에서는 인스턴스의 프라이빗 IPv4 주소로 확인합니다. 자세한 내용은 Linux 인스턴스용 Amazon EC2 사용 설명서퍼블릭 IPv4 주소 및 외부 DNS 호스트 이름을 참조하십시오.

VPC의 DNS 속성

다음 VPC 속성에 따라 VPC에 제공되는 DNS 지원이 결정됩니다. 두 속성을 모두 사용하면, VPC로 시작된 인스턴스는 생성 시 퍼블릭 IPv4 주소 또는 탄력적 IP 주소가 할당된 경우 퍼블릭 DNS 호스트 이름을 받습니다. 이전에는 모두 사용하지 않았던 두 VPC 속성을 모두 사용하도록 설정하면, 그 VPC로 이미 시작된 인스턴스는 퍼블릭 IPv4 주소 또는 탄력적 IP 주소가 있는 경우 퍼블릭 DNS 호스트 이름을 받습니다.

VPC에 대해 이러한 속성이 활성화되어 있는지 확인하려면 VPC에 대한 DNS 속성 보기 및 업데이트을 참조하십시오.

속성 설명
enableDnsHostnames

VPC가 퍼블릭 IP 주소가 있는 인스턴스에 퍼블릭 DNS 호스트 이름을 할당하도록 지원할 여부를 결정합니다.

VPC가 기본 VPC가 아닌 경우 이 속성의 기본값은 false입니다.

enableDnsSupport

VPC가 Amazon에서 제공하는 DNS 서버를 통해 DNS 확인을 지원하는지 여부를 결정합니다.

이 속성이 true인 경우, Amazon 제공 DNS 서버에 대한 쿼리가 성공합니다. 자세한 정보는 Amazon DNS 서버을 참조하십시오.

이 속성의 기본값은 true입니다.

규칙 및 고려 사항

다음 규칙이 적용됩니다.

  • 두 속성이 모두 true로 설정되는 경우 다음이 발생합니다.

    • 퍼블릭 IP 주소를 갖는 인스턴스가 해당하는 퍼블릭 DNS 호스트 이름을 받습니다.

    • Amazon Route 53 Resolver 서버는 Amazon에서 제공한 프라이빗 DNS 호스트 이름을 확인할 수 있습니다.

  • 속성 중 하나 이상이 false로 설정된 경우 다음이 발생합니다.

    • 퍼블릭 IP 주소를 갖는 인스턴스가 해당하는 퍼블릭 DNS 호스트 이름을 받지 않습니다.

    • Amazon Route 53 Resolver는 Amazon에서 제공한 프라이빗 DNS 호스트 이름을 확인할 수 없습니다.

    • 사용자 지정 도메인 이름에 DHCP 옵션 세트가 있을 경우 인스턴스가 프라이빗 DNS 호스트 이름을 받습니다. Amazon Route 53 Resolver 서버를 사용하지 않는 경우에는 사용자 지정 도메인 이름 서버가 적절하게 호스트 이름을 확인해야 합니다.

  • Amazon Route 53의 프라이빗 호스팅 영역에서 정의된 사용자 지정 DNS 도메인 이름을 사용하거나 프라이빗 DNS를 인터페이스 VPC 엔드포인트(AWS PrivateLink)와 함께 사용하는 경우, enableDnsHostnamesenableDnsSupport 속성을 true로 설정해야 합니다.

  • Amazon Route 53 Resolver는 VPC의 IPv4 주소 범위가 RFC 1918에 의해 지정된 프라이빗 IPv4 주소 범위를 벗어나는 경우를 비롯하여 모든 주소 공간에 대해 프라이빗 DNS 호스트 이름을 프라이빗 IPv4 주소로 확인할 수 있습니다. 그러나 2016년 10월 이전에 VPC를 생성했다면 VPC의 IPv4 주소 범위가 이러한 범위를 벗어나는 경우 Amazon Route 53 Resolver에서 프라이빗 DNS 호스트 이름을 확인하지 않습니다. 이에 대한 지원을 활성화하려면 AWS Support에 문의하십시오.

DNS 할당량

각 EC2 인스턴스는 Route 53 Resolver로(구체적으로 10.0.0.2 및 169.254.169.253과 같은 .2 주소) 네트워크 인터페이스별 초당 1024개의 패킷을 보낼 수 있습니다. 이 할당량은 늘릴 수 없습니다. Route 53 Resolver가 지원하는 초당 DNS 쿼리 수는 쿼리 유형, 응답 크기 및 사용 중인 프로토콜에 따라 다릅니다. 확장 가능한 DNS 아키텍처에 대한 자세한 내용과 권장 사항은 AWSActive Directory 포함 하이브리드 DNS 기술 가이드를 확인하십시오.

할당량에 도달하면 Route 53 Resolver가 트래픽을 거부합니다. 할당량에 도달하는 원인으로는 DNS 조절 문제나, Route 53 Resolver 네트워크 인터페이스를 사용하는 인스턴스 메타데이터 쿼리 등이 있습니다. VPC DNS 조절 문제를 해결하는 방법에 대한 자세한 내용은 Amazon에서 제공한 DNS 서버에 대한 내 DNS 쿼리가 VPC DNS 조절로 인해 실패하는지 확인하려면 어떻게 해야 하나요?를 참조하세요. 인스턴스 메타데이터 검색에 대한 정보는 Linux 인스턴스용 Amazon EC2 사용 설명서에서 인스턴스 메타데이터 검색을 참조하세요.

EC2 인스턴스의 DNS 호스트 이름 보기

Amazon EC2 콘솔 또는 명령줄을 사용하면 실행 중인 인스턴스 또는 네트워크 인터페이스의 DNS 호스트 이름을 볼 수 있습니다.

퍼블릭 DNS(IPv4)프라이빗 DNS 필드는 인스턴스와 연결된 VPC에 대해 DNS 옵션을 활성화한 경우 사용할 수 있습니다. 자세한 정보는 VPC의 DNS 속성을 참조하십시오.

인스턴스

콘솔을 사용하여 인스턴스의 DNS 호스트 이름을 보려면

  1. https://console.aws.amazon.com/ec2/에서 Amazon EC2 콘솔을 엽니다.

  2. 탐색 창에서 인스턴스(Instances)를 선택합니다.

  3. 목록에서 해당 인스턴스를 선택합니다.

  4. 해당되는 경우, 세부 정보 창의 퍼블릭 DNS(Public DNS)(IPv4)프라이빗 DNS(Private DNS) 필드에 DNS 호스트 이름이 표시됩니다.

명령줄을 사용하여 인스턴스의 DNS 호스트 이름을 보려면

다음 명령 중 하나를 사용할 수 있습니다. 명령줄 인터페이스에 대한 자세한 내용은 Amazon VPC 작업 섹션을 참조하세요.

네트워크 인터페이스

콘솔을 사용하여 네트워크 인터페이스의 프라이빗 DNS 호스트 이름을 보려면

  1. https://console.aws.amazon.com/ec2/에서 Amazon EC2 콘솔을 엽니다.

  2. 탐색 창에서 네트워크 인터페이스(Network Interfaces)를 선택합니다.

  3. 목록에서 네트워크 인터페이스를 선택합니다.

  4. 세부 정보 창의 프라이빗 DNS(IPv4) 필드에 프라이빗 DNS 호스트 이름이 표시됩니다.

명령줄을 사용하여 네트워크 인터페이스의 DNS 호스트 이름을 보려면

다음 명령 중 하나를 사용할 수 있습니다. 명령줄 인터페이스에 대한 자세한 내용은 Amazon VPC 작업 섹션을 참조하세요.

VPC에 대한 DNS 속성 보기 및 업데이트

Amazon VPC 콘솔을 이용해 VPC의 DNS 지원 속성을 확인하고 업데이트할 수 있습니다.

콘솔을 사용하여 VPC에 대한 DNS 지원을 설명하고 업데이트하려면

  1. https://console.aws.amazon.com/vpc/에서 Amazon VPC 콘솔을 엽니다.

  2. 탐색 창에서 Your VPCs(사용자 VPC)를 선택합니다.

  3. VPC에 대한 확인란을 선택합니다.

  4. 세부 정보(Details)의 정보를 검토합니다. 이 예에서는 DNS 호스트 이름(DNS hostnames)DNS 확인(DNS resolution)이 모두 활성화되었습니다.

    
              DNS 설정 탭
  5. 설정을 업데이트하려면 작업(Actions)을 선택하고, DNS 호스트 이름 편집(Edit DNS hostnames) 또는 DNS 확인 편집(Edit DNS Resolution)을 선택합니다. 메시지가 표시되면 사용 설정(Enable)을 선택하거나 선택 해제한 다음 변경 사항 저장(Save changes)을 선택합니다.

명령줄을 사용하여 VPC에 대한 DNS 지원을 설명하려면

다음 명령 중 하나를 사용할 수 있습니다. 명령줄 인터페이스에 대한 자세한 내용은 Amazon VPC 작업 섹션을 참조하세요.

명령줄을 사용하여 VPC에 대한 DNS 지원을 업데이트하려면

다음 명령 중 하나를 사용할 수 있습니다. 명령줄 인터페이스에 대한 자세한 내용은 Amazon VPC 작업 단원을 참조하t십시오.

프라이빗 호스팅 영역

프라이빗 IPv4 주소 또는 AWS 제공 프라이빗 DNS 호스트 이름을 사용하는 대신 example.com과 같은 사용자 지정 DNS 도메인 이름을 사용하여 VPC의 리소스에 액세스하려면 Route 53에서 프라이빗 호스팅 영역을 생성합니다. 프라이빗 호스팅 영역이란 인터넷에 자신의 리소스를 노출하지 않고 하나 이상의 VPC 내에 있는 도메인과 그 하위 도메인의 트래픽을 라우팅하려는 방식에 대한 정보를 담고 있는 컨테이너입니다. Route 53에서 도메인과 하위 도메인에 대한 쿼리에 응답하는 방식을 결정하는 Route 53 리소스 레코드 세트를 생성할 수 있습니다. 예를 들어 example.com에 대한 브라우저 요청이 VPC의 웹 서버로 라우팅되도록 하려는 경우, 프라이빗 호스팅 영역에 A 레코드를 생성하고 그 웹 서버의 IP 주소를 지정할 것입니다. 프라이빗 호스팅 영역의 생성에 대한 자세한 내용은 Amazon Route 53 개발자 안내서프라이빗 호스팅 영역 작업을 참조하세요.

사용자 지정 DNS 도메인 이름을 사용하여 리소스에 액세스하려면 VPC 내에 있는 인스턴스에 연결되어 있어야 합니다. 인스턴스에서 ping 명령(예: ping mywebserver.example.com)을 사용하여 사용자 지정 DNS 이름에서 프라이빗 호스팅 영역에 있는 리소스에 액세스 가능한지 테스트할 수 있습니다. (인스턴스의 보안 그룹 규칙에서 ping에 대한 인바운드 ICMP 트래픽 작동을 허용하는지 확인해야 합니다.)

프라이빗 호스팅 영역은 VPC 외부에서 전이적 관계를 지원하지 않습니다. 예를 들어 VPN 연결의 반대쪽에서 사용자 지정 프라이빗 DNS 이름을 사용하여 리소스에 액세스할 수 없습니다.

중요

Amazon Route 53의 프라이빗 호스팅 영역에 정의된 사용자 지정 DNS 도메인 이름을 사용하는 경우, enableDnsHostnamesenableDnsSupport 속성을 둘 다 true(으)로 설정해야 합니다.