Cloud Service/AWS

AWS의 DNS 서비스, Route 53

Cloud Applicaiton Architect 2022. 2. 2. 20:03
반응형

DNS 그리고 Route 53이란?

인터넷 통신을 위해 사용하고 있는 IP는 0~255까지 4 옥텟으로 구성되어 있기 때문에 재 사용을 위해 기억하기 힘들다. 이를 해결하기 위해 숫자로 이루어진 IP를 기억하기 쉬운 이름(e.g. google.com)으로 매핑하여 사용할 수 있게 하는 서비스를 개발했는데 이것이 바로 DNS(Domain Name Service) 서비스이다. 

AWS의 Route 53은 AWS에서 제공해주는 완전 관리형 DNS 서비스이다.

 

 

DNS 서버의 기능별 분류

DNS를 통해 서비스를 수행할 경우 DNS 서버가 필요하며 DNS 서버는 DNS Resolver, Root Name Server, TLD Name Server, Authoritative Name Server와 같이 4가지 유형으로 분류된다.

분류 기능
DNS Resolver(해석기) 클라이언트 컴퓨터와 네임 서버(Root Name Server 및 TLD Name Server) 사이의 중계기 역할 수행. DNS 요청에 대해 네임 서버로 전달
Root Name Server DNS 서버 최상위 네임 서버. DNS 요청에 대해 적절한 TLD 네임 서버로 전달하는 역할
TLD Name Server
(Top Level Domain Name Server)
.com, .net 등과 같은 최상의 도메인에 대한 네임 서버 역할 수행. 나머지 요청에 대해 Authoritative Name Server로 전달하는 역할
Authoritative Name Server
(권한있는 네임 서버)
TLD에서 전달받은 요청에 대해 마지막으로 IP를 확인하는 단계

 

 

DNS레코드

DNS 레코드란 DNS에 받은 요청을 어떻게 처리할 것인지에 대한 정보라고 생각하면 된다.

이러한 DNS에는 다음과 같은 종류가 있다.

  1. A
    IP주소와 도메인 주소를 매핑할 때 사용하는 레코드로써 하나의 도메인에 여러 개의 IP 주소를 등록할 수 있다.
    예를 들어 naver.com의 A레코드를 조회했을때(dig naver.com +short) 223.130.200.107, 223.130.200.104, 223.130.195.95, 223.130.195.200 4개의 IP가 맵핑되어 있는 것을 확인할 수 있다.
  2. AAAA
    IPv6용 IP주소 맵핑 레코드
  3. CNAME
    도메인 별명 레코드라고 부르며 흔히 Alias라고 한다. 예를 들어 sharplee7.tistory.com이라는 도메인이 있고 이 도메인의 CNAME으로 euideok.tistory.com을 지정했다면 euideok.tistory.com으로 접근했을때 sharplee7.tistory.com으로 접속할 수 있다.
  4. MX
    해당 도메인과 연동되어 있는 메일서버를 사용하고자 할때 사용하는 레코드이다. 예를 들어 naver.com의 경우 당연히 연동되어 있는 메일 서버가 있을 것이고 이 메일서버는 10:mx1.naver.com, 10:mx2.naver.com, 10:mx3.naver.com이 될것이다.
  5. NS
    도메인 네임 서버 식별레코드로써 도메인에 대한 네임서버 권한을 가지고 있는지 알려주는 역할을 한다.
  6. SOA
    도메인 영역을 표시하는 레코드로 도메인의 정보를 알수 있다. 마스터 네임서버, 존 관리자 연락처, 존 데이터 동기화 시간, 갱신 주기, 만료등의 정보를 알수 있다.
  7. TXT
    텍스트를 입력할 수 있는 레코드이다. 주로 메모를 남긴다.
  8. CAA
    도메인 인증기관에 관련된 레코드이다.

다음과 같이 nslookup을 통해 DNS 레코드에 대한 정보를 확인할 수 있다. 
nslookup [-query=레코드타입] [도메인명]

nslookup -query=MX naver.com

nslookup -query=A naver.com

 

 

Route53의 DNS 이름 해석 과정

 

  1. 사용자가 웹 브라우저에 www.example.com 입력
  2. www.example.com에 대한 1차 요청 처리는 인터넷 사업자(ISP:Internet Service Provider) 혹은 회사 네트워크의 DNS Resolver에 전달
  3. DNS Resolver는 www.example.com에 대한 요청을 DNS Root Name 서버로 전달
  4. DNS Resolver는 다음으로 www.example.com에 대한 요청 중 .com 도메인에 대한 처리를 위해 TLD 이름 서버 중 하나로 전달한다. .com 도메인의 이름 서버는 example.com 도메인과 연결된 4개의 Route 53 이름 서버 이름으로 요청에 응답
  5. DNS Resolver는 4개의 Route 53 이름 서버를 캐시(저장)합니다. 다음에 누군가가 example.com을 탐색할 때 확인자는 example.com에 대한 이름 서버가 이미 있으므로 3단계와 4단계를 건너뛴다. 이름 서버는 일반적으로 이틀 동안 캐시된다.
  6. DNS Resolver는 Route 53 이름 서버를 선택하고 www.example.com에 대한 요청을 해당 이름 서버로 전달한다.
  7. Route 53 이름 서버는 www.example.com 레코드에 대한 example.com 호스팅 영역을 찾고 웹 서버의 IP 주소 192.0.2.44와 같은 연결된 값을 가져오고 IP 주소를 DNS 해석기에 반환한다.
  8. DNS Resolver는 마지막으로 사용자가 필요로 하는 IP 주소를 갖게 된다. DNS Resolver는 해당 값을 웹 브라우저에 반환한다.
    DNS 해석기는 또한 사용자가 지정한 시간 동안 example.com의 IP 주소를 캐시하므로 다음에 누군가가 example.com을 탐색할 때 더 빠르게 응답할 수 있다.

 

 

Route 53을 이용해 DNS를 등록하고 관리하기 위해서는 년간 비용이 발생한다. (내 경우 sharplee7.com을 등록했고 년간 $12의 비용이 발생했다)

서비스> Route 53> 도메인 등록> [등록하길 원하는 도메인 명칭]

아래와 같이 원하는 도메인 명을 입력하고 가능여부를 확인하고 각 원하는 비용을 확인해 보도록 한다.

모두 등록되면 비용이 청구되며 모두 결재되면 아래와 같이 등록한 도메인 명이 등록중인 상태로 표시된다.(실제 등록까지는 시간이 필요하다)

 

 

Route 53에 대한 정보는 여기까지 알아 보도록 한다.

 

이번 포스팅은 여기가지 끝~

반응형