728x90
반응형
DNS(Domain Name System)
- DNS란 도메인 주소를 IP 주소로 변환하는 시스템
- 웹사이트 링크에 접속했을 때 우리는 도메인 주소를 사용한다. (ip주소 대신)
- 도메인 주소를 실제 네트워크에서 사용하는 ip주소로 바꾸고 해당 ip주소로 접속하는 과정이 필요
- 이러한 과정을 DNS(도메인 네임 시스템) 이라고 한다.
- 이러한 시스템은 전세계적으로 약속된 규칙을 사용한다. 상위 기관에서 인증된 기관에게 도메인을 생성하거나 ip주소를
변경할 수 있는 권한을 부여한다.
DNS의 구성요소
1. 도메인 네임 스페이스 (Domain name Space)
2. 네임 서버 (Name Server) _ 권한있는 DNS 서버
3. 리졸버 (Resolver) _ 권한없는 DNS 서버
- '해당 도메인은 해당 ip주소이다' 라는 텍스트를 저장하기 위해 DB가 필요하다.
- 분산된 데이터가 어디 저장되어 있는지, 해당 ip주소로 이동할 브라우저가 필요하다.
- DNS 라는 규칙으로 도메인 이름저장을 분산
- NS 가 해당 도메인 이름의 ip주소를 찾는다.
- 리졸버가 DNS요청을 NS로 전달하고 정보를 클라이언트에게 제공한다.
그렇다면 왜 역할이 나뉘고 분산시키는걸까??
- 도메인을 ip주소로 바꿔줄 서버가 한대만 존재하는것이 아니다.
- 여러서버를 돌릴경우 해당 정보를 모든서버에서 공유해야 한다.
- 이러한 이유로 도메인을 계층적으로 구분하고 정보를 분산하는 구조를 선택
- 도메인에 닷(. dot) 이 있는 이유 -> dot 이 계층을 나타낸다.
동작방식
DNS의 동작방식은 다음과 같이 설명할 수 있다.
"www.hello.kr" 의 ip주소를 알려줘 -> 서버에 요청
".kr" 이라는 도메인 확인해줘 -> 최상위 기관에서 관리하는 네임서버에 요청
".kr" 은 한국 국가 도메인입니다. ".kr" 네임서버를 확인해 -> 네임서버의 응답
"hello.kr" 있어? -> .kr 네임서버에 요청
가비아로 가 -> kr 네임서버의 응답
"hello.kr" 있어? -> 가비아 네임서버에 요청
123.123.123 으로 가 -> 가비아 네임서버의 응답
- DNS는 전세계적인 거대한 분산 시스템
- 도메인 네임 스페이스는 DNS가 저장 관리하는 계층적 구조를 의미
- 도메인 네임 스페이스는 최상위에 DNS 루트 서버가 존재하고 하위로 연결된 모든 노드가 연속해서 이어진 계층구조로 되어있다.
출처