DNS(Domain Name System)는 Name ↔︎ IP address를 매핑하는 시스템이다.
ex) www.naver.com ↔︎ 192.89.02.11
DNS는 Distributed & hierarchical 구조를 가지고 있다.
구분 | 특징 |
---|---|
Root Server | name resolve가 불가능하다.(최후의 수단) |
TLD(Top Lebel Domain) Server | .com, .net, .kr 같은 Top Level Domain을 담당한다. |
Authoritative Server | 실제 Name ↔︎ IP address가 매핑되어 있는 DNS Server |
Local Server | host의 DNS query를 받고 name resolution을 한 뒤 host에게 전달 |
Name에 대응되는 IP 주소를 찾아라!
Host가 Local에 DNS query 전송
Q: 【 jaewon-ju.velog.com 주소 어디야? 】
Local이 Root에 요청, Root가 Local에 응답
Q: 【 jaewon-ju.velog.com 주소 어디야? 】
A: 【 .com 관리하는 DNS 주소 알려줄게 】
Local이 TLD에 요청, TLD가 Local에 응답
Q: 【 jaewon-ju.velog.com 주소 어디야? 】
A: 【 .velog 관리하는 DNS 주소 알려줄게 】
Local이 Authoritative에 요청, Authoritative가 Local에 응답
Q: 【 jaewon-ju.velog.com 주소 어디야? 】
A: 【 192.05.01.11 】
Local이 Host에 답장
A: 【 192.05.01.11 】
DNS에 대한 더 자세한 정보는 Application Layer 스터디 노트 참고