728x90
[Network] DNS (Domain Name System)
DNS(Domain Name System) 란?
- 사람이 읽을 수 있는 도메인 이름을 IP 주소로 변환하는 시스템이다.
- IP 주소를 일일이 외울 수 없기 때문에, 쉽게 기억할 수 있는 도메인 주소 체계가 만들어졌다.
DNS Server 구축
- 예전엔 PC끼리 통신을 하기 위해선 Hosts 파일을 주고 받아야했기 때문에 매우 불편했다.
- 리눅스의 root 폴더를 만들듯이 top-down 방식으로 설정하면 겹치지 않는다.
DNS Server에서 root 밑의 최상위 도메인을 Top-Level-Domain (TLD) 이라 일컫는다.
도메인 네임
도메인 네임이란 IP 주소에 매핑되는 텍스트 문자열로, 클라이언트에서 서버에 액세스 하는데 사용된다.
예를 들어 Google의 도메인 이름은 google.com 이다.
도메인 네임의 구성 방법은 다음 사진과 같다.
초기의 TLD 도메인은 7개였지만, 이 후 각 나라마다 도메인을 부여하였다. (Country Code TLD)
- PQDN (부분 주소 도메인 네임)
- 단순한 호스트 네임
- DNS 루트에 대해 모든 레이블을 포함하지 않는다.
- FQDN (절대 도메인 네임)
- 호스트 이름과 도메인 이름을 포함한 전체 도메인 네임
DNS Query
DNS 쿼리 과정은 다음과 같다.
1. one이라는 사용자가 com 도메인을 구매한다
이때 one은 com(TLD) 밑의 second level domain으로 들어간다.
2. 사용자가 one의 사이트가 어딘지 물어본다 -> local dns에 제일 먼저 물어본다.
3. local dns는 최상위 (root)로 간다 -> root는 com(TDL) 서버의 IP를 알려준다
com은 반드시 one 사이트의 IP를 저장해둬야 한다.
4. local dns는 com에게 one 사이트를 질의한다. -> com은 one 사이트의 DNS Server IP를 알려준다.
5. local dns는 one으로 간다 -> 도메인 네임을 알려준다. (www.one.com)
(interactive Query -> Recursive Query)
반응형
'💡 etc > Infra' 카테고리의 다른 글
[etc] VPN (Virtual Private Network) (0) | 2024.02.20 |
---|---|
[etc] 가상환경과 컨테이너 비교 (0) | 2023.08.23 |
[Redis] Ubuntu에 Redis 설치 (0) | 2023.08.11 |
[Network] 네트워크 관련 용어정리 (2) (0) | 2023.05.17 |
[Network] 네트워크 관련 용어정리 (1) (0) | 2023.05.16 |