인터넷에 연결된 컴퓨터, 서비스, 혹은 다른 자원들의 도메인 이름을 IP 주소로 변환해주는 분산형 계층적 네이밍 시스템이다. 간단히 말해서 DNS는 사람이 읽을 수 있는 웹주소 (문자로 구성되어 있는)를 컴퓨터가 이해할 수 있는 숫자 형태의 IP주소로 바꿔주는 주소록 역할을 한다. 사용자는 이를 통해 복잡한 숫자 대신 기억하기 쉬운 도메인 이름을 사용해 웹사이트나 서비스를 편리하게 접속할 수 있다. DNS 관리 업체를 통해 설정할 수 있다.
필요성
- 사용자 편의성
IP주소는 숫자 조합이라 기억하기 어렵지만 도메인은 사람들에게 직관적이고 기억하기 쉽다. - 유연한 인프라 관리
서버 IP 주소가 바뀌어도 사용자들은 같은 도메인 이름을 통해 접근이 가능하다. DNS 레코드만 업데이트하면 되기 때문에 인프라 확장이나 이전이 용이해진다.
DNS 구성 요소
- 도메인 네임 스페이스(Domain Name Space)
도메인 이름은 계층 구조를 이루며 루트(.)를 최상위에 두고 그 아래에 최상위 도메인(.com, .org, .kr), 그 아래에 2차 도메인(example, naver, google), 그 아래에 3차 도메인(www) 등이 올 수 있다. - 네임 서버(Name Server)
DNS 질의에 대해 해당 도메인에 대한 정보(IP 주소)를 제공하는 서버다.
루트 네임 서버 : 전 세계에 분산 배치되어 있으며 최상위 도메인에 대한 정보 위치를 알려준다.
TLD 네임서버(Top-Level Domain Name Server) : .com, .org, .net 등 최상위 도메인에 대한 정보를 가지고 있으며 해당 TLD 내에 속한 도메인들의 권한 네임서버 위치를 알려준다.
권한 네임서버(Authoritative Name Server) : 특정 도메인에 대한 공식적인 DNS 레코드를 보유하고 있으며 해당 도메인의 IP 주소 정보를 최종적으로 반환한다. - DNS 리졸버
사용자가 웹 브라우저에 www.example.com을 입력하면 사용자의 ISP 또는 로컬 네트워크에 설정된 DNS 리졸버가 이를 처리한다. 리졸버는 캐시를 사용해 이전 질의의 기록을 보관하기도 하며, 루트 네임서버 >> TLD 서버 >> 권한 네임서버 순으로 질의하여 IP 주소를 얻어내고 이 결과를 브라우저에 반환한다.
'Web' 카테고리의 다른 글
[Web] CORS(Cross-Origin Resource Sharing) (0) | 2024.12.07 |
---|---|
[Web] CSRF & XSS (0) | 2024.11.28 |
[Web] Authentication & Authorization (0) | 2024.11.28 |
[Web] JWT(Json Web Tokken) (0) | 2024.11.28 |
[Web] OAuth (2) | 2024.11.28 |