DNS ( Domain Name System )
- 사람에게 친숙한 호스트 이름을 대상 서버 IP 주소로 변환해줌
- ex) www.google.com 을 입력하면 DNS가 IP 주소로 변환해주어 웹 브라우저가 해당 IP 주소를 통해 접근 후 구글로부터 데이터를 얻음
- DNS는 인터넷의 중추
- DNS에는 계층적 이름 구조가 있음
- .com
- example.com
- www.exampl.com
- api.example.com
- 도메인 레지스트라( registrar )
- 도메인 이름을 등록하는 곳
- ex ) Amazon Route 53, GoDaddy ...
- DNS Records
- ex ) A, AAA, CNAME, NS ...
- Zone File
- 호스트 이름과 IP 또는 주소를 일치시키는 방법
- Name Server
- DNS 쿼리를 실제로 해결하는 서버 ( Authoritative or Non-Authoritative )
- Top Level Domain ( TLD )
- .com, .us, .in, .gov, .ort ......
- Second Level Domain ( SLD )
- amazon.com, google.com, naver.com .......

How DNS Works

Route 53
- 고가용성, 확장성을 갖춘 Fully Managed 와 권환이 있는 DNS
- 권한 = DNS 레코드를 직접 업데이트 할 수 있다는 뜻

- 위 과정을 통해 Route 53도 도메인 이름 레지스타로 도메인 이름을 example.com으로 등록
- Route 53의 리소스 관련 상태 확인 가능
- 100% SLA 가용성을 제공하는 유일한 AWS 서비스
Route 53 - Records
- Each record contains
- Domain/subdomain Name - example.com ...
- Record Type - A or AAA ...
- Value - 123.456.789.123 ...
- Routing Policy - how Route 53 responds to queries
- TTL - DNS Resovers에서 레코드가 캐싱 되는 시간
Route 53 supoorts the following DNS record types
- ( must know ) A / AAAA / CNAME / NS
- ( advanced ) CAA / DS / MX / NAPTR / PTR / SOA / TXT / SPF / SRV
Route 53 - Record Types
- A
- AAAA
- CNAME
- 호스트 이름을 다른 호스트 이름과 매핑
- 호스트 이름은 A나 AAAA 레코드가 될 수 있음
- Route 53에서 DNS 이름 공간 or Zone Apex의 상위 노드에 대한 CNAME 를 생성할 수 없음
- ex) example.com에 CNAME을 만들 수 없음
- 하지만 www.example.com에 대한 CNAME 만들 수 있음
- NS
- Name Servers for the Hosted Zone
- 서버의 DNS Name or IP 주소로 호스팅 존에 대한 DNS 쿼리에 응답 가능
- 또한 트래픽이 도메인으로 라우팅 되는 방식을 제어함
Route 53 - Hosted Zone
- 레코드의 컨테이너
- 도메인과 서브도메인으로 가는 트래픽의 라우팅 방식 정의
- Public Hosted Zones
- 퍼블릭 도메인 이름을 살 때마다 mypublicdomain.com이 도메인 이름이면 퍼블릭 호스팅 존을 만들 수 있음
- 퍼블릭 존은 쿼리에 도메인 이름 application1.mypublicdomainname.의 IP가 무엇인지 알 수 있음
- Private Hosted Zones
- 공개되지 않는 도메인 이름 지원
- 가상 프라이빗 클라우드 ( VPC )만이 URL을 resolve 가능
- 비공개 URL이기 때문에 프라이빗 DNS 레코드가 있음
- 퍼블릭 프라이빗 호스팅 존은 유료임, 즉 Route 53은 유료
Public VS private Hosted Zones

Route 53 실습
- 유료... 강의 시청으로 대체!!
- 원하는 도메인 선택 후 옵션 선택하면 된다!
Route 53 - Records TTL ( Time To Live )

CNAME vs Alias
- CNAME
- 호스트 이름이 다른 호스트 이름으료 향하도록 할 수 있음
- ex ) app.mydomain.com 이 blabla.anything.com으로 향하게 하는 식
- ELB 도메인 이름도 가능
- 루트 도메인 이름이 아닌 경우에만 가능, mydomain.com은 안됨, 앞에 app과 같은 subdomain이 붙어야함
- Alias
- Route 53에 한정되지만 호스트 이름이 특정 AWS 리소스로 향하도록 할 수 있음
- ex ) app.mydomain.com이 blabla.amazonaws.com을 향할 수 있는 것
- 루트 및 비루트 도메인 모두에 작동함, mydomain.com 같은 도메인도 가능하다는 의미
- 무료, 자체적으로 상태 확인 가능

- AWS 리소스에만 매핑 되어 있음
- Zone Apex라는 DNS 네임스페이스의 상위 노드로 사용될 수 있음
- example.com에도 별칭 레코드를 쓸 수 있다는 것
- A or AAAA 타입, 즉 리소스는 IPv4 or IPv6
- TTL 설정 불가능
Route 53 - Alias Records Targets
- ELB
- CloudFront Distributions
- API Gateway
- Elastic Beanstalk environments
- S3 Websites
- VPC Interface Endpoints
- Global Accelerator accelerator
- Route 53 record in the same hosted zone
- EC2 DNS 이름은 별칭 레코드의 대상이 될 수 없음