DNS (Domain Name System)

미노·2025년 6월 12일

Computer Network

목록 보기
9/23
  • Domain(google.com, naver.com) ↔ Server IP를 mapping 하는 시스템

DNS services

  • hostname을 IP address로 변환시켜줌 (www.naver.com → IP address)

DNS: a distributed, hierarchical database

  1. Root
  2. Top Level Domain :
    1. .com, .org, .net, co.kr, edu,
    2. country domains: .cn, .kr, .jp, etc
  3. Authoritative : 실제로 접속하는 주소

⇒ 이러한 Domain들은 각국의 DB를 통해 엄격하게 관리됨.


Local DNS name server

  • client는 DNS query를 root DNS에 묻지 않고 자신의 ISP에 있는 Local DNS name server에 질의를 함
  • 일종의 proxy server

DNS name resolution: iterated query

  • Local DNS server가 각각의 DNS server(Root DNS, TLD (Top Level Domain) server, local DNS server)에 직접 요청함
  • iterated query

DNS name resolution: recursive query

  • Local DNS server가 Root DNS server에 질의 → Root DNS server는 그에 해당하는 TLD server에 질의 → TLD server는 해당 Local DNS server에 질의 → 해당하는 도메인을 찾으면 왔던 경로로 되돌아감
  • Recursive query
  • root DNS에 과도한 인풋이 들어옴

Caching, Updating DNS Records

  • 요청한 도메인이 방문하지 않았다면 응답 후 cache에 저장
  • 저장 후 TTL (Time to live)동안 방문하지 않았다면 삭제

DNS records

  • DNS는 사용자의 습성 (RR, Resource Records)를 저장하는 분산 데이터베이스
RR format : (name, value, type, ttl)
  • Type=A
    • name : hostname
    • value : IP address
  • Type=NS
    • name : domain (naver.com)
    • value : hostname
  • Type=CNAME
    • name : canonical name (서버에서 관리하는 풀네임)
    • www.ibm.com → servereast.backup2.ibm.com
    • value : canonical name
  • Type=MX
    • value : name of mail server

DNS Protocol Messages


DNS Security

  1. DDos
    • root server, TLD server에 과도한 traffic 발생
    • Distributed
  2. Redirect Attack
    • MITM (Man In The Middle) : 응답하는 쿼리를 가로채서 수정
    • 수정된 사이트에서 사용자의 개인정보 탈취

P2P Architecture

  • server없이 통신하기 때문에 delay가 적음
  • 보안에 매우 취약함

File distribution time, Client-Server vs P2P

  • Client-Server는 Client의 수, N이 증가할수록 선형으로 증가함

0개의 댓글