All Articles

컴퓨터 네트워크 강의 - 15장. DNS (2) DNS 데이터베이스

학습 목표

  • 계층 구조의 네임스페이스, 도메인, 존 개념 이해
  • 도메인 정보를 관리하기 위한 자원 레코드 종류 이해

도메인 네임스페이스

  • DNS가 저장, 관리하는 계층적 데이터베이스
  • 최상위에 루트가 존재하고, 그 아래로 모든 호스트가 트리 구조로 이어짐
  • 레이블

    • 이름 (최대 63바이트)
  • 도메인 이름

    • 점(.)으로 구분한 레이블의 연속
  • 루트 호스트

    • 크기가 0인 Null 레이블을 가짐
  • 일반적으로는 붙이지 않지만, 공식 표기(fully qualified domain name)할 때 마지막에 점(.)을 붙여야 함

    • 예) www.abc.co.kr.₩
    • .이 없는 경우 호스트 default domain이 붙게 됨
    • www.abc.co.kr로 표기하는 경우 시스템에서는 www.abc.co.kr.abc.co.kr.로 해석

도메인

도메인 네임스페이스

  • 계층적 구조
  • 같은 레벨에서는 레이블이 유일해야 함
  • 도메인 이름

    • 최하위 레이블을 트리 왼쪽에 두고 상위로 이동하면서 레이블 표기
    • xx.lcs.mit.edu
  • TLD (Top Level Domain, 최상위 도메인)

    • 루트 바로 밑에 위치한 레이블
    • mil, edu, arpa
  • 도메인

    • edu 도메인, mit.edu 도메인

최상위 도메인

  • RFC 1591 TLD

    • .com: 상업적 용도
    • .edu: 교육기관 용도
    • .net: 네트워크 서비스 제공자와 관련된 시스템
    • .org: 기관
    • .int: 국제적 목적
    • .gov: 미국 연방 정부 관련 기관
    • .mil: 미국 국방성 관련 기관
  • 추가: .arts, .firm, .info, .nom, .rcc, .store, .web 등
  • 국가 코드 활용: .kr, .tv, .se

도메인 이름

도메인 이름과 레이블

  • 하위 레이블부터 시작
  • 레이블 이름을 점(.)으로 연결

데이터베이스 서비스

도메인 이름과 레이블

  • 인터넷 도메인 네임스페이스를 계층 구조로 분할
  • 하나의 개념적 저장장소를 갖지만, 실제로는 각 하부 도메인을 관리하는 호스트에 이름, 주소 관리 권한 위임
  • 권한을 위임 받은 도메인 관리 서버는 자신의 도메인에 포함된 모든 레이블(호스트 또는 하부 도메인)에 관한 정보를 적절하게 유지해야 함
  • 다른 도메인에 속한 호스트 정보는 해당 도메인을 관리하는 네임 서버로부터 얻어냄

    • 한번 가져온 정보는 캐싱해놨다가 다음에 이용
  • 존(zone)

    • 임의의 네임서버가 관리하는 영역
    • 한 층이 될 수도, 두 층이 될 수도 있음
    • 도메인과 유사하지만 다름 존과 서브존

자원 레코드

존과 서브존

  • 이름과 주소 정보 등을 저장하기 위한 레코드
  • 트리에 연결된 각 호스트 정보는 자원 레코드와 관계됨
  • DNS 네임 서버가 해석기에 반환하는 데이터가 자원 레코드 정보
  • 질의 레코드

    • DNS 클라이언트가 DNS 서버에 정보를 요청하는 용도
    • 요청한 정보에 더해 서버에서 자원 레코드 형태로 응답
  • 각 필드 의미

    • Name: 찾고자하는 가변 길이 도메인 이름
    • Type: 자원 종류
    • Class: 프로토콜 패밀리(인터넷: IN)
    • TTL: 캐시 정보 유효기간
    • RD length: RD(Resource Data, 자원 데이터) 크기
    • RD: 자원 데이터

Type 종류

  • A(Address): 호스트 IP 주소(도메인 이름과 IP 주소 변환)
  • NS(Name Server): 도메인을 관장하는 인증된 네임 서버
  • CNAME(Canonical Name): 호스트 별명
  • SOA(Start of Authority): 존의 시작을 표시
  • WKS(Well-Known Services): 호스트가 제공하는 네트워크 서비스
  • PTR(Pointer): IP 주소를 도메인 이름으로 변환
  • HINFO(Host Information): 호스트 정보
  • MX(Mail eXchange): 메일 교환(특정 메일 주소로 전송된 메일을 다른 주소로 재전송(redirect))
  • 기타: SIG(Security Signature), NXT(Next Domain), AAAA(IPv6 주소), TXT(text) 등