본문 바로가기

카테고리 없음

DNS

DNS(Domain Name System)란?

사람들은 text에 강하고 internet host, router들은 숫자에 강하기 때문에 사람들이 text로 URL을 입력하면 IP 주소로 이어주는 징검다리 역할이다.

 

특징

- UDP기반 (TCP는 시간이 너무 오래걸려서 불필요한 traffic을 줄이기 위해)

- Application-layer protocol

- single DNS 불가 : 확장성 문제가 일어나고 이거 무너지면 전세계가 무너지기 때문에 분산시켜야함.

 

하는 일

▪ 호스트 이름에서 IP 주소로 변환

▪ 호스트 별칭 지정

▪ 메일 서버 별칭 지정

▪ 경로 분산 : 여러 IP 주소가 하나의 이름에 대응 할 수도 있음.

 
 

분산된, 계층 구조

Root DNS Server : 전세계 13군데 위치

Top Level Domain Server (최상위 레벨) : 국가별 (ur, kr, com, org)

Authoritative DNS Server (책임 네임) : 통신회사, 큰 회사

Local DNS Server : 학교, 회사 (계층에 속하진 않지만 학교에서 컴퓨터켜면 학교 local server와 연결되는 것)

 

Root DNS Server - Authoritative DNS Server - Local DNS Server

 

ex) www.amazon.com 찾는 과정

1) client는 root server에 .com DNS 서버를 찾기 위해 질문한다.

2) client는 .com DNS 서버에 amazon.com DNS 서버를 찾기 위해 질문한다.

3) client는 amazon.com DNS 서버에 www.amazon.com의 IP주소를 찾기 위해 질문한다.

 
 

방법

cis.pily.edu에서 gaia.cs.umass.edu 의 IP주소가 필요할 때,

1) 반복적인 쿼리

local 서버와 각 다른 계층의 서버들이 통신하며 원하는 IP주소를 얻는다. = local server 부담

 

2) 재귀적인 쿼리

 

계층을 타고 올라갔다가 내려가며 최종 원하는 IP주소를 얻고 다시 왔던 길을 돌아간다.

 

DNS cahcing

A가 요청보내고 Local DNS server가 어떤 방법이든 한번 IP주소를 알게되면, 저장해뒀다가 B가 같은 주소를 요청할 때 바로 그 IP주소를 준다. ( 그 주소가 살아있는지는 모르니 확인 필요 )

 

 
 

단어정의

확장성 : 트랜잭션이 많아져도 네트워크가 바로바로 처리할 수 있는 능력

호스트 네임 : Network에 연결된 장치(컴퓨터, 파일 서버, 복사기, 케이블 모뎀 등)들에게 부여되는 고유한 이름이다.

도메인 네임 : Host 또는 조직 및 기관을 구별하기 위해 사용되는 이름(계층 구조로 점으로 구별)