메뉴
Amazon Virtual Private Cloud
사용 설명서

VPC와 함께 DNS 사용

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

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

당사에서는 Amazon DNS 서버를 제공합니다. 자체 DNS 서버를 사용하려면 자신의 VPC에 대한 새로운 DHCP 옵션 세트를 생성하십시오. 자세한 내용은 DHCP 옵션 세트 단원을 참조하십시오.

DNS 호스트 이름

기본 VPC에서 인스턴스를 시작하는 경우, 이 인스턴스에 퍼블릭 및 프라이빗 DNS 호스트 이름을 제공하는데, 이 호스트 이름은 이 인스턴스의 퍼블릭 IPv4 및 프라이빗 IPv4 주소에 상응합니다. 기본이 아닌 VPC로 인스턴스를 시작할 때 인스턴스에 프라이빗 DNS 호스트 이름을 제공하며, VPC 및 인스턴스에 퍼블릭 IPv4 주소가 있을 경우에 따라 지정한 DNS 속성에 따라 퍼블릭 DNS 호스트 이름을 제공할 수 있습니다.

Amazon 제공의 프라이빗(내부) DNS 호스트 이름은 인스턴스의 프라이빗 IPv4 주소로 확인되며, 형태는 us-east-1 리전의 경우 ip-private-ipv4-address.ec2.internal, 다른 리전의 경우 ip-private-ipv4-address.region.compute.internal(private-ipv4-address가 역방향 조회 IP 주소)이 됩니다. 프라이빗 DNS 호스트이름은 동일 네트워크에서 인스턴스 간의 통신을 위해 사용될 수 있지만 인스턴스가 위치한 네트워크 외부의 DNS 호스트이름은 확인할 수 없습니다.

퍼블릭(외부) DNS 호스트 이름은 us-east-1 리전의 경우 ec2-public-ipv4-address.compute-1.amazonaws.com, 다른 리전의 경우 ec2-public-ipv4-address.region.amazonaws.com 형태가 됩니다. Amazon은 퍼블릭 DNS 호스트 이름을 인스턴스 네트워크 외부에서는 인스턴스의 퍼블릭 IPv4 주소로 변환하고, 인스턴스 네트워크 내부에서는 인스턴스의 프라이빗 IPv4 주소로 변환합니다.

IPv6 주소에 대한 DNS 호스트 이름은 제공하지 않습니다.

VPC에서 DNS 지원

VPC에는 인스턴스가 퍼블릭 DNS 호스트 이름을 수신하는지, Amazon DNS 서버를 통한 DNS 확인이 지원되는지 결정하는 속성이 있습니다.

속성 설명
enableDnsHostnames

VPC에서 시작된 인스턴스가 퍼블릭 DNS 호스트 이름을 가져오는지 나타냅니다.

이 속성이 true이고 VPC에서 인스턴스가 퍼블릭 DNS 호스트 이름을 얻은 경우, enableDnsSupport 속성이 또한 true로 설정된 경우에만 해당됩니다.

enableDnsSupport

VPC에 대해 DNS 확인이 지원되는지 나타냅니다.

이 속성이 false이면 퍼블릭 DNS 호스트 이름을 IP 주소로 확인하는 VPC의 Amazon 제공의 DNS 서비스가 활성화되지 않습니다.

이 속성이 true이면, IP 주소 169.254.169.253 또는 VPC IPv4 네트워크 범위를 기초로 2를 더해 예약된 IP 주소의 Amazon 제공 DNS 서버에 대한 쿼리에 성공할 것입니다. 자세한 내용은 Amazon DNS 서버 섹션을 참조하십시오.

모든 속성이 true로 설정되면, 다음 이 발생합니다.

  • 인스턴스가 퍼블릭 DNS 호스트 이름을 수신합니다.

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

각 속성 또는 모든 속성이 false로 설정되면, 다음 이 발생합니다.

  • 인스턴스가 Amazon EC2 콘솔에서 볼 수 있거나 명령줄 도구 또는 AWS SDK로 설명할 수 있는 퍼블릭 DNS 호스트 이름을 수신하지 않습니다.

  • Amazon 제공의 DNS 서버는 Amazon 제공의 프라이빗 DNS 호스트 이름을 확인할 수 없습니다.

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

기본적으로, 모든 속성은 기본 VPC 또는 VPC 마법사에서 생성된 VPC의 true로 설정됩니다. 기본적으로, 오직 enableDnsSupport 속성만 true로 설정되며 이는 VPC 콘솔 또는 AWS CLI, API, AWS SDK를 사용하는 Your VPCs 페이지에서 생성된 것입니다.

VPC의 IPv4 주소 범위가 RFC 1918에 의해 지정된 프라이빗 IPv4 주소 범위를 벗어나는 경우를 비롯한 모든 주소 공간에 대해, Amazon DNS 서버는 프라이빗 DNS 호스트 이름을 프라이빗 IPv4 주소로 확인할 수 있습니다.

중요

2016년 10월 이전에 VPC를 생성했다면, VPC의 IPv4 주소 범위가 RFC 1918에 의해 지정된 프라이빗 IPv4 주소 범위를 벗어나는 경우 Amazon DNS 서버가 프라이빗 DNS 호스트 이름을 확인하지 않습니다. Amazon DNS 서버가 이러한 주소에 대해 프라이빗 DNS 호스트 이름을 확인할 수 있도록 하려면 AWS Support에게 문의하십시오.

이전에는 DNS 호스트 이름과 DNS를 지원하지 않았던 VPC에서 이런 지원을 사용하는 경우, 그 VPC로 이미 시작한 인스턴스는 퍼블릭 IPv4 주소 또는 탄력적 IP 주소가 있는 경우 퍼블릭 DNS 호스트 이름을 가져옵니다.

DNS 제한

각 Amazon EC2 인스턴스는 Amazon에서 제공하는 DNS 서버로 전송할 수 있는 패킷 수를 네트워크 인터페이스당 초당 최대 1024 패킷으로 제한합니다. 이 한도는 늘릴 수 없습니다. Amazon에서 제공하는 DNS 서버가 지원하는 초당 DNS 쿼리 수는 쿼리 유형, 응답 크기 및 사용 중인 프로토콜에 따라 다릅니다. 확장 가능한 DNS 아키텍처에 대한 자세한 내용과 권장 사항은 Hybrid Cloud DNS Solutions for Amazon VPC 백서를 참조하십시오.

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

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

인스턴스

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

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

  2. 탐색 창에서 Instances를 선택합니다.

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

  4. 해당되는 경우, 세부 정보 창의 Public DNS (IPv4)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를 선택합니다.

  3. 목록에서 VPC를 선택합니다.

  4. [Summary] 탭의 정보를 검토합니다. 이 예제에서는 두 가지 모두 사용합니다.

     DNS 설정 탭
  5. 설정을 업데이트하려면 Actions를 선택하고, Edit DNS Resolution 또는 Edit DNS Hostnames를 선택합니다. 이때 열리는 대화 상자에서 Yes 또는 No를 선택한 다음, Save를 선택합니다.

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

다음 명령 중 하나를 사용할 수 있습니다. 다음의 명령줄 인터페이스에 대한 자세한 정보는 Amazon VPC에 액세스단원을 참조하십시오.

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

다음 명령 중 하나를 사용할 수 있습니다. 다음의 명령줄 인터페이스에 대한 자세한 정보는 Amazon VPC에 액세스단원을 참조하십시오.

프라이빗 호스팅 영역 사용

프라이빗 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 트래픽 작동을 허용하는지 확인해야 합니다.)

ClassicLink DNS 지원에 대해 VPC가 활성화되어 있는 경우 ClassicLink를 통해 VPC에 연결된 EC2-Classic 인스턴스의 프라이빗 호스팅 영역에 액세스할 수 있습니다. 자세한 내용은 Linux 인스턴스용 Amazon EC2 사용 설명서Enabling ClassicLink DNS Support 단원을 참조하십시오. 그렇지 않은 경우 프라이빗 호스팅 영역은 VPC 외부에서 전이적 관계를 지원하지 않습니다. 예를 들어 VPN 연결의 반대쪽에서 사용자 지정 프라이빗 DNS 이름을 사용하여 리소스에 액세스할 수 없습니다.

중요

Amazon Route 53의 프라이빗 호스팅 영역에 정의된 사용자 지정 DNS 도메인 이름을 사용하는 경우, enableDnsHostnamesenableDnsSupport VPC 속성을 true로 설정해야 합니다. 자세한 내용은 VPC에 대한 DNS 지원 업데이트 단원을 참조하십시오.