들어가기 전에
도메인을 사서 서비스를 배포할 때 한번쯤 사용해본 경험이 있을 것이다. 기본적인 Route53 Service에 대해서 접근하기 전에 기본적인 지식을 쌓고 가는 것이 어떨까...!
01. DNS(Domain Name System)
1.1 DNS 개요
주소를 통해서 목적지 대상을 지정할 수 있으며, 출발지 대상을 알릴 수가 있는데 가장 보편적으로 사용하는 주소 체계는 IP 주소 체계이다.
하지만 이런 IP주소로 소통을 하기에는 정말 많은 문제가 있을 것이다.
이러한 문제를 해결하기 위해 나온 방법이 DNS(Domain Name System) 이다.
DNS는 복잡한 주소 체계를 문자 형태의 도메인 네임으로 매핑하여 연결하는 서비스이다.
1.2 DNS 서버 분류
DNS를 통해 서비스를 수행할 경우 DNS 서버가 필요하다고 한다. 이 DNS 서버가 무엇인지 먼저 살펴보자
AWS Document에 의하면 DNS 서버는 아래와 같다
DNS 서버는 이름을 IP주소로 변환하여 도메인 이름을 웹 브라우저에 입력할 때 최종 사용자를 어떤 서버에 연결할 것인지를 제어합니다.
이 요청을 쿼리라고 부릅니다.
DNS 서버는 4가지 유형으로 분류된다.
사실 유형으로 역할이 달라지는 느낌보다는 많은 도메인과 IP 주소를 관리하기 위하여 계층화를 했다고 생각하면 좀 더 편하다.
계층화를 통해서 성질에 맞게 DNS 서버가 분리되어 관리되고 있다.
- DNS 해석기(DNS Resolver)
클라이언트와 네임 서버의 중계자 역할을 한다. DNS 요청에 대해 네임 서버로 전달하며, DNS 응답을 클라이언트에 전달한다. - 루트 네임 서버(Root Name Server)
DNS 서버의 최상위 네임 서버로 DNS 해석부터 발생한 DNS 요청에 대한 적절한 TLD 네임 서버 정보를 반환합니다. - TLD 네임 서버(Top Level Domain Name Server)
.com, .net과 같은 최상위 도메인에 대한 네임 서버로 해당 영역에 포함되는 모든 도메인 이름의 정보를 유지합니다.
DNS 요청에 대해 TLD 네임서버에 권한 있는 네임 서버를 지정하여 반환합니다. - 권한 있는 네임 서버(Authoritative Name Server)
DNS 해석기가 TLD 네임 서버로부터 응답을 받으면, 확인자는 해당 응답을 권한 있는 네임서버로 보냅니다.
일반적으로 권한 있는 네임서버는 요청하는 도메인 주소에 대한 IP 주소를 확인하는 마지막 단계
사실 이렇게만 보면 각각의 DNS 서버가 어떤 것인지 이해가 안되서.. 조금 더 살펴 보자면!
DNS 해석기(DNS Resolver)
기지국 DNS 서버(Local DNS Server) 라고 하는 것 같다..!
URL에 Domain Name을 입력했을 때 해당 IP를 찾기 위해 가장 먼저 찾는 DNS 서버.
기본적으로 컴퓨터의 LAN선을 통해 인터넷이 연결되면, IP를 할당해주는 통신사(KT, SK, LG 등)에 해당하는 각 통신사의 DNS 서버가 등록이 되고 이 DNS 서버에 우리가 찾는 도메인의 IP주소를 찾아달라고 요청을 보내는 방식이다.
만약에 찾는 도메인 주소가 있다면 DNS해석기에서 해당 IP주소를 주고 없다면 이제 Root Name Server에 요청을 하는 방식이다.
루트 네임 서버
질의 요청이 오면 요청된 도메인의 최상위 레벨 영역(TLD)의 권한을 갖는 네임서버들의 이름, 주소 정보를 제공한다. 결국에 DNS Resolver에 의해 들어온 수 많은 네임질의(query)가 집중되는 곳이고, DNS 캐싱 등에 의해 질의 집중을 경감시킨다고 한다.
딱 13개의 루트 네임 서버가 있다고 하는데 2020년 이후로는 1034개라고 한다...
TLD 네임 서버
도메인 등록기관(Registry)에서 관리하는 네임서버이다.
TLD 말 그대로 최상위 도메인인데 TLD도 여러 기준으로 나누어진다.
- 국가 코드 최상위 도메인(Country Code Top-Level Domain, ccTLD)
.kr, .jp, .US 등등 - 일반 최상위 도메인(Generic Top-Level Domain, gTLD)
.com, .net, .org 등등
권한 있는 네임 서버(Authoritative Name Server)
개인 도메인과 IP 주소의 관계가 관리되는 서버로, 도메인 호스팅 업체, 개인 서버가 여기에 포함된다.
도메인 판매업체(Registrar)가 관리하고 가비아나 AWS Route53 등이 있을 것이다.
1.3 DNS를 통한 서비스 통신 흐름(라우팅)
우리는 2가지에 대한 부분을 이해하고 가야한다.
하나는 www.daum.net 이라는 도메인은 결국 여러 단계를 걸쳐 질의를 하게 된다는 것과 다른 하나는 과정을 거치는 방식이 재귀적으로 순환한다는 것이다.
이를 Recursive Query 라고 한다.
하지만 매번 요청을 Recursive Query 방식으로 하는 것은 매우 불편하기 때문에 DNS Cache를 사용한다.
각 PC에 Cache를 통해서 자주 쓰는 Domain Name 주소를 저장해놓는 방식이다.
1.4 DNS 레코드 유형
- A : IPv4 주소를 매핑
- AAAA : IPv6 주소를 매핑
- CNAME : 도메인 이름의 별칭을 만듬
ex) daum.net 이라는 도메인으로 , www.daum.net, www.api.daum.net 등등 - MX : 이메일 서버 지정
- NS : 도메인 네임 서버 식별
- SOA : 도메인 영역을 표시하는 역할
- SRV : 도메인 서비스 이용 가능 여부 식별
- TXT : 텍스트 매핑
02. Route 53 소개
2.1 Route 53 개요
Route 53은 AWS에서 제공하는 관리형 DNS 서비스이다.
- 도메인 이름 등록
Route 53은 등록대행소가 되어 등록소인 TLD 네임서버에 전파하여 해당 도메인 이름을 사용할 수 있도록 대행한다. - 호스팅 영역 생성
Route 53을 통해 도메인 이름을 등록하면 자동으로 호스팅 영역이 생성되고, 네임 서버가 생성되어 DNs 요청에 대한 DNS 응답을 반환한다. - 레코드 작성
레코드 유형에 따른 값을 입력하여 유지하고, 레코드를 생성할 때 다양한 라우팅 정책을 수립할 수 있다.
2.1 Route 53 개요
DNS 요청에 대한 응답 방식을 설정할 수 있다.
- 단순 라우팅 (Simple Routing)
도메인에 대한 특정 하나의 리소스를 지정하는 방식, 레코드에 대한 값은 여러 개를 입력할 수 있으나, 이 중에 하나의 값만 랜덤하게 응답한다. - 가중치 기반 라우팅 (Weighted Routing)
도메인에 대해 다수의 리소스를 지정하고 값에 대한 비중을 두고 라우팅을 한다. - 지연 시간 기반 라우팅 (Latency Routing)
여러 AWS 리전에 리소스가 있고 최상의 지연 시간을 제공하는 리전으로 라우팅한다. - 장애 조치 라우팅 정책 (Failover Routing)
액티브/패시브 장애 초지를 구성하려는 경우에 사용한다.
주기적인 상태 확인을 통해 액티브 리소스가 통신이 불가능할 경우 패시브 대상을 액티브 대상으로 변경하여 해당 경로로 라우팅한다. - 지리 위치 라우팅 (Geolocation Routing)
DNS 질의를 사용자의 로컬 DNS 서버의 IP 위치를 기반하여 가장 인접한 리전의 리소스 대상으로 라우팅을 한다. - 지리 근첩 라우팅 (Geoproximity Routing)
지리 위치 라우팅과 같은 기법으로, 바이어스(Bias) 라는 값을 조정하여 근접 영역의 영향도를 조정한다.
2.1 Route 53 개요
- 도메인 등록
- 상태 확인 및 모니터링
- DNS 장애조치
사이트가 중단이 되지 않도록 대체 가능한 경로로 자동 라우팅
주기적인 상태 확인 - 라우팅 정책
- Alias (별칭)
도메인 이름에 대한 별칭을 지정할 수 있는 기능
ELB, CloudFront, S3 Bucket 등의 도메인을 매핑할 수 있다. - Route 53 Resolver
- VPC용 프라이빗 DNS
03. 출처
- Root Name Server 루트 네임 서버, 루트 DNS 서버
http://www.ktword.co.kr/test/view/view.php?m_temp1=2642
루트 네임 서버
Root Name Server 루트 네임 서버, 루트 DNS 서버(2021-03-11)
www.ktword.co.kr
- DNS 서버 정의와 종류
https://velog.io/@chun_gil/DNS-%EC%84%9C%EB%B2%84-%EC%A0%95%EC%9D%98%EC%99%80-%EC%A2%85%EB%A5%98
🔌 DNS 서버 정의와 종류
DNS 서버에 대한 정의, DNS 서버 종류, DNS 서버 동작 원리
velog.io
- DNS에 대한 설명(디테일 하게....)
https://hwan-shell.tistory.com/320
DNS에 대한 설명(디테일 하게....)
DNS란 무엇일까요?? Domain Name System의 약자로 인터넷 주소창에 Host Domain Name을 입력했을 때(ex, naver.com, google.com 등..) 해당 문자를 IP주소로 변환해 주는 시스템을 말합니다. 저는 URL창에 Host Domain Name
hwan-shell.tistory.com
- 지원되는 DNS 레코드 유형
https://docs.aws.amazon.com/ko_kr/Route53/latest/DeveloperGuide/ResourceRecordTypes.html
지원되는 DNS 레코드 유형 - Amazon Route 53
DNS 프로토콜을 사용하면 Zone Apex라고 하는 DNS 네임스페이스의 최상위 노드에 대한 CNAME 레코드를 생성할 수 없습니다. 예를 들어, DNS 이름 example.com을 등록하면 zone apex는 example.com입니다. example.com
docs.aws.amazon.com
'AWS' 카테고리의 다른 글
[따라하며 배우는 AWS 네트워크 입문] 05 부하분산- (3) (0) | 2023.02.09 |
---|---|
[따라하며 배우는 AWS 네트워크 입문] 05 부하분산- (1) (0) | 2023.02.07 |
[따라하며 배우는 AWS 네트워크 입문] 02 VPC 기초 - (1) (0) | 2023.01.31 |
[따라하며 배우는 AWS 네트워크 입문] 01 AWS 인프라 (0) | 2023.01.25 |