개발소설

DNS 본문

CS/네트워크

DNS

ChaeHing 2023. 3. 27. 16:50

Domain name

  • 숫자인 IP주소를 기억하기 쉽게 문자열인 이름을 붙여 사용하는것
  • IP주소는 숫자이기 때문에 기억하기 어려울수 있어 이름을 붙여 기억하기 쉽게 사용할 수 있다.
    •  네이버를 접속하려할때 네이버 서버의 ip주소를 입력해서 접속하는것 보다는 naver.com이라는 이름을 입력하고 들어가는 것이 훨씬 기억하기 쉽고 편리하다.
  • 터미널에서 nslookup을 통해 해당 도메인네임에 IP주소를 확인 할 수 있다.

  • 해당 IP주소를 브라우저 검색창에 입력하면 네이버로 접속되는걸 확인 할 수 있다.

 

도메인의 관리 체계

  • 도메인 주소는 오른쪽부터 왼쪽으로 최상위 도메인과 여러 개의 도메인으로 구성
  • 탑 레벨 도메인은 .com과 .kr .net등 도메인의 가장 오른쪽에 위치하는 도메인
    • co, ac와 같은 2단계 도메인과 같이 사용되기도 한다.
  • 서브 도메인은 일반적으로 'www, m'과 같이 제일 왼쪽에 위치한 도메인들

Domain Name Sever(zone)

  • 도메인을 관리하는 도메인 서버(존)
  • 대표적으로 모든 도메인을 관리하는 root 네임 서버, TLD를 관리하는 네임서버, 권한 있는 네임 서버로 구성
  • 도메인 이름 서버는 하나의 서버로 구성 되지 않는다., 최소 두개 이상의 서버가 하나의 도메인 네임을 담당
  • root DNS 서버는 각 최상위 도메인 네임 서버들의 주소를 알고 있으며 최상위 도메인 네임 서버는 권한 있는 네임 서버의 주소를 알고 있다.
  • 권한있는 네임서버는 'example.com' 등의 도메인 ip주소 및 도메인 정보를 관리하는 권한을 가진 서버 입니다.

 

도메인 질의 과정

  • 브라우저에서 www.naver.com을 입력하면
  • 브라우저는 리졸버에게 www.naver.com의 IP 주소를 요청
  • 리졸버는 우선 기존에 찾아본 도메인 정보가 내용이 담긴 캐시 파일을 살펴 본다.
    • 캐시 파일내 해당되는 도메인이 있으면 즉시 IP주소 리턴
  • DNS 리졸버는 IP 주소를 얻기 위해 네임 서버들에게 재귀적인 쿼리를 진행
  • 루트, 탑레벨, 권한 있는 도메인 서버에 차례대로 쿼리를 진행하여 IP 주소를 알아냄
    • root DNS -> .com 서버 주소 반환 ( 최상위 도메인 네임서버 주소 반환)
    • TLD DNS -> 권한있는 네임서버  주소 반환 ( 권한 있는 네임서버 주소 반환)
    • 권한있는 네임서버 - > naver.com의 IP 주소 반환
    • 리졸버는 쿼리수를 줄일 목적으로 기록되지 않은 도메인 네임 서버들의 주소를 저장하기도함
  • 마리졸버는 전달 받은 도메인네임에 IP 주소를 기록하고 브라우저의 전달

 

Zone File

  • 도메인 네임 서버는 응답을 보내기 위해 한개 이상의 존 파일을 가지고 있다.
  • 존 파일은 name, class, ttl, 레코드타입, 레코드 데이터로 이루어져 있따.
  • 네임서버는 질의요청시 존파일을 바탕으로 해당 레코드를 반환
  • 리졸버는 이 레코드를 확인하고 IP를 확인하거나 다음 질의를 할 서버의 주소를 확인
이름 도메인 네임
레코드 클래스 네트워크 타입
TTL (Time To Live) 클라이언트(리졸버)가 데이터를 저장할 시간
레코드 타입 반환될 데이터 타입
레코드 데이터 반횐되는 데이터

레코드 데이터 타입

  • A, AAAA - IPv4, IPv6 
  • CNAME - 도메인 주소
  • NS - 권한있는 DNS 주소
  • SOA - 도메인 네임 서버중 주 서버의 정보들에 대한 데이터

 

 

** 

리눅스 -> /etc/hosts에 도메인네임을 지정해놓을 수 있다.

윈도우 -> 윈도우가설치된드라이브\Windows\System32\drivers\etc\hosts

-----------------------------------------223.130.200.107 naver.com------------------------------------------

 

브라우저 쿠키에 있을수 있다.

'CS > 네트워크' 카테고리의 다른 글

네트워크 기초  (0) 2023.03.27
Comments