DNS : DNS 동작과정, Domain Registrar, DNS Records (A(Alias) Record/CNAME 차이)

Danny·2023년 10월 10일
0

백엔드

목록 보기
6/10

DNS


IP 주소 및 기타 데이터를 저장하고 이름별로 쿼리할 수 있게 해주는 계층형 분산 데이터베이스

DNS는 계층형 분산 데이터베이스로 DNS Resolver, DNS Root Server, TLD Name Server, Authoritative Name Server가 있다.

DNS Resolver (DNS Recursor, ISP)


클라이언트와 DNS 네임서버 사이의 중개자 역할을 한다.

⇒ 웹 클라이언트로부터 DNS 쿼리를 받은 후 캐시된 데이터를 응답하거나 요청을 다음 DNS 네임서버로 보낸 후 받은 응답을 웹 클라이언트로 보낸다.

이 과정 중 네임서버에서 받은 정보를 캐시하여 다음 요청시에는 빠르게 응답한다. DNS Cache는 메모리에 저장된다.

대부분의 인터넷 사용자는 ISP(공유기에서 제공하는 DNS Resolver)를 사용한다.

DNS Root Server


ICANN이 직접 관리하는 서버로, 캐시되지 않은 DNS 쿼리 중 TLD를 조회하여 해당 TLD 서버 리스트를 반환한다.

DNS Root Server는 다음과 같이 전 세계에 13대가 존재한다.

https://www.iana.org/domains/root/servers

우리는 13대 중 한 곳에 요청을 보내는 것이고 만약 13대의 Root Server가 DDoS와 같은 공격으로 한 번에 멈춘다면 전 세계 인터넷은 멈추게 된다. 20년전 13대 중 9대를 공격한 사이버 사건이 있었다

TLD Name Server


.net이나 .com과 같이 도메인 이름에서 오른쪽 가장자리 마지막 점 다음에 위치한 것을 말한다.

도메인 확장자라고도 부르며, TLD (Top Level Domain)이라고 한다.

TLD는 웹 사이트의 목적, 소유자 또는 지리적 위치와 같은 웹 사이트의 특정 요소를 인식하는 역할을 한다.

만약 .com TLD 네임서버는 ‘.com’으로 끝나는 모든 웹 사이트의 정보를 갖고 있고, .com TLD 네임서버는 해당 도메인의 Authoritative 네임서버를 가리켜 응답한다.

Authoritative Name Server(example.com)


DNS Resolver가 TLD Name Server로부터 응답을 받고, 해당 응답을 Authoritative ****네임서버로 보낸다.

일반적으로 Authoritative ****네임서버는 IP 주소를 확인하는 마지막 단계이며, IP 주소의 관계가 기록, 저장, 변경되는 서버다.

도메인 / 호스팅 업체의 네임서버를 말하지만, 개인이나 회사 DNS 서버 구축을 한 경우에도 해당된다.

TLD 유형


ICANN은 웹사이트의 목적, 소유자 및 지리적 위치에 따라 최상위 도메인을 여러 범주로 분류한다.

  1. 일반 최상위 도메인(gTLD)
    일반적으로 많이 사용되고 있는 유형의 도메인 확장자.

최상위 도메인의 최대 길이는 63자이지만 대부분 2~3개의 문자로 구성된다.

.com : 상업용 웹 사이트
.org : 조직
.net : 네트워크
.info : 정보 플랫폼
.biz : 비즈니스
2. 스폰서 최상위 도메인(sTLD)
관련된 개별 조직에서 제안하고 감독하는 도메인 확장자.

조직이란 기업, 정부 기관 또는 다른 유형의 그룹이 될 수 있고, 이려한 유형의 도메인을 신청할 시 사전에 정의된 조직의 기본적인 특성을 바탕으로 신청한 최상위 도메인에게 승인을 받아야한다.

.edu : 고등 교육 기관
.gov : 미국 정부 기관
.cat : 스페인 카탈로니아 지역 언어 및 문화 커뮤니티
.museum : 박물관 관련 조직
.travel : 여행 산업 비즈니스
3. 국가 코드 최상위 도메인(ccTLD)
특정 국가 및 지역에 대해 확립된 312개의 국가 코드가 있고 2개의 알파벳으로 구성된 문자열로 식별한다.

.us : 미국
.es : 스페인
.fr : 프랑스
.it : 이탈리아
.kr : 대한민국
4. 인프라 최상위 도메인(ARPA)
특수한 범주의 유형으로 ARPA라는 하나의 TLD만 포함된다.

IANA에서 직접 관리하며 기술 인프라 용도로 사용한다.

  1. 테스트 최상위 도메인(tTLD)
    문서화 목적 및 테스트용으로 사용되며 DNS의 루트 영역에 사용할 수 없다.

.example : 위치 유지
.invalid : 유효하지 않은 도메인 이름
.localhost : 로컬 네트워크에서 사용
.test : 테스트

DNS Record


DNS Record는 Authoritative Name Server에 있는 명령으로, 도메인에 연계된 IP 주소 및 해당 도메인에 대한 요청 처리 방법에 대한 정보를 제공한다.

DNS 구문이라는 텍스트로 구성되며, DNS 서버에게 수행할 작업을 알려주는 명령으로 사용된다.

A 레코드
A는 주소를 나타내며, DNS 레코드의 가장 기본적인 유형이다.

도메인의 IP 주소를 나타내고, 예를 들면 naver.com의 A 레코드는 IP 주소인 223.130.200.107을 반환한다.

A 레코드는 IPv4 주소만 보유하고, IPv6 주소인 경우 AAAA 레코드를 사용한다.

일반적으로 IP 주소 조회, 즉 도메인 이름을 IPv4 주소와 일치 시키는 용도로 사용되며, 사용자가 실제 IP 주소로 입력하지 않아도 웹 브라우저에서 DNS 쿼리를 통해 자동으로 수행한다.

CNAME 레코드
CNAME은 도메인 주소의 별칭이며, A 레코드 대신 사용된다.

CNAME을 사용하지 않고 A 레코드로 사용해도 괜찮지만 만약 IP 주소가 변경되면 모든 A 레코드의 IP 주소를 변경해야되는 불편함이 있다.

따라서 CNAME을 사용하면 A 레코드 하나만 수정하면 된다.

https://aws.amazon.com/ko/route53/what-is-dns/
https://www.cloudflare.com/ko-kr/learning/dns/dns-records/
https://www.cloudflare.com/ko-kr/learning/dns/dns-server-types/
https://ko.wix.com/blog/post/what-is-tld

https://hanamon.kr/dns란-도메인-네임-시스템-개념부터-작동-방식까지/
https://inpa.tistory.com/entry/WEB-🌐-DNS-개념-동작-완벽-이해-★-알기-쉽게-정리
https://velog.io/@chun_gil/DNS-서버-정의와-종류
https://gentlysallim.com/dns란-뭐고-네임서버란-뭔지-개념정리/#
https://zigispace.net/1126

quote by taemin-jang

0개의 댓글