DNS란 무엇이며 어떻게 작동하나요?


DNS(도메인 이름 시스템)는 World Wide Web(WWW)의 가장 중요한 구성 요소 중 하나입니다. 브라우저에 웹 주소를 입력하는 것부터 화면에 올바른 웹사이트를 표시하는 데 도움이 됩니다.

오늘날 이 과정은 너무 빨리 진행되어 당연하게 여기기 쉽습니다. 그러나 이와 같은 훌륭한 웹사이트를 탐색하는 데 도움이 되는 복잡한 프로세스가 그 뒤에서 일어나고 있습니다!

인터넷 기본 사항

인터넷 은 본질적으로 네트워크 케이블, 무선 신호 및 디지털 신호를 전달하는 다양한 기타 방법으로 연결된 많은 컴퓨터입니다. 이러한 모든 장치와 네트워크 기술을 통합하는 것이 바로 인터넷 프로토콜(IP)입니다.

통신 프로토콜은 장치가 서로 대화하는 데 사용하는 규칙과 언어를 설명합니다. 두 장치(스마트 냉장고, 노트북, 스마트폰, 로봇 청소기 등)는 동일한 프로토콜을 사용하는 한 서로 정보를 주고받을 수 있습니다.

IP 네트워크는 IP 주소로 알려진 모든 기기에 고유 번호를 할당합니다. IP 주소는 네트워크를 통해 전송되는 데이터 패킷의 목적지를 명확하게 하기 위해 존재합니다.

인터넷 게이트웨이 장치(일반적으로 무선 라우터)에는 인터넷상의 누구나 볼 수 있는 공개 IP 주소가 있습니다. IP 주소는 네트워크의 물리적 위치도 나타내므로 IP 주소가 대략적인 위치도 표시한다는 의미입니다! 그러나 웹에 있는 내용에 액세스하기 위해 IP 주소를 입력할 필요는 없습니다. 이것이 바로 DNS가 상황을 구하기 위해 급습하는 곳입니다.

URL을 주셔서 감사합니다

/ 과 같은 인터넷 주소는 URL 또는 URL(Uniform Resource Locator)로 알려져 있습니다. 이러한 주소는 일반적으로 기억하기 쉽게 선택되므로 사람이 기억하기 쉽습니다. 해당 사이트를 방문하기 위해 Chrome의 주소 표시줄과 같은 웹 브라우저에 입력하는 텍스트 문자열입니다.

그러나 귀하가 액세스하는 웹사이트와 기타 콘텐츠가 포함된 실제 컴퓨터에는 URL이 아닌 IP 주소가 있습니다. 실제로 전 세계 여러 서버가 동일한 웹사이트와 데이터를 호스팅할 수 있으므로 단일 URL이 여러 IP 주소를 가리킬 수 있습니다.

DNS 서버는 URL을 IP 주소로 전환합니다

DNS 서버는 사용자가 입력한 URL을 IP 주소 데이터베이스와 비교하여 어떤 주소가 해당 URL과 연결되어 있는지 확인하는 네트워크상의 컴퓨터입니다..

전화번호부에서 전화번호를 찾는 것과 같습니다. 그 사람의 이름과 이니셜을 찾으면 그 옆에 전화번호가 표시됩니다. 전화벨이 울리는 번호이자 컴퓨터가 찾고 있는 웹 서버와 연결되도록 하는 IP 주소입니다.

DNS의 단계별 작동 방식

웹 브라우저를 열고 URL을 입력한 후 Enter 키를 누르면 어떤 일이 일어나는지 살펴보겠습니다.

  1. 먼저 브라우저는 이전 요청이 DNS 레코드로 저장되어 있는 DNS 캐시 를 확인합니다. 따라서 동일한 웹사이트를 반복적으로 방문하는 경우 매번 DNS 응답을 기다릴 필요가 없습니다. 브라우저는 컴퓨터의 Hosts 파일도 확인합니다. 이는 호스트 이름으로 알려진 일치하는 IP 주소 기록이 포함된 수동 URL 목록입니다. Hosts 파일은 모든 것보다 우선순위가 높으므로 브라우저는 여기에 나열된 IP 주소가 있는 경우 해당 파일로 이동합니다.
  2. 정보를 로컬에서 사용할 수 없는 경우 웹 브라우저는 DNS 확인자에게 요청을 보냅니다. 이것은 대부분의 사람들이 DNS 이름 서버라고 부르는 서버입니다. 그러나 실제로 확인자는 보다 광범위한 DNS 시스템의 일부일 뿐입니다. 확인자는 일반적으로 인터넷 서비스 공급자(ISP)에 의해 운영됩니다.
    1. ISP의 로컬 DNS 확인자(보통 최소 2개)의 캐시에 필요한 정보가 없다고 가정해 보겠습니다. 이 경우, 요청을 체인의 위쪽에 있는 DNS 루트 이름 서버로 보내야 합니다. 루트 네임서버에는 IP 주소와 URL에 대한 정보가 없습니다. 대신 TLD(최상위 도메인) 이름 서버에 대한 정보를 갖고 요청을 해당 위치로 리디렉션합니다. 최상위 도메인은 웹 주소 끝에 표시되는 .com, .org 및 기타 접미사입니다. 귀하의 URL이 .com인 경우, .com 도메인을 처리하는 TLD 서버가 다음 중지됩니다.
    2. 그러면 TLD 네임서버가 두 번째 수준 도메인을 제공합니다. 예를 들어 'google.com'의 'google'입니다. TLD 서버는 어느 이름 서버가 해당 두 번째 수준 도메인과 하위 도메인에 대한 IP 주소 정보를 가지고 있는지 알고 DNS 조회 요청을 해당 대상으로 전달합니다. 이 서버를 신뢰할 수 있는 이름 서버라고 합니다. 권한 있는 DNS 서버는 실제 IP 주소를 제공한 다음 이를 브라우저가 원래 연결했던 DNS 확인자에게 다시 보냅니다..
    3. 상당한 여정이지만 DNS 쿼리에 일반적으로 소요되는 시간은 1초에서 몇 초 사이입니다.

      DNS는 인터넷 경험을 바꿀 수 있습니다

      모든 DNS 확인자가 동일하게 생성되는 것은 아닙니다. 일부 ISP가 DNS 서버를 제대로 관리하지 못하는 것은 드문 일이 아닙니다. 부적절한 캐시, 느린 하드웨어, 부족한 대역폭 또는 버그가 있는 소프트웨어를 제공할 수 있습니다.

      귀하의 관점에서 볼 때 이로 인해 DNS 오류가 발생하는 웹페이지가 발생하거나 처음 열 때 시간이 오래 걸립니다. 이것이 바로 많은 사람들이 선호하는 DNS 서버를 대체 서버로 변경하는 이유입니다. 예를 들어 Google은 8.8.8.8 및 8.8.4.4에서 DNS 서버를 실행합니다. OpenDNS는 208.67.222.222 및 208.67.220.220에서 서버를 제공합니다. 이 두 가지 예 외에도 대부분의 웹 사용자가 자신이 가지고 있는지조차 모르는 다양한 선택 사항을 제공하는 더 많은 예가 있습니다.

      올바른 DNS 서비스를 선택하면 검색 환경이 바뀔 수 있습니다. 일부는 ISP보다 더 빠르고 안정적인 조회를 제공하며 일부는 악성 사이트 차단과 같은 특수 기능을 제공할 수도 있습니다.

      스마트 DNS 서비스

      스마트 DNS 서비스는 공용 DNS 서버의 또 다른 대안입니다. 이는 일반적으로 유료 구독 서비스이며 DNS 요청을 세밀하게 제어할 수 있는 기능을 제공합니다. 지리적 제한을 우회하는 데 자주 사용됩니다.

      그래도 VPN과 달리 Smart DNS는 귀하가 지정한 서비스에 대해서만 다른 국가의 서버로 선택적으로 리디렉션하고 나머지 탐색 내용은 그대로 유지합니다. VPN에서는 비슷한 결과를 얻으려면 분할 터널링이라는 방법을 구현해야 하지만 분할 터널링은 스마트 DNS보다 설정이 더 복잡합니다.

      역방향 DNS 조회

      지금까지 설명한 DNS 프로세스는 '정방향 DNS 조회'로 알려져 있으며 대부분의 DNS 요청은 이 유형입니다. 그러나 역방향 조회를 수행하는 것도 가능합니다. 여기서는 서버의 IP 주소를 알지만 해당 주소와 연결된 URL은 알 수 없습니다. 이는 네트워크 로그에서 서버의 IP 주소만 볼 수 있고 해당 서버가 누구에게 속해 있는지 알고 싶을 때 유용할 수 있습니다.

      DNS 및 개인정보 보호

      공개 DNS 서비스는 일반적으로 도청에 취약하며 DNS 서비스 자체는 사용자가 요청한 웹사이트에 대한 로그를 유지할 수 있습니다. 이는 제3자가 귀하가 방문한 웹사이트와 방문 시기를 정확히 알 수 있음을 의미합니다..

      DNS 시스템은 본질적으로 비공개로 설계되지 않았지만 오늘날의 인터넷 상태로 인해 웹에 연결하는 모든 사람에게 개인정보 보호가 중요한 문제가 되었습니다. 이로 인해 비공개 DNS 서비스 이 발생했습니다. 일부는 유료이지만 Cloudflare와 같은 일부 회사는 무료 개인 DNS 서버를 제공합니다. 이러한 서버는 로그를 유지하지 않고 외부인이 DNS 통신을 도청하거나 방해하기 어렵게 구성됩니다. 이는 DNS에 대해 알아야 할 마지막 중요한 사항을 알려줍니다.

      해커가 DNS를 사용할 수 있습니다

      DNS 시스템에는 어두운 면이 있을 수 있습니다. DNS 스푸핑 또는 DNS 캐시 중독이라고 알려진 방식을 통해 악의적인 행위자는 서버를 가장하고 가짜 DNS 데이터를 확인자에게 다시 전송하여 ISP의 DNS 캐시를 손상시킬 수 있습니다.

      즉, 컴퓨터가 DNS 조회 요청을 보낼 때 감염된 캐시에 의해 악성 사이트로 리디렉션될 수 있다는 의미입니다. 가장 위험한 점은 이를 방지하기 위해 할 수 있는 일이 아무것도 없다는 것입니다. 따라서 인터넷 보안 시스템에 의존하고 사이트 인증이 올바르지 않다는 경고를 심각하게 받아들여야 합니다.

      캐시 중독은 스푸핑 피해를 입을 가능성이 적기 때문에 Google 및 Cloudflare와 같은 회사의 주요 DNS 서비스를 사용하는 훌륭한 이유이기도 합니다. 그러나 DNS 확인 프로세스는 여전히 빠르고 효율적으로 웹을 탐색하기 위해 고안된 최고의 방법입니다. 따라서 DNS가 제공하는 모든 이점을 활용하여 드문 해킹 공격에 대처해야 합니다.

      .

      관련 게시물:


      28.07.2022