본문 바로가기
카테고리 없음

[Application Layer] DNS record, protocol

by 바코94 2020. 5. 31.

resource record foramt (RR format)

(name, value, type, ttl)

 

type 4가지

A: (hostname, ip address, A)

NS : (domain, hostname of authoritative name server, NS)

example( ssu.ac.kr, dns.ssu.ac.kr, NS) - 숭실대학교 도메인에서 이름 바꿔주는 dns server이 dns.ssu.ac.kr

 

CNAME: (alias name, canonical name)

example( www.naver.com, backup1.naver.com, CNAME)

부하 분산을 위해 naver.com에 대해 여러 개의 서버를 두는데 그 중에 하나의 물리 서버의 이름을 주는 것이다. 

naver.com backup1.naver.com
naver.com backup2.naver.com
naver.com backup3.naver.com
naver.com backup4.naver.com
naver.com backup5.naver.com
naver.com backup6.naver.com
naver.com backup7.naver.com

 

MX: (mailserver name) 

 

DNS protocol

query and reply message 둘다 동일한 포맷을 사용한다.

 

message syntax는 고정된 비트 수로 되어 있다. 

 

이러한 메세지를 이용해서 쿼리를 날리고 응답을 받는 형식이다.

 

DNS는 UDP를 사용한다. 따라서, 연결없이 UDP에 메세지를 실어서 보낸다. UDP가 재전송을 안해주기 떄문에 DNS에서 담당한다.

 

TLD에 Authoritive dns server 어떻게 연결해둘까?

authoritive dns server에 대한 NS타입과 A타입 RR을 TLD에 등록해야한다.

(naver.com, dns1.naver.com, NS)

(dns1.naver.com , 212.212.212.1, A)   

 

이렇게 해두어야 TLD에서 네이버 도메인의 authoritive dns server로 안내할 수 있다.

숭실대의 경우에는 ssu.ac.kr 안에 authoritive dns server인 dns.ssu.ac.kr이 있을 것이다.

(ssu.ac.kr, dns.ssu.ac.kr, NS)

(dns.ssu.ac.kr, 123.123.123.1, A)

 

따라서 infocom.ssu.ac.kr 을 다른 클라이언트가 요청하게 되면 root에서 kr ip를 얻고 kr에서 ac.kr의 ip를 얻게 된다.

ac.kr TLD에 등록되어있는 data를 기반으로 dns.ac.kr의 ip를 얻게 되면 dns.ssu.ac.kr에 요청하여 info.ssu.ac.kr의 ip를 얻을 수 있다.

 

어떤 서비스를 쓰던지 DNS를 사용하기 때문에 DNS architecture을 이해하는 것이 중요하다.