Amazon VPC DNS Server
- EC2는 Public/Private DNS 주소가 존재하며 쿼리 하는 주소에 따라 Public/Private IP를 얻을 수 있음
- DNS Server 주소는 VPC CIDR + 2 IP Address(.2)로 할당됨 (DNS Server는 VPC 단위로 할당)
- DNS 서버는 VPC 단위로 할당 되며, VPC 내의 모든 서브넷에서 .2 IP 주소가 할당 됨
- 먼저 Private 및 Public Route53 호스팅 존에서 DNS 요청을 해결하고, 없을 경우 다른 모든 요청은 Public DNS로 전달
Default EC2 Public and Private DNS Names
- EC2 이름은 Public/Private 이름이 존재
- 이름 규칙은 US-East-1 리전만 다른 규칙 적용, 나머지 리전은 동일규칙 적용
- Internal DNS
- ip-private-ipv4-address.ec2.internal (for the US-East-1 region)
- ip-private-ipv4-address.region.compute.internal (for all other regions)
- External DNS (If instance has Public IP)
- ec2-public-ipv4-address.compute-1.amazonaws.com (for the US-East-1 region)
- ec2-public-ipv4-address.region.amazonaws.com (for other regions)
- DHCP Option sets - 속성
- enableDnsSupport: (= DNS Resolution setting)
- VPC에서 DNS 요청이 처리되도록 지원(Default True)
- True인 경우 169.254.169.253인 AWS DNS 서버를 쿼리 (169.254.169.253 → VPC의 .2 DNS 주소로 매핑되어 있어서 .2 DNS로 보내짐)
- enableDnsHostname: (= DNS Hostname setting)
- Default VPC는 Default True, 신규 생성된 VPC는 Default False
- True : Public IP가 있는 경우 EC2 인스턴스에 Public 호스트 이름(Public DNS 주소)을 할당 (Private DNS 주소는 항상 할당)
- 인스턴스에 Public DNS주소를 할당하기에 enableDnsSupport=true가 되어있어야 활용 가능
- enableDnsSupport: (= DNS Resolution setting)
VPC DHCP Options sets
- Default DHCP Options set은 수정 불가, 교체 시 신규 Options set 생성 후 교체, VPC당 하나만 적용 가능
- DHCP Options set을 통해 인스턴스 DNS 주소 형식 변경
- domain-name: 변경할 DNS Name 작성
- domain-name-servers: AmazonProvidedDNS ← 동일 유지
(별도의 DNS 서버를 사용할 경우 사용할 DNS 서버 주소 입력)
- IDC/AWS 간 Route53을 이용한 DNS 흐름
요약
- VPC에는 기본 DNS 서버 AWSProvidedDNS가 있음
- DHCP 옵션 세트를 사용하여 VPC DNS 설정을 변경 할 수 있음
- AWSProvidedDNS는 Route53 프라이빗 호스팅 영역에서 DNS를 확인할 수 있음
- VPC와 온프레미스 네트워크 간의 하이브리드 DNS 확인을 위해 Route53 Resolver 엔드포인트를 사용
- DHCP 옵션 세트는 편집할 수 없음. 새로 생성하여 VPC와 연결하면 한 번에 하나의 DHCP 옵션 세트만 연결 가능
- 호스트 이름 확인을 위해 enableDnsSupport 및 enableDnsHostname을 모두 활성화 해야 함
- AWS 제공 DNS 서버는 VPC 기반 + 2개의 IP 주소에서 실행. 이 IP 또는 VPC 내의 169.254.169.253 가상 IP에서 DNS 서버를 쿼리할 수도 있음.