Network

Application Layer - DNS

와이제인 2018. 3. 30. 00:32

DNS



 DNS : domain name system




 Domain Name System:


Distributed database implemented in hierarchy of many name servers - 한 서버에서 다 관리를 못하기 때문에 책임을 분산시킨다.


Application-layer protocol : hosts, name servers communicate to resolve names(address/name translation)

가장 중요한 기능은, 이름에 대응되는 IP 주소를 알아내는 것이다.



 DNS services


Hostname to IP address translation


Host aliasing - canonical, alias names


Mail server aliasing - 메일 서버 도메인이 사용하는 실제 서버 뭔지?


Load distribution - 하나의 이름에 여러개의 IP주소로 분산시키는 기능. 특정 컴퓨터에 서비스가 몰리지 않도록.



 Why not centralize DNS?


Single point of failure

Traffic volume

Distant centralized database

Maintenance






 

 Top-level damain (TLD) servers :


Responsible for com, org, ent, edu, aero, jobs, museums, and all top-level country domains, e.g.: uk, fr, ca, jp

Network Solutions maintains servers for .com TLD





 Authoritative DNS servers:


organization's own DNS servers, providing authoritative hostname to IP mappings for organization's named hosts.

can be maintained by organization or service provider.

정보에 권위를 가진 서버이다. 실제 사용자가 원하는 권위가 있는 정보를 가지고 있는 서버.





Local DNS name server (default name server)


내 컴퓨터를 대신해서 root나 TLD나 Authoritaitive server에게 물어봐서 내가 원하는 IP 주소를 획득 하는 helper 기능. 스스로 cache를 가지고 있다. 조사하여 도와주는 기능.





 Caching, updating records


Once (any) name server learns mapping, it caches mapping - 우리는 늘 비슷한 서버를 간다. TLD까지 캐싱을 한다. 


Cache entries timeout (disappear) after some time (TTL) - 바뀌면, 유효기간이 있어 지나면 삭제된다.


TLD servers typically cached in local name servers - Thus root name servers not often visited