DNS : Domain Name System

hostname 를 ip 주소로 해석

centralize DNS 사용하지 않는 이유

1) 트래픽 집중

2) 먼 거리에 위치한 국가의 데이터베이스 접근 불리

3) 유지보수

4) 에러를 대비한 클러스터링 없음

 

DNS 서버의 위계구조 (hierarchial database)

- Root DNS Servers

- Top-level Domain Servers (TLD)

  : .com, .org, .edu, .net 및 .jp .kr 등의 국가 도메인을 담당 eg) 한국인터넷정보센터가 .kr 을 담당하는 TLD

- Authoritative DNS Servers

  : 각 기관이 가지고 있는 DNS 서버

  : 기관내 connected 된 모든 hostname, IP 매핑정보를 가지고 있음

- Local DNS name Server

  : 위계구조에 포함되진 않음, 매핑정보를 caching 하며 proxy server로도 불림

 

1) client는 root dns server에 com DNS server 질의

2) client는 get amazon.com DNS 서버를 알아내기 위해 .com DNS server에 질의

3) client는 www.amazon.com IP 주소를 알아내기 위해 amazon.com DNS server에 질의

 

 

DNS root name servers 는 세계 총 13군데 위치

우리나라는 가장 가까운 일본 DNS 사용

 

 

DNS 위계 구조 호출 순서

root > TLD > authoritative 순서로 호출

local DNS server에 캐싱하여 상위 레벨 DNS 서버의 부하방지

Local DNS Server 의 Outdated Domain name 정보의 확인을 위해 TTL(Time-To-Live) 레코드 사용

유효기간(TTL) 이 지난 경우 캐시 삭제됨

 

 

DNS records

name, value, type, ttl

 

레코드 타입별 name/value

A (Host) : name(호스트 서버네임) value(IPv4) eg)authoritative DNS 

AAAA : name(호스트 서버네임) value(IPv6) 

NS (Name Server) : name(도메인네임) value(authoritative 서버네임) eg) TLD DNS

CNAME : name(alias) value(canonical name)

 

 

DNS query 순서

1) 

클라이언트(브라우저)에서 /etc/resolv.conf 에 지정되어있는 로컬 NS 서버 (네임서버) 로 www.yahoo.com 에 대한 요청

2)

네임서버는 root DNS 서버 IP 주소를 기록한 hint 파일을 가지고 있으며 이를 참조하여 root DNS 서버에 www.yahoo.com 에 대한 요청 전달.

root DNS 서버는 TDL(최상위네임서버)들의 글루레코드를 가지고 있으며 이를 참조하여 .com 네임서버를 참조하라고 응답.

글루레코드(glue record)란 네임서버명(NS 레코드)과 IP주소(A 레코드)을 의미

3)

.com 네임서버 즉, TDL 서버는 .com 을 TDL (최상위도메인) 로 사용하는 도메인들의 글루레코드를 가지고 있으며 이를 참조하여 www.yahoo.com 의 네임서버를 참조하라고 응답

(authoritative DNS server의 글루레코드(NS + A) 응답)

4) 

yahoo.com의 네임서버는 yahoo.com 도메인에 대한 존(zone)파일을 참조하여 www.yahoo.com의 의 IP주소를 네임서버(로컬 NS)로 돌려준다.

(authoritative DNS server 는 IP주소(A 레코드) 를 클라이언트가 최초 요청을 한 네임 서버(로컬 NS)로 응답)

5) 

최초 요청을 했던 네임 서버(로컬 NS)는 클라이언트에게 IP 주소를 전송

 

 

※ 한양대학교 이석복 교수님의 컴퓨터네트워크 강의 내용 정리

※ https://webdir.tistory.com/161

반응형

+ Recent posts