티스토리 뷰

CS/Network

DNS

bool-flower 2022. 8. 25. 16:34

도메인명과 DNS 서비스


도메인명(Domain name)

  • 인터넷 호스트에 부여되는 문자형의 유일한 이름 - 주소
  • 계층적 도메인 관리 구조에 의해 도메인명의 유일성 유지
  • 도메인 관리자가 상위 도메인 관리에게 등록한 후 사용

계층적 도메인 구조

도메인명 특징

  • 사용자 편리성
  • 사용자 소속성

DNS 서비스 유형

Hostname to IP Address (호스트명-IP 주소 변환 서비스)

  • 사용자의 문자형의 호스트명을 TCP/IP가 사용하는 32비트 IP주소로변환

Host aliasing (호스트 별칭 서비스)

  • 사용자의 호스트 별칭(alias)을 복잡한 정규 호스트명(canonical hostname)으로 변환

Mail server aliasing(메일 서버 별칭 서비스)

  • 사용자의 메일서버 별칭을 복잡한 정규 호스트명으로 변환

Load distribution (부하 분산 서비스)

  • 동일 서버명(도메인명)으로 서로 다른 IP주소의 다중 복제 서버 배치
  • 동일 서버명에 대한 DNS 요청에 대해 다른 IP 주소를 돌아가며 응답

DNS 구조


중앙 집중형 구조

  • 하나의 서버가 모든 DNS 질의 처리

문제점

  • A single point of failure - 중앙 서버 고장 시 전체 네트워크 고장
  • Traffic volume - 중앙 서버에 부하 집중
  • Distant centralized databse - 원거리 중앙 서버의 응답 지연시간 증가
  • maintenance - 중앙 서버 유지 보수 어려움

분산 계층 구조 (Distributed & Hierarchical Architecture)

루트 서버

  • 중간서버(TLD 서버)에 대한 IP 주소 제공
  • 전세계에 수백개의 복제 서버 존재
  • 13개의 관리 기관에 의해 관리
  • 지역(local) DNS 서버에 의해 처음 접속

TLD 서버

  • 최상위 도메인(Top Level Domain)에 대한 DNS 서비스 담당
  • 일반적으로 책임(authoritative) DNS 서버의 IP 주소 제공
  • .kr 도메인은 KRNIC(한국인터넷정보센터)에서 관리

책임 DNS 서버

  • 특정 호스트의 도메인명 정보를 유지하고 있는 서버
  • 규모가 큰 기관은 대부분 자신의 호스트들에 대한 책임 DNS 서버 유지
  • 소규모 기관은 외부의 책임 DNS 서버 위탁

지역 DNS 서버

  • DNS 서비스를 요청하는 클라이언트 호스트가 소속된 DNS 서버
  • 소속된 호스트들의 DNS 요청 대행

DNS 서비스 제공 방식


반복적 질의(Iterative queries)

재귀적 질의(recurcive queries)

DNS 캐싱(caching)

  • 특정 서버가 다른 서버에게 질의를 하고 응답을 받으면 이 정보를 클라이언트 방향으로 전달하기 전에 자신의 캐쉬 메모리에 저장
  • 해당 서버가 동일한 도메인명에 대한 질의를 수신하면 다른 서버에게 질의 메시지를 전달하는 대신 캐쉬 메모리 정보를 응답

문제점 및 해결 방법

  • 특정 도메인명에 관한 정보가 해당 서버에 캐싱된 후 책임 서버에서 갱신되었다면 캐시 메모리는 잘못된 정보를 가지게 됨
  • 캐싱정보는 일정 시간(TTL-Time To Live)이 지나면 자동 삭제하는 방법으로 해결

DNS 레코드와 메시지


자원 레코드(RR, Resource Record)

DNS 서버에 정보가 저장되고 서비스되는 단위

형식

  • (name, value, type, TTL)

유형(type)

  • A : name = 호스트명, value = IP 주소
  • NS : name = 도메인, value = 책임 DNS서버의 호스트명
  • CNAME : name = 별칭 호스트 명, value = 정규 호스트명
  • MX : name = 별칭 메일서버명, value = 정규 메일서버명

TTL(Time To Live)

  • 해당 자원 레코드가 개싱될 때 캐시 메모리에 유지되는 시간

 

메시지 포맷

DNS 도메인 정보 등록 절차


등록자 (도메인 관리자)

  • 도메인명(naver.com)과 책임 DNS 서버(1차-dns1.naver.com, 2차-dns2.naver.com)의 IP 주소를 등록기관에 제출
  • 웹 서버명과 IP 주소의 A 유형 RR을 책임 DNS 서버에 저장

도메인명 등록기관(registrar)

  • 등록 대상 도메인명의 유일성을 검증
  • 도메인을 담당하는 책임 DNS 서버에 대한 NS 유형 RR과 A 유형 RR을 상위 DNS 서버(예, TLD 서버)에 등록
  • (naver.com dns1.naver.com, NS)
  • (dns1.naver.com 212.212.212.1, A)

'CS > Network' 카테고리의 다른 글

IP 주소 - 구조와 할당  (0) 2022.08.26
인터넷 프로토콜(IP)  (0) 2022.08.26
HTTP 쿠키, 캐시  (0) 2022.08.25
HTTP 상태코드  (0) 2022.07.15
HTTP 원리와 지속 비지속 연결  (6) 2022.07.07
댓글
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday