DNS (도메인 이름 시스템)

앙두·2023년 1월 20일
0

for My Programming

목록 보기
4/20

👩🏻‍💻 DNS란?

도메인 이름 시스템 (DNS) 은
사람이 읽을 수 있는 도메인 이름(www.amazon.com)을
머신이 읽을 수 있는 IP 주소(192.0.2.44)로 변환해준다.

도메인 이름을 사용했을 때, 입력한 도메인을 실제 네트워크 상에서 사용하는
IP 주소로 바꾸고 해당 IP 주소로 접속하는 과정이 필요하다.
이러한 과정, 전체 시스템이 DNS다.

상위 기관에서,
인증된 기관에게 도메인을 생성하거나
IP 주소로 변경할 수 있는 권한을 부여한다.
DNS는 ‘계층 구조’를 가지는 분산 데이터베이스 구조를 가지고 있다.

👩🏻‍💻 DNS 구성 요소

1. 도메인 네임 스페이스
2. 네임 서버 = 권한 있는 DNS
3. 리졸버 = 권한 없는 DNS

  • “이 도메인 이름은 이 IP 주소이다” 라는 텍스트를 저장하는 데이터베이스가 필요
  • 분산된 데이터가 어디 저장돼 있는지 찾을 프로그램이 필요, 해당 IP 주소로 이동할 프로그램이 필요(브라우저)
  • 도메인 네임 스페이스라는 규칙(방법)으로 도메인 이름 저장을 분산한다.
  • 네임 서버가 해당 도메인 이름의 IP 주소를 찾는다.
  • 리졸버가 DNS 클라이언트 요청을 네임 서버로 전달하고 찾은 정보를 클라이언트에게 제공하는 기능을 수행

1. 도메인 네임 스페이스

DNS는 전세계적인 거대한 분산 시스템
DNS가 저장 관리하는 계층적 구조를 의미
도메인 네임 스페이스의 트리 구조는 최상위 레벨부터 순차적으로 계층적 소속 관계를 나타낸다.

FQDN 전체 도메인 이름 (Fully Qualified Domain Name)
: 도메인의 전체 이름을 표기하는 방식

  • 도메인 이름 : naver.com
  • 호스트 이름 : www
  • FQDN : www.naver.com

2. 네임 서버

도메인 이름을 실제 컴퓨터가 통신할 때 사용하는 IP 주소로 변환시키기 위해서는
도메인 네임 스페이스의 트리 구조에 대한 정보가 필요한데
이러한 정보를 가지고 있는 서버가 네임 서버

데이터베이스 역할(저장 및 관리), 찾아주는 역할, 요청 처리 응답 구현

전 세계에 13개의 Root DNS 서버가 구축돼있음
( DNS 서버를 복사하여 같은 기능을 담당하는 미러서버도 있음 )

구조순서 >
1. Root DNS 서버
2. Top-Level Domain(TLD) DNS 서버
3. Second-Level Domain(SLD) DNS 서버 (Authoritative DNS 서버)
4. 권한 없는 DNS 서버 (리졸버 서버, 리컬시브 서버, 리커서)

3. 리졸버

웹 브라우저와 같은 DNS 클라이언트의 요청을 네임 서버로 전달하고
네임 서버로부터 정보(도메인 이름과 IP 주소)를 받아 클라이언트에게 제공
하는 기능을 수행

리졸버는 하나의 네임 서버에게 DNS 요청을 전달하고
해당 서버에 정보가 없으면 다른 네임 서버에게 요청을 보내 정보를 받아온다.

수많은 네임서버에 접근하여 사용자로부터 요청 받은 도메인의 IP 정보를 조회하는 기능 수행

👩🏻‍💻 DNS 구조 및 과정

profile
쓸모있는 기술자

0개의 댓글