topics DNS 프로토콜 DNS 프로토콜이란 무엇인가요?
DNS 솔루션 살펴보기 AI 업데이트 구독
DNS 프로토콜을 나타내는 일러스트

게시일: 2024년 3월 12일
기고자: Camilo Quiroz Vazquez

DNS 프로토콜이란 무엇인가요?

도메인 이름 시스템(DNS) 프로토콜은 인터넷 사용자가 숫자 IP 주소 대신 호스트 이름을 사용하여 인터넷을 탐색할 수 있도록 하는 프로세스입니다. DNS는 인터넷의 전화번호부와 같습니다. 웹 브라우저를 통해 특정 웹사이트를 검색하는 프로세스를 단순화합니다.

DNS 클라이언트가 www.example.com과 같은 호스트 이름을 사용하여 DNS 요청을 하는 경우, 일련의 함수는 해당 요청을 해당 IP 주소와 연결합니다. 이러한 기능은 IP 주소(IPv4 및 IPv6 모두)의 인증을 제공하고 사용자 지정 가능한 도메인 이름을 복잡한 숫자 주소로 변환하여 인터넷 사용에 더 쉽게 액세스할 수 있도록 합니다.

이러한 기능을 완료하기 위해 DNS 프로토콜은 제대로 작동할 때 프로세스를 빠르고 안전하게 만드는 네 가지 유형의 DNS 서버를 사용합니다. DNS 서버는 DNS 레코드(확인 프로세스를 안내하는 정보가 포함된 A 레코드 및 CNAME 레코드와 같은 레코드)를 사용하여 DNS 요청을 적절하게 라우팅합니다. 이러한 레코드는 DNS 구문으로 작성된 "영역 파일"이라는 텍스트 기반 파일입니다.                                      

DNS 리소스 레코드는 권한 있는 이름 서버라고도 하는 권한 있는 DNS 서버에 저장됩니다. 여기에는 서버가 DNS 레코드를 캐시하는 기간(TTL(Time-to-Live))을 포함하여 도메인과 관련된 정보가 포함되어 있습니다. 이러한 레코드를 통해 도메인과 하위 도메인을 연결하고 이메일을 적절하게 라우팅하고 DNS 보안 등을 지원합니다.

AI 및 IT 자동화 가이드

AI 및 IT 자동화를 위한 엔터프라이즈 가이드에서는 AI 기반 IT 자동화에 관한 심층적인 분석을 제공합니다. AI 기반 IT 자동화를 사용하는 이유와 방법, 작업을 방해하는 문제, 시작하는 방법 등을 살펴보세요.

관련 내용

IBM 뉴스레터 구독하기

DNS 프로토콜에 대한 단계별 가이드

다음 프로세스를 통해 DNS 쿼리가 해결되고 사용자는 사이트를 호스팅하는 웹 서버의 IP 주소로 연결됩니다.

  • 컴퓨터, 스마트 기기, 웹 브라우저 또는 애플리케이션 등의 DNS 클라이언트를 사용하여 도메인 이름에 연결할 때 재귀 쿼리, DNS 요청, DNS 조회 또는 DNS 쿼리라고 하는 작업을 설정합니다.

  • 스마트폰, 컴퓨터 또는 태블릿과 같은 장치에서 DNS 레코드를 요청하면 브라우저(예: Google Chrome)가 먼저 레코드에 대한 캐시를 확인합니다. 레코드가 존재하지 않으면 운영 체제 수준 확인자가 쿼리됩니다. 스텁 확인자라고 하는 이 운영 체제 구성 요소는 레코드를 확인합니다.

  • 요청된 레코드가 로컬 수준에서 캐시되지 않은 경우 DNS 쿼리는 요청을 확인하는 데 도움이 되는 일련의 외부 DNS 서버를 통해 전달됩니다.

  • 첫 번째 서버는 DNS 재귀 또는 재귀 DNS 확인자라고도 하는 재귀 DNS 서버로, 인터넷 서비스 공급자(ISP)가 운영하는 경우가 많습니다. 재귀 확인자는 가능한 경우 DNS 캐시 데이터를 사용하여 원하는 사이트에 도달하고, 이 데이터를 사용할 수 없는 경우 요청을 루트 이름 서버로 이동합니다.

  • 루트 이름 서버 또는 루트 DNS 서버는 요청을 받아 사이트의 확장자에 따라 최상위 도메인 또는 TLD 이름 서버로 알려진 서버로 라우팅할 수 있습니다(예: .com, .org 또는 .net 등).

  • TLD 이름 서버는 특정 확장자에 대한 요청을 받아 권한 있는 DNS 서버 또는 권한 있는 도메인 이름 서버라고도 하는 권한 있는 이름 서버로 보냅니다.

  • 권한 있는 이름 서버는 DNS 리소스 레코드에 저장된 특정 도메인 이름과 관련된 정보를 포함하여 관리하는 DNS 영역에 대한 정보를 포함하며 도메인 이름을 해당 IP 주소와 연결합니다.

  • 정보가 DNS 클라이언트에 반환되어 DNS 확인을 완료합니다.

DNS 서버가 완전한 답변을 검색할 수 없는 경우 반복적인 DNS 쿼리를 시작합니다. 서버는 IP 주소를 찾거나 시간 초과 또는 오류에 도달할 때까지 계속해서 다른 서버를 통해 요청을 반송합니다.

DNS 프로토콜 사양
도메인 네임스페이스

DNS 네임스페이스는 인터넷의 퍼블릭 DNS 호스트 이름을 관리합니다. 네임스페이스는 트리처럼 구조화된 계층 구조를 만들고, 트리의 각 노드에는 도메인을 설명하는 텍스트 레이블과 DNS 리소스 레코드가 있습니다. 도메인 이름은 상위 노트의 레이블과 함께 레이블로 구성되며(이 섹션은 "example.com"와 같이 점으로 구분됨) 영역으로 구분됩니다. 각 영역은 관리 및 운영을 위해 특정 법인에 위임됩니다. 이 구조를 통해 웹사이트에 고유한 이름을 지정할 수 있습니다.

도메인 이름 구문

도메인 이름은 다양한 수준의 계층 구조를 만듭니다. 도메인 이름은 레이블이라는 하나 이상의 부분으로 구성되며 각 부분은 점으로 구분됩니다. 레이블에는 최대 63자까지 입력할 수 있습니다.

예: forum.support.example.com

위의 예에서 ".com"는 최상위 도메인을 나타내고, "example"은 도메인 이름을 나타내고, "support"는 "example" 아래의 하위 도메인이고, "forum"은 "support" 아래의 하위 도메인입니다.

DNS 요청 해결

DNS 재귀 또는 재귀 DNS 확인자라고도 하는 재귀 DNS 서버는 다른 DNS 서버와 통신하여 IP 주소를 찾아 반환합니다. 이 서버는 DNS 쿼리를 수신하고 캐시된 데이터를 사용하여 사용자를 원하는 사이트에 연결할 수 있습니다. 사이트 데이터가 캐시되지 않은 경우 권한 있는 이름 서버에 후속 요청을 보냅니다.

권한 있는 이름 서버는 일반적으로 DNS 쿼리 확인 프로세스의 최종 목적지입니다. 이 서버에는 해당 영역의 모든 도메인에 대한 리소스 레코드가 포함되어 있습니다. 경우에 따라 권한 있는 이름 서버는 특정 하위 도메인에 대한 정보를 찾기 위해 다른 이름 서버에 요청을 보내야 합니다. 

DNS 메시지 형식

DNS 메시지는 쿼리와 응답으로 구성되며 다음 필드를 포함합니다.

  • 식별자, 플래그, 질문 및 답변 수, 권한 리소스 레코드(RR) 수, 추가 리소스 레코드 수를 포함하는 헤더.

  •  메시지 유형을 나타내는 플래그 필드로, 이름 서버를 신뢰할 수 있는 경우, 쿼리 상태, 재귀적인지 또는 생략되었는지 여부를 나타냅니다.

  • 확인 중인 도메인 이름 및 레코드 유형이 포함된 질문 섹션.

  • 쿼리된 이름의 리소스 레코드가 포함된 답변 섹션.
DNS 전송 프로토콜

DNS는 속도와 낮은 오버헤드로 인해 사용자 데이터그램 프로토콜을 사용하여 DNS 쿼리에 응답합니다. 512바이트보다 큰 DNS 응답의 경우 또는 서버가 영역 전송(기본 DNS 서버에서 보조 DNS 서버로 DNS 레코드를 전송하는 작업) 또는 이와 유사한 작업을 관리하는 경우 TCP(전송 제어 프로토콜)를 사용합니다. TCP는 데이터 무결성을 검사하고 메시지를 더 작은 패킷으로 나누어 최대한 빨리 목적지에 도달할 수 있도록 합니다.

DNS 마스터 파일(영역 파일)

DNS 마스터 파일은 DNS 이름 서버에 저장됩니다. 다음과 같은 단일 DNS 영역에 대한 DNS 정보를 정의하는 텍스트 파일입니다.

  • 글로벌 TTL(Time to Live): 이는 레코드가 로컬 DNS 캐시에 저장되어야 하는 시간을 정의합니다.

  • SOA(권한 시작) 레코드: 이는 특정 영역에 대한 기본 권한 있는 이름 서버를 설정합니다.

  • 리소스 레코드: 이러한 레코드는 호스트 이름, IP 주소 및 기타 정보를 DNS 네임 서버에 저장하는 데 사용됩니다.
엔터프라이즈 규모 DNS

소규모에서는 사용자가 이러한 프로세스가 진행되고 있다는 사실조차 알아차리지 못할 것입니다. 엔터프라이즈 규모에서 DNS의 작동 방식을 이해하는 것은 내부 및 외부 웹 서비스를 유지 관리하고 관리형 DNS 솔루션을 선택하는 데 중요합니다.

관리형 DNS 솔루션의 사용 사례는 다음과 같습니다.

멀티 CDN

콘텐츠 전송 네트워크(CDN)는 전송 성능을 개선하고 대기 시간을 줄이는 데 도움이 되는 글로벌 서버 네트워크입니다. 멀티 CDN 시스템을 사용하면 여러 CDN을 동적으로 사용하여 최상의 서비스를 제공할 수 있습니다.

글로벌 서버 로드 밸런싱 (GSLB)

서버에 과부하가 걸리면 장애가 발생하거나 성능이 저하될 수 있습니다. 로드 밸런싱은 네트워크 트래픽을 다양한 서버에 분산하는 프로세스이며, GSLB는 전 세계 데이터 센터에 워크로드를 효율적으로 분산합니다. 

지리적 라우팅

관리형 DNS 솔루션은 최종 사용자의 지리적 위치를 기반으로 자동화된 라우팅을 촉진하여 네트워크 및 애플리케이션 성능을 가속화합니다. 

DNS 트래픽 조정

트래픽 조정을 통해 조직은 실제 사용자 모니터링(RUM) 데이터, 부하 및 네트워크 상태를 기반으로 애플리케이션, 서비스 및 콘텐츠에 대한 연결을 최적화할 수 있습니다. 

관련 솔루션
IBM NS1 Connect Managed DNS 

IBM NS1 Connect Managed DNS 서비스는 네트워크 중단을 방지하고 비즈니스를 항상 온라인 상태로 유지할 수 있도록 탄력적이고 빠르며 신뢰할 수 있는 DNS 연결을 제공합니다.

IBM NS1 Connect Managed DNS 살펴보기

IBM NS1 Connect 글로벌 서버 로드 밸런싱

DNS 및 실시간 디바이스 성능 데이터를 기반으로 하는 새로운 접근 방식인 IBM NS1 Connect GSLB를 통해 더 저렴한 비용으로 최종 사용자 경험을 최적화하고 네트워크 복원력을 개선하세요.

IBM NS1 Connect GSLB 살펴보기

IBM Cloud DNS Services

IBM Cloud DNS Services는 신속한 응답 시간, 최고의 중복성 및 고급 보안을 갖춘 퍼블릭 및 프라이빗 권한 DNS Services를 제공합니다. 이 서비스는 IBM Cloud 웹 인터페이스 또는 API를 통해 관리됩니다.

IBM Cloud DNS Services 살펴보기
리소스  DNS란 무엇인가요?

도메인 이름 시스템(DNS)은 사용자가 숫자 인터넷 프로토콜 주소가 아닌 인터넷 도메인 이름과 검색 가능한 URL을 사용하여 웹사이트에 연결할 수 있게 해주는 기능입니다.

DNS 레코드란 무엇인가요?

도메인 이름 시스템(DNS) 레코드는 DNS 서버 내에서 도메인 이름을 인터넷 프로토콜(IP) 주소와 연결하는 데 사용되는 일련의 지침입니다.

DNS 서버란 무엇인가요?

DNS 서버는 사용자가 웹 브라우저에서 검색하는 웹 사이트 도메인 이름을 해당 숫자 IP 주소로 변환합니다. 이 프로세스를 DNS 확인이라고 합니다.

기본 DNS란 무엇인가요?

기본 DNS 서버는 쿼리 확인의 첫 번째 접점이며 도메인에 대한 정보의 최종 소스 역할을 하며 모든 도메인의 DNS 레코드의 원본 사본을 저장합니다.

DNS 영역이란 무엇인가요?

DNS 영역은 도메인 이름 시스템(DNS)의 도메인 이름스페이스 내에 있는 고유한 논리적 엔티티로, 관리자, 조직 또는 관리 책임이 있는 기타 법인에 위임됩니다.

CNAME 레코드란 무엇인가요?

CNAME 레코드 또는 표준 이름 레코드는 도메인 이름 시스템(DNS) 내에서 별칭 역할을 하여 한 도메인 이름을 다른 도메인 이름으로 리디렉션합니다.

다음 단계 안내

IBM NS1 Connect는 프리미엄 DNS 및 사용자 정의 가능한 고급 트래픽 조정을 통해 전 세계 어디서나 사용자에게 빠르고 안전한 연결을 제공합니다. NS1 Connect의 상시 가동 API-first 아키텍처를 통해 IT 팀은 네트워크를 보다 효율적으로 모니터링하고, 변경 사항을 배포하고, 일상적인 유지 관리를 수행할 수 있습니다.

NS1 Connect 살펴보기 라이브 데모 예약하기