일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 싸피
- 플로이드 워셜
- 세마포어와 뮤텍스의 차이
- 호스팅
- 클라우드 서버
- 세마포어와 뮤텍스
- 프록시서버
- 다익스트라
- 싸피 합격
- 프록시
- 삼성 청년 SW 아카데미
- 동기화
- 웹 호스팅
- 플로이드 와샬
- floyd-warshall
- 최단 경로
- 싸피 면접 후기
- 세마포어란?
- 뮤텍스란?
- Proxy Server
- 서버 호스팅
- Dijkstra Algorithm
- 뮤텍스
- 세마포어
- 호스팅이란?
- Proxy
- SSAFY
- Synchronization
- 다익스트라 알고리즘
- Today
- Total
어제의 나보다 성장한 오늘의 나
DNS 동작 원리 본문
DNS(Domain Name System)란?
- www.example.com과 같이 사람이 읽을 수 있는 이름을 192.0.2.1과 같은 IP 주소로 변환하여 컴퓨터가 서로 통신할 수 있도록 하는 시스템이다. 그 반대의 역할도 수행한다.
- 인터넷의 DNS 시스템은 이름과 숫자 간의 매핑을 관리하여 마치 전화번호부와 같은 기능을 한다.
- DNS 서버는 사용자가 도메인 이름을 브라우저에 입력하면 ex) www.naver.com, 사용자를 어떤 서버에 연결할 것인지 제어한다. 이러한 요청을 쿼리라고 한다.
DNS의 작동 원리
1. 웹 브라우저에 www.naver.com을 을 입력하면 먼저 Local DNS에게 "www.naver.com"이라는 "hostname"에 대한 IP 주소를 질의하여 IP 주소가 있을 수도 없을 수도 있다. 만약 있다면 Local DNS 가 바로 PC에 IP 주소를 주고 끝난다. Local DNS에 없으면 다른 DNS name 서버 정보를 받는다.
2. Root DNS 서버에 "www.naver.com" 질의
Root DNS (루트 네임서버)는 인터넷의 도메인 네임 시스템의 루트 존이다. 루트 존의 레코드의 요청에 직접 응답하고 적절한 최상위 도메인에 대해 권한이 있는 네임 서버 목록을 반환함으로써 다른 요청에 응답한다. 전 세계에 961개의 루트 DNS가 운영되고 있다.
3. Root DNS 서버로부터 "com 도메인"을 관리하는 TLD (Top-Level Domain) 이름 서버 정보 전달 받음
(여기서 TLD는 .com을 관리하는 서버를 칭함)
4. TLD에 "www.naver.com" 질의
5. TLD에서 "name.com" 관리하는 DNS 정보 전달
6. "naver.com" 도메인을 관리하는 DNS 서버에 "www.naver.com" 호스트네임에 대한 IP 주소 질의
7. Local DNS 서버에게 "www.naver.com"에 대한 IP 주소는 222.122.195.6 응답
8. Local DNS는 www.naver.com에 대한 IP 주소를 캐싱을 하고 IP 주소 정보 전달
DNS 서비스 유형
1. 신뢰할 수 있는 DNS
- 개발자가 퍼블릭 DNS 이름을 관리하는 데 사용하는 업데이트 메커니즘을 제공한다.
- 이를 통해 DNS 쿼리에 응답하여 도메인 이름을 IP 주소로 변환한다.
- 신뢰할 수 있는 DNS는 도메인에 대해 최종 권한이 있다.
- 재귀적 DNS 서버에 IP 주소 정보가 담긴 답을 제공할 책임이 있다.
2. 재귀적 DNS
- 보통 클라이언트는 신뢰할 수 있는 DNS 서비스에 직접 쿼리를 수행하지 않는다.
- 해석기 또는 재귀적 DNS 서비스라고 알려진 다른 유형의 DNS 서비스에 연결하는 경우가 일반적이다.
- 재귀적 DNS 서비스는 호텔 컨시어지와 같은 역할이다.
- DNS 레코드를 소유하고 있지 않지만 사용자를 대신해서 DNS 정보를 가져올 수 있는 중간자 역할이다.
- 일정 기간 동안 캐시된 또는 저장된 DNS 레퍼런스를 가지고 있는 경우, 소스 또는 IP 정보를 제공하여 DNS 쿼리에 답을 한다.
- 해당 정보를 찾기 쿼리를 하나 이상의 신뢰할 수 있는 DNS 서버에 전달한다.
출처
'CS > 네트워크' 카테고리의 다른 글
쿠키 & 세션 (Cookie & Session) (0) | 2021.04.04 |
---|---|
프록시 서버(proxy server)란? (0) | 2021.04.01 |
호스팅이란 무엇인가? (0) | 2021.04.01 |
[브라우저 동작원리] 브라우저는 어떻게 동작하는가? (0) | 2021.04.01 |
인터넷은 어떻게 작동 될까? (0) | 2021.03.31 |