y-seo
y-seo의 딩코 기록들
y-seo
  • 분류 전체보기 (174)
    • Computer Science (49)
      • Database Design & Query Lan.. (10)
      • Network Security (16)
      • Software Engineering (6)
      • Computer Network (17)
    • Spring (50)
      • Spring-Basic (11)
      • SpringBoot-AWS (7)
      • SpringBoot&JPA (22)
      • 토비의 스프링 (3)
      • + α (7)
    • Cloud (22)
      • AWS (4)
      • GCP (1)
      • ElasticSearch (17)
    • Test (3)
    • Project (4)
    • Algorithm (24)
      • 개념 (9)
      • 문제풀이 (15)
    • AI (3)
      • About (2)
      • AIDU ez (1)
    • Error (4)
    • ETC (1)
    • Review (8)
    • IT (5)
      • SQLD (4)
      • ADsP (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

최근 글

최근 댓글

전체 방문자
오늘
어제

태그

  • 스프링부트
  • 인프런
  • 자바
  • Spring
  • 백준
  • 스프링
  • algorithm
  • baekjoon
  • Python
  • 알고리즘
  • 보안
  • 네트워크보안
  • 파이썬
  • 김영한
  • java
  • 컴퓨터 네트워킹 하향식 접근
  • 네트워크
  • 알기 쉬운 정보보호개론 3판
  • JPA
  • springboot

티스토리

hELLO · Designed By 정상우.
y-seo

y-seo의 딩코 기록들

[CS][컴퓨터 네트워킹 하향식 접근] Chapter2.4 The Domain Name System
Computer Science/Computer Network

[CS][컴퓨터 네트워킹 하향식 접근] Chapter2.4 The Domain Name System

2023. 11. 2. 21:07

 

 
 

Cahpter02. Application Layer

 

 
 

DNS : Domain Name Server

  • 많은 DNS server들의 계층 구조로 구현된 분산된 DB
  • application layer protocol : host가 통신하여 이름을 확인
  • DNS service 목록
    • hostname ↔ IP 주소 변환
    • host aliasing(별칭) : canonical(실제이름) 따로 존재
    • mail server aliasing
    • load distribution : 서버가 많을 때 골고루 서버 이름 부여, 중복 웹 서버의 경우 여러 IP 주소가 하나의 정식 호스트 이름과 연관 → DNS가 이 IP 주소 집합을 가짐
  • centralize가 아닌 이유
    • single point of failure이 있을 수 있어서 → 서버가 1대이면 다운되었을 때 서비스 불가
    • traffic volume → 서버가 1대이면 traffic 과다
    • distant centralized database → 서버가 1대이면 멀리서 오는 것은 delay 大
    • maintenance → 서버가 1대이면 관리 어려움
    • 위 이유들로 centralize는 확장성 부족

 

 
 

DNS : root name server

  • 마지막으로 물어보려고 하는 server
  • Internet function에서 엄청나게 중요하다
    • DNSSEC : 보안 제공 (인증과 데이터 무결성)
  • ICANN : root DNS domain을 관리하는 곳
  • 13개의 logical root name server들이 있다

 

 
 

TLD : authoritative servers

  • Top-Level Domain servers
    • educause는 .edu TLD에 대한 TLD 서버 담당
    • .cm .net TLD에 대한 authoritative registry
  • registry : 각각의 TLD를 관리하는 기관
  • registrar : 도메인 등록대행업체
  • Authoritative DNS servers
    • 이곳에서 정보를 얻는다
    • 호스트 이름을 IP 주소로 매핑하는 공개적인 DNS record를 제공하는 기관

 

 
 

Local DNS name servers

  • 가장 먼저 물어봐야 할 곳
  • 서버들의 계층 구조에 엄격하게 속하지는 않지만 DNS 구조의 중심에 있다
  • 각각의 ISP들이 하나씩 가지고 있다
  • host가 DNS query를 만들면 query는 local DNS server로 보내진다
    • 있으면 → 최근 name-to-address 변환 쌍의 local cache를 가진다 (최신이 아닐 수도)
    • 없으면 → proxy 역할을 수행하고 query를 계층 구조로 전달한다

 

 
 

DNS name solution : iterated query

  • DNS 동작 방법 중 하나
  • "잘 모르겠는데 000 한테 가면 돼~~~" 느낌

 

 
 

DNS name resolution : recursive query

  • DNS 동작방법 중 하나
  • "내가 물어보고 올게 ㄱㄷㄱㄷ~~~"의 느낌
  • contacted server가 알아서 해줌

 

 
 

Caching, Updating DNS Records

  • name server가 mapping을 학습하면 cache가 매핑된다
  • TTL만큼 cache를 가진다 이후 사라짐
  • root name server는 보호 되어야 해서 TTL server로 간다
  • cache는 예전 값일 수도 있다
    • name host가 IP 주소를 변경하는 경우 모든 TTL이 만료될 때까지 Internet-wide에서 알 수 없다
  • RFC 2136 : 내용이 바뀌면 notify하자 하는 것 → 내 cache값이 update 된다

 

 
 

DNS records

  • DNS : resource record들을 저장하는 분산 DB
  • resource record = RR
  • RR format : (name, value, type, ttl) → 4개의 field로 구성
  • type = A
    • name이 hostname이 된다
    • value가 IP address가 된다
    • versiont 4를 나타낸다
  • type = CNAME
    • name이 alias name이 된다
    • value가 canonical name이 된다
  • type = NS
    • NS = name server
    • name이 도메인이 된다
    • value가 이 도메인의 authoritative name server의 hostname이 된다
  • type = MX
    • name이 도메인이 된다
    • value가 name과 연관된 mailserver의 이름이 된다
  • domain : sookmyung.ac.kr
  • hostname : www.

 

 
 

DNS protocol messages

  • DNS query와 reply msg는 같은 format을 가진다

 

 
 

DNS security

  • DDos attacks
    • 다량의 패킷을 각 DNS root server로 보내어 정상적인 기능을 불가능하게 하는 공격
  • Redirect attacks
    • main-in-middle : DNS query 중간에서 채가기, 가장 알아채기 어렵다
    • DNS poisoning : 가로채고 다른 정보를 준다
  • 방지를 위해 DNSSEC 을 사용한다
  • Local name server가 root name server에 먼저 접속하게 되면 노출되기 쉬워진다. 따라서 대부분의 정보를 cache로 local name server가 가진다. 그러나 TLD가 위험해진다.
저작자표시 (새창열림)

'Computer Science > Computer Network' 카테고리의 다른 글

[CS][컴퓨터 네트워킹 하향식 접근] Chapter2.6 video streaming and content distribution networks  (0) 2023.11.02
[CS][컴퓨터 네트워킹 하향식 접근] Chapter2.5 P2P applications  (0) 2023.11.02
[CS][컴퓨터 네트워킹 하향식 접근] Chapter2.3 Email, SMTP, IMAP  (0) 2023.11.02
[CS][컴퓨터 네트워킹 하향식 접근] Chapter2.2 Web and HTTP  (1) 2023.11.02
[CS][컴퓨터 네트워킹 하향식 접근] Chapter2.1 Principles of network application  (0) 2023.11.01
    'Computer Science/Computer Network' 카테고리의 다른 글
    • [CS][컴퓨터 네트워킹 하향식 접근] Chapter2.6 video streaming and content distribution networks
    • [CS][컴퓨터 네트워킹 하향식 접근] Chapter2.5 P2P applications
    • [CS][컴퓨터 네트워킹 하향식 접근] Chapter2.3 Email, SMTP, IMAP
    • [CS][컴퓨터 네트워킹 하향식 접근] Chapter2.2 Web and HTTP
    y-seo
    y-seo

    티스토리툴바