DNS (Domain Name System) & Route 53
- DNS는 사람이 읽을 수 있는 도메인 이름 (www.naver.com)을 컴퓨터가 읽을 수 있는 IP주소 (192.0.2.44)로 변환하는 시스템
- Route 53은 AWS에서 제공하는 DNS 서비스
- Route 53의 기능은!?
- 퍼블릭 도메인 구매 또는 이전 (.com, .net, .co.kr)
- AWS 내부 VPC에서만 사용할 수 있는 프라이빗 도메인 생성
- 라우팅 정책 적용 (단순 라우팅, 가중치기반, 지리적위치, 지연시간, 장애조치, 다중값 응답)
Domain Level이란?
이렇게 도메인은 각 부위별로 이름이 있다.
DNS Resolution 동작하는 구조
- 유저가 앤드포인트로 웹에 접속한다. (www.example.com)
- www.라는 DNS 이름을 적으면 DNS resolver가 IP주소로 변경해준다. 즉, 이 주소에 대한 요청이 인터넷 서비스 제공업체 (ISP)가 관리하는 DNS 해석기 (DNS Resolver)로 라우팅
- ISP의 DNS 해석기는 www.example.com에 대한 요청을 DNS Root Name Server에 전달한다.
- Root Level Domain 부분 .을 해석하고 그 앞에 문자인 .com(Top Level Domain)서버로 보낸다.
- ISP의 DNS 해석기는 www.example.com에 대한 요청을 이번에는 .com 도메인의 TLD Name Server에 다시 전달한다. .com(TLD) 도메인의 네임 서버는 그 앞의 문자인 example.com 도메인과 관련된 Amazon Route 53 네임 서버의 이름을 사용하여 요청에 응답한다.
- Top Level Domain 부분 .com을 해석하고 그 앞의 문자인 example (Second Level Domain)서버로 보낸다.
- ISP의 DNS 해석기는 www.example.com에 대한 요청을 Amazon Route 53의 해당 네임 서버에 전달
- Amazon Route 53 Name Server는 example.com 호스팅 영역에서 www.example.com 레코드를 찾아 웹 서버의 IP 주소 192.0.2.44 등 연관된 값을 받고 이 IP 주소를 DNS 해석기로 반환
- ISP의 DNS 해석기가 그동안 위의 DNS인 www.example.com의 IP주소를 웹 브라우저로 반환한다. 또한 DNS 해석기는 다음에 누군가가 example.com을 탐색할 때 좀 더 빠르게 응답할 수 있도록 사용자가 지정하는 일정기간 동안 example.com의 IP 주소를 캐싱(저장), TTL반환
- 웹 브라우저는 DNS 해석기로부터 얻은 IP 주소로 www.example.com에 대한 요청을 웹서버로 전송
- 192.0.2.44에 있는 웹 서버 또는 그 밖의 리소스는 www.example.com의 웹 페이지를 웹 브라우저로 반환하고 웹 브라우저는 이 페이지를 표시
이런식으로 DNS Resolution이 동작한다.
7.에서 Route 53이 반환할때 TTL을 사용하는데 자세히 알아보자
Route 53 - TTL이란?
- DNS Recursive Resolver (ISP 업체가 운영하는 DNS 재귀적 리졸버)가 이 레코드에 관한 정보를 캐싱할 시간(초)
- TTL 시간은 임의적으로 정할 수 있다.
- Resolver가 DNS를 요청하면 Route 53에서 IP를 반환하면서 TTL를 함께 반환한다.
- Resolver는 이 값을 가지고 있다가 TTL 시간 (300초) 지난 후에 다시 DNS를 재요청한다.
- 즉 이 내용이 살아있는 시간을 300초로 생각하면 된다. (TTL)
- 그리고 다시 응답은 TTL에 써 있는 것처럼 300초뒤에 오고 한다.
DNS 레코드 유형
- DNS 레코드를 통해 트래픽을 도메인에 라우팅하는 방식을 Domain Name System(DNS)에 알려줌
- A - 도메인 네임을 IPv4 주소로 라우팅 (www.google.com를 입력해서 접속시 192.100.10.1 로 접속)
- AAAA - 도메인 네임을 IPv6 주소로 라우팅
- CNAME - 도메인 네임을 도메인 네임으로 라우팅 (site.google.com으로 접속시 blog.google.com로 접속)
- ALIAS - 도메인 네임을 AWS 리소스로 라우팅 (www.google.com => AWS EC2)
- MX(Mail eXchanger) - 이메일 서버연동시 메일의 소유를 확인하기 위한 레코드
- NS(Name Server) - DNS 레코드를 가진 DNS 서버를 식별하기 위한 레코드
- SOA(Start Of Augthority) - 도메인의 정보와 권한을 가진 레코드
NS와 SOA의 경우 DNS 처음 만들때 기본적으로 할당된다.
실습
- Route 53 서비스에 접속한다.
- 도메인을 만들어주거나 설정해야한다.
- 왼쪽의 [도메인]을 통해 [도메인 등록]을 진행한다.
겹치지 않는 Public Domain을 적어주고 사용가능한지 여부 확인후 선택한다.
이렇게 가격을 주고 구매해서 도메인을 생성할 수 있다.
이렇게 도메인을 생성했으면
이부분에 도메인이 생길 것이다.
생긴 부분을 클릭해서 들어가면 유형 NS인 부분에 오른쪽 주소들이 보이는데 이 주소들이 Route 53의 도메인 주소들이다.
SOA의 유형은 도메인 정보 및 권한을 가진 서버다. 소유권 및 기타설정 정보를 가지고 있다.
위에서 말햇듯이 NS 및 SOA는 기본적으로 자동적으로 생성된다.
추후 레코드를 추가하여 트래픽을 라우터시킬 수 있다.
'Cloud Infra Architecture (AWS) > AWS SAA-C03' 카테고리의 다른 글
AWS Route 53 Latency & Geo Location Routing Policy (0) | 2023.01.13 |
---|---|
AWS Route 53 Simple Routing Policy & Weighted Routing Policy (0) | 2023.01.13 |
AWS Systems Manager (SSM)란? (0) | 2023.01.13 |
AWS CloudTrail & Config란? (0) | 2023.01.13 |
AWS Amazon EventBridge란? (0) | 2023.01.13 |