Just do IT
article thumbnail

DNS의 이해

   * 애플리케이션 계층

   * DNS 개요

   * DNS 동작 과정

 

애플리케이션 계층

   * 역할

      - TCP/IP 모델에서 최상위 계층으로 사용자와 가장 가까운 소프트웨어

      - 여러 프로토콜 개체들의 서비스에 대한 사용자 인터페이스 제공

      - HTTP, DNS, SMTP, SSH, BGP, DHCP 등이 이 범주에 속한다

DNS 개요

   * DNS(Domain Name Service)

      - 호스트(도메인) 이름을 IP 주소로 변환 - Port 53

      - 웹 사이트 접속 또는 이메일 전송 시 *.google.com 등의 도메인 이름으로 접속

      - 사람이 좀 더 기억하기 쉬운 문자 형태의 도메인 개발 - 컴퓨터 IP로 통신 - 변환 필요

      - 스탠포드 연구소에서 hosts.txt(Host:IP) 파일 관리로 시작 - DNS 표준으로 개발

 

   * 계층적 구조

 

 

   * 쿼리 과정

      - Recusive Query : Local DNS 서버가 재귀적으로 여러 서버에게 질의 하여 응답을 받음

      - Iterative Query : Local DNS 서버가 반복적으로 질의

      - 4 tuple : {Name, Value, Type, TTL}

      - Type

      - A : 호스트, IP - www.fastcampus.co.kr, A, 1.1.1.1

      - NS : 네임서버 - fastcampus.co.kr, NS, ns.fastcampus.co.kr

      - CNAME : 별칭 - ftp.fastcampus.co.kr, CNAME, fastcampus.co.kr

      - MX : 메일서버 - mail.fastcampus.co.kr, MX, 2.2.2.2

 

   * DNS 메시지 - 쿼리와 응답으로 구분된다

      - Query : 2개, Header + Question

      - Response : 5개, Header + Question + Answer + Authority + Additional

      - Identifier : 쿼리와 응답 구분

      - Questions : 질의

      - Authorities : 책임 Resource Records

      - Flag : DNS 쿼리의 속성

      - Answers : 응답 Resource Records

      - Additional : 추가 Resource Records

 

   * Hosts.txt : 호스트 이름과 IP 주소가 맵핑되어 저장된 파일

      - Local DNS로 쿼리 전에 우선 참조하는 파일

  

   * DNS 캐시 테이블

      - 기존에 응답 받은 DNS 정보를 일정시간 (TTL) 저장하고 동일한 질의 시 응답

 

DNS 동작 과정

   * PC -> 웹 사이트 접속 (www.daum.net)

   1. PC 네트워크 환경 확인 - Primary DNS 8.8.8.8로 설정

   2. hosts.txt 파일 참조 - 해당 도메인(www.daum.net)이 설정된 경우 맵핑된 IP로 응답

   3. dns cache table 참조 - 해당 도메인(www.daum.net)이 저장된 경우 저장된 IP로 응답

   4. hosts.txt & cache table에 없으므로 Local DNS(8.8.8.8)에게 쿼리

   5. Local DNS(8.8.8.8)에서 응답

 

 정리

   * 애플리케이션 계층은 TCP/IP 모델에서 최상위 계층으로 사용자와 가장 가까운 인터페이스를 제공

   * DNS(Domain Name Service)는 도메인 주소를 IP 주소로 변환해주는 서비스이며 계층적 구조

   * Recusive Query는 Local DNS 서버가 재귀적으로 여러 서버에게 질의하여 응답을 받는 과정

   * DNS 서버의 정보 타입으로  4가지 A, NS, CNAME, MX가 있다

   * DNS 메시지는 쿼리와 응답으로 구분되며 쿼리 전에 hosts.txt & DNS 캐시 테이블을 참조

 

출처 : 제로베이스

'공부 Note > 네트워크' 카테고리의 다른 글

Chapter 07 애플리케이션 서비스 (3)  (0) 2022.02.24
Chapter 07 애플리케이션 서비스 (2)  (0) 2022.02.24
Chapter 06 TCP와 NAT (4)  (0) 2022.02.24
Chapter 06 TCP와 NAT (3)  (0) 2022.02.24
Chapter 06 TCP와 NAT (2)  (0) 2022.02.24
profile

Just do IT

@AmyG

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!