혼자 정리
[네트워크이론] 2.4 DNS 본문
(Computer Networking a top-down Approach 7th 내용입니다)
Domain Name System
- distributed database implemented in hierarchy of many name servers
- 애플리케이션 계층 프로토콜 : 호스트, DNS 서버들이 name을 resolve하기 위해 통신
- 애플리케이션 계층 프로토콜로 구현된 코어 인터넷 기능
- 네트워크 가장자리의 complexity
DNS services
- hostname-to-IP-address translation
- host aliasing
- canonical names(정식 네임), alias names
- mail server aliasing
- load distribution
분산, 계층 구조
- Root / Top Level Domain(TLD) / Authoritative
- ex)
- 클라이언트가 www.amazon.com 의 IP 주소를 알고 싶다면..
- Root 서버에 .com DNS 서버를 쿼리
- .com DNS 서버에 amazon.com DNS 서버를 쿼리
- amazon.com DNS 서버에 www.amazon.com IP 주소를 쿼리
Root 네임 서버
- 클라이언트가 www.amazon.com 의 IP 주소를 알고 싶다면..
- official, contact-of-last-resort by name servers that can not resolve name
TLD 서버
- .com, .org, .net, .edu, .aero, .jobs, .museums 와 모든 top-level 국가 도메인(ex. .cn, .uk, .fr, .ca, .jp)를 담당
Authoritative DNS 서버
- 책임 하의 hostname을 IP로 맵핑하는 정보를 제공하는 서버
- 기관 또는 서비스 프로바이더에 의해 유지됨
Local DNS name servers
- 호스트가 DNS 쿼리를 날리면 local DNS 서버로 보내짐
- Local DNS 서버는 :
- 캐시에 있는 정보를 찾아서 응답하거나
- resolution을 위해 DNS 계층에 request를 날린다
- 각 ISP는 local DNS name 서버를 갖는다.
- 관련 커맨드 :
- MacOS :
scutil --dns
- Windows:
ipconfig /all
- MacOS :
- 관련 커맨드 :
- Local DNS 서버는 :
- Local DNS 서버는 계층에 엄격하게 속하지 않는다
DNS name resolution
Iterative query
- 접촉한 서버가 다음 접촉할 서버 정보를 알려줌
- "내가 모르니 얘네한테 물어봐"
- ex) 'local -> root' & 'local -> TLD' & 'local -> authoritative DNS server'
Recursive query
- 접촉한 네임 서버에서 name resoltuion의 짐을 지게 하는 것
- 상위 계층에 heavy load
- ex) 'local -> root -> TLD -> authoritative'
Caching DNS Information
- DNS 서버는 알게 된 네임 정보는 캐시
- TTL 후에 만료
- TLD 서버는 보통 로컬 네임 서버에 캐시됨
- named host가 IP 주소를 변경한다면 모든 TTL이 만료되기 전까지는 인터넷 전체에 알려지지 않을 수 있다.
DNS records
- DNS는 Resource Records(RR)을 저장한 분산 데이터베이스
- RR format :
(name, value, type, ttl)
type=A
name
은 hostnamevalue
는 IP 주소type=NS
name
은 도메인 (ex. foo.com)value
는 해당 도메인의 authoritative 네임 서버 hostnametype=CNAME
name
은 어떤 "canonical(정식)" name에 대한 alias- ex)
www.ibm.com
은 실제로는servereast.backup2.ibm.com
- ex)
value
는 canonical nametype=MX
value
는name
과 연관된 SMTP 메일 서버의 네임
DNS 프로토콜 메시지
- DNS 프로토콜 메시지는 query 메시지와 reply 메시지가 있고, 둘의 포맷은 동일
'네트워크' 카테고리의 다른 글
[네트워크이론] 2.6 비디오 스트리밍과 컨텐츠 분배 네트워크 (0) | 2024.01.02 |
---|---|
[네트워크이론] 2.5 P2P 파일 분배 (1) | 2024.01.01 |
[네트워크이론] 2.3 인터넷 전자메일 (0) | 2023.12.29 |
[네트워크이론] 2.2 웹과 HTTP (0) | 2023.12.29 |
[네트워크이론] 2.1 네트워크 애플리케이션 원리 (1) | 2023.12.24 |