사용자가 브라우저의 URL 표시줄에 도메인 이름을 입력하면 DNS 서버에서는 해당 도메인 이름을 숫자 IP 주소로 변환하여 올바른 웹 사이트로 안내합니다.
이 글을 읽은 후에 다음을 할 수 있습니다:
관련 콘텐츠
인터넷에서 가장 인기 있는 인사이트를 한 달에 한 번 정리하는 Cloudflare의 월간 요약본 theNET를 구독하세요!
글 링크 복사
서버는 '클라이언트'라고 하는 다른 프로그램에 서비스를 제공하는 것을 전담하는 장치나 프로그램입니다.대부분의 최신 데스크톱 및 모바일 운영 체제에 기본 제공되는 DNS 클라이언트를 사용하면 웹 브라우저에서 DNS 서버와 상호 작용할 수 있습니다.자세한 내용은 클라이언트-서버 모델을 참조하세요.
캐싱이 없는 일반적인 DNS 쿼리에는 클라이언트에 IP 주소를 전달하기 위해 함께 작동하는 4개의 서버(재귀 확인자, 루트 네임서버, TLD 네임서버, 권한 있는 네임서버)가 있습니다.
DNS 리커서(DNS 확인자라고도 함)는 DNS 클라이언트에서 쿼리를 수신한 다음 다른 DNS 서버와 상호 작용하여 올바른 IP를 찾는 서버입니다. 확인자가 클라이언트로부터 요청을 받으면 확인자는 실제로 클라이언트 자체로 동작하여 올바른 IP를 찾기 위해 다른 세 가지 유형의 DNS 서버를 쿼리합니다.
먼저 확인자가 루트 이름 서버를 쿼리합니다. 루트 서버는 사람이 읽을 수 있는 도메인 이름을 IP 주소로 변환(확인)하는 첫 번째 단계입니다. 그런 다음 루트 서버는 도메인에 대한 정보를 저장하는 최상위 도메인(TLD) DNS 서버(예: .com 또는 .net)의 주소로 확인자에게 응답합니다.
그런 다음 확인자에서 TLD 서버를 쿼리합니다. TLD 서버는 도메인의 권한 있는 네임서버의 IP 주소로 응답합니다. 그런 다음 리커서는 권한 있는 네임서버를 쿼리하여 원본 서버의 IP 주소로 응답합니다.
확인자는 최종적으로 원본 서버 IP 주소를 클라이언트에게 다시 전달합니다. 클라이언트는 이 IP 주소를 사용하여 원본 서버에 직접 쿼리를 시작할 수 있으며, 원본 서버는 웹 브라우저에서 해석하고 표시할 수 있는 웹 사이트 데이터를 전송하여 응답합니다.
앞서 설명한 프로세스 외에도 재귀 확인자는 캐시된 데이터를 사용하여 DNS 쿼리를 확인할 수도 있습니다. 확인자는 지정된 웹 사이트에 대한 올바른 IP 주소를 검색한 후 제한된 시간 동안 해당 정보를 캐시에 저장합니다. 이 기간에 다른 클라이언트에서 해당 도메인 이름에 대한 요청을 보내면 확인자는 일반적인 DNS 조회 프로세스를 건너뛰고 캐시에 저장된 IP 주소로 클라이언트에게 응답할 수 있습니다.
캐싱 시간 제한이 만료되면 해석기는 IP 주소를 다시 검색하여 캐시에 새 항목을 만들어야 합니다. Time-to-Live(TTL)라고 하는 이 시간 제한은 각 사이트의 DNS 레코드에 명시적으로 설정됩니다.일반적으로 TTL은 24~48시간 범위에 있습니다.웹 서버가 때때로 IP 주소를 변경하므로 TTL이 필요합니다. 따라서 확인자가 캐시로부터 동일한 IP를 무기한으로 제공할 수는 없습니다.
DNS 서버는 정전, 사이버 공격, 하드웨어 오작동 등 여러 가지 이유로 실패할 수 있습니다.인터넷 초기에는 DNS 서버가 중단되면 상대적으로 큰 영향이 미칠 수 있었습니다.다행히도 오늘날 DNS에는 많은 중복성이 내장되어 있습니다.예를 들어, 루트 DNS 서버와 TLD 네임 서버의 인스턴스가 많이 있으며, 대부분의 ISP에는 사용자를 위한 백업 재귀 확인자가 있습니다.(개별 사용자는 Cloudflare의 1.1.1.1과 같은 공용 DNS 확인자를 사용할 수도 있습니다.)가장 인기 있는 웹 사이트에는 권한 있는 네임서버의 여러 인스턴스가 있습니다.
주요 DNS 서버가 중단되는 경우 일부 사용자는 백업 서버에서 처리하는 요청의 양으로 인해 지연을 경험할 수 있지만, 인터넷의 상당 부분이 사용할 수 없게 되려면 DNS가 상당 비율로 중단되어야 합니다.(이는 실제로 DNS 공급자 Dyn에서 사상 최대 규모의 DDoS 공격 중 하나를 경험했던 2016년에 발생했습니다.)
DNS 서버가 손상되거나 장애가 발생하면 사용자, 비즈니스, 인터넷 전체에 매우 부정적인 영향을 미칠 수 있습니다. 인터넷에 연결된 다른 모든 것과 마찬가지로 DNS 서버는 다양한 공격과 악의적인 당사자의 사칭에 취약합니다. DNSSEC와 같은 DNS 보안 조치는 이러한 공격을 방지하여 서버와 서버에 의존하는 사용자를 모두 안전하게 보호하는 것을 지원합니다.
Cloudflare에서는 공격 및 기타 일반적인 서버 장애 원인으로부터 DNS 서버를 보호하기 위하여 기본 제공 DNS 보안과 함께 제공되는 관리형 DNS 서비스를 제공합니다.