DNS 사용법 · 4 min read · Oct 03, 2025

전통적인 DNS 사용법

전통적인 DNS 사용법

버전 1.0
저자: Tom Adelstein
Falko Timme
마지막 수정: 2006년 3월 11일

리눅스 시스템 관리자는 전통적인 DNS를 배워야 합니다. 도메인 레코드를 설정하기 위한 프론트엔드와 빠른 템플릿은 사이트 관리에 유용합니다. 이미 존재하는 DNS 구성에 직면했을 때, 기본 사항을 알고 사용하는 것만큼 대체할 수 있는 것은 없습니다.

인터넷 사용자 대다수는 DNS에 대해 전혀 알지 못합니다. 그들은 ISP 연결을 설정할 때 이 용어를 본 적이 있을 수 있지만, 그것이 그들의 삶과 연결되어 있다는 것을 깨닫지 못합니다. 간단히 말해, DNS 서버는 브라우저, 이메일 또는 기타 인터넷 애플리케이션에서 IP 주소가 필요한 작업을 수행하기 위해 친숙한 이름을 사용할 수 있게 해줍니다.

인터넷은 TCP/IP 프로토콜을 사용하여 인터넷의 모든 것을 전송하고 수신합니다. 브라우저에 Google.com을 입력하여 검색을 수행할 때, 당신은 DNS를 사용하고 있습니다. 그렇지 않으면 이 숫자 값을 사용해야 할 것입니다: 64.233.187.99. 각각을 클릭하고 어떤 결과가 나오는지 확인해 보세요.

Google.com은 브라우저가 Google 웹사이트의 IP 주소를 찾기 위해 참조하는 데이터베이스의 이름입니다. 하지만 이는 사용자에게는 투명합니다. 웹사이트를 방문하기 위해 수동으로 찾아야 할 IP 주소의 노트를 유지하는 것이 좋겠습니까? 도메인 이름 시스템이 자동으로 이를 처리해 줍니다.

이 글을 읽고 “아, 그거 이미 알고 있어”라고 생각하고 있다면, 잠시만 기다리세요. DNS 작업은 상당한 지식과 규율을 요구합니다. 제가 아는 시스템 관리자들은 많은 작업을 수행할 수 있지만, DNS를 다룰 수 있는 사람은 드뭅니다. 거의 예외 없이, 그들은 기본 사항을 이해하지 못해 길을 잃습니다.

인터넷의 도메인 이름 시스템은 지구상에서 가장 큰 분산 데이터베이스를 구성하며, 매우 기발합니다. 이론적으로는 결함이 없습니다. 실제로는 사람들이 항상 이를 엉망으로 만듭니다. 사람들은 데이터베이스의 자신의 부분에 잘못 형식화되거나 본질적인 결함이 있는 DNS 항목을 만듭니다. 이로 인해 오류가 발생합니다.

인터넷의 DNS 레코드에 대한 조사에 따르면 오류 발생률이 72%에 달하는 사례가 있었습니다. 우리는 이러한 오류의 대부분이 형편없는 위임에서 발생한다는 것을 알고 있습니다. 형편없는 위임에는 실제로 도메인을 호스팅하는 사람이 없는 DNS 서버에 할당된 도메인이 포함됩니다. 다른 원인으로는 존 파일을 제공하지 않거나, 리소스 레코드의 오류, 만료된 도메인 등록 등이 있습니다.

DNS 전문 용어를 배우려고 시도하면 직관적이지 않다는 것을 알게 될 것입니다. 처음에는 그저 이해가 되지 않습니다. 여러 면에서, 이 전문 용어는 외국어를 연상시킵니다. 이해할 수 있을 때까지 일정 기간 동안 그것과 함께 작업해야 합니다.

리눅스는 DNS 기능을 수행하기 위해 BIND를 사용합니다. 다른 프로그램을 사용하려고 시도하기보다는 시스템 관리자는 BIND로 시작해야 합니다. 왜냐하면 전 세계의 거의 모든 DNS 서버가 BIND를 실행하기 때문입니다. 이 주제에 대한 역사 수업을 제공할 생각은 없습니다. 왜냐하면 이 주제는 당신을 졸리게 만들 것이기 때문입니다.

그러니 BIND에 대해 배우고 싶다면 그렇게 하세요. 그것은 당신이 DNS를 많이 하는 데 도움이 되지 않을 것입니다. 단 한 가지 예외가 있습니다. 일부 사람들은 여전히 BIND 버전 4를 사용합니다. BIND 4에서 BIND 8 또는 9로 업그레이드하고 싶습니다. 당신이 DNS 구성 파일을 만들러 나가게 될 것이고, 그 파일들이 아무 의미가 없을 것입니다. 많은 사람들이 여전히 BIND 4를 실행하고 있기 때문입니다.

구성 파일에 대해 알려주세요

BIND는 세 가지 구성 요소로 제공됩니다. 첫 번째 구성 요소는 named 또는 name-dee라고 부릅니다. 이는 DNS의 서버 측을 실행하는 데몬입니다. 이는 곧 이해가 될 것입니다.

BIND의 두 번째 구성 요소는 리졸버 라이브러리입니다. 사람들은 리졸버를 BIND의 클라이언트 측으로 생각합니다. 리졸버 코드는 친숙한 이름을 IP 주소로 변환하기 위해 DNS 서버에 쿼리를 수행합니다. 이 구성 요소는 resolv.conf 파일을 사용합니다. UNIX 약어처럼 들리나요? 그래야 합니다. 왜냐하면 그렇기 때문입니다.

BIND의 세 번째 구성 요소는 DNS 서버를 테스트하기 위한 도구를 제공합니다. 우리는 그것들을 도구라고 부르지만, 실제로는 dig와 같은 명령줄 유틸리티 세트입니다. 콘솔로 가서 dig yahoo.com을 입력하고 어떤 일이 발생하는지 확인하세요. 우리는 나중에 이것을 살펴볼 것입니다.

DNS 시스템에서 나의 책임은 무엇인가요?

앞서 언급했듯이, DNS는 분산 데이터베이스입니다. 도메인을 등록하기 위해 요금을 지불할 때, 당신이 대답해야 할 질문 중 하나는 네임 서버에 관한 것입니다. 두 개를 나열해야 하며, 이들은 DNS 시스템에 등록되어 있어야 합니다.

도메인 이름 시스템 데이터베이스는 세 가지 수준으로 구성됩니다. 첫 번째 그룹의 서버를 우리는 “루트” 서버라고 부릅니다. 두 번째는 최상위 도메인(TLD)이라고 부릅니다. 리졸버가 웹사이트의 주소를 찾으려면 쿼리를 수행합니다.

예를 들어 Google.com을 찾고 싶다고 가정해 보겠습니다. 리졸버는 루트 서버에 Google.com의 IP를 식별해 달라고 요청합니다. 루트 서버는 “모르겠지만, 답을 찾을 수 있는 곳을 알고 있습니다. COM의 TLD 서버에서 시작하세요.”라고 응답합니다.

그래서 루트는 당신의 쿼리를 COM 서버로 보냅니다. COM 서버는 “좋아요. 그 정보는 없지만, 그것을 알고 있는 네임 서버를 알고 있습니다. 그 주소는 64.233.167.99이고 이름은 ns1.google.com입니다. 그러니 그 주소로 가면 google.com의 웹사이트 주소를 알려줄 것입니다.”라고 말합니다.

당신의 리졸버는 ns1.google.com에서 정보를 가져와 IP 주소를 반환합니다. 만약 구글의 네임 서버가 당신의 리졸버에게 올바른 이름을 제공했다면, 당신은 웹 페이지를 얻게 될 것입니다.

이동 경로는 그림 1과 같습니다.

그림 1 - 루트에서 당신의 도메인까지.

그림 1의 왼쪽 상단에는 루트라는 주석이 달린 서버 세트가 묘사되어 있습니다. DNS 전문 용어에서 이 서버들은 DNS 경로의 시작을 나타냅니다. 이들은 점 또는 마침표 (“.”)로 표시됩니다. 구성 파일에서 IP 주소와 이름 매핑은 마침표로 끝납니다. 몇 분 후에 이러한 파일 중 일부를 살펴보면 더 명확해질 것입니다.

루트 서버는 분산 DNS 데이터베이스의 최상위에 있습니다. 그들은 최상위 도메인(TLD)에 대한 정보를 가지고 있습니다. TLD에는 com, net, org, mil, gov, edu 등이 포함됩니다. 도메인 이름을 사용하기로 계약할 때, 원하는 TLD를 선택합니다. 제 경우에는 centralsoft.org라는 org 이름 공간에 도메인이 있습니다.

제가 네임 서버를 등록할 때, server1.centralsoft.orgns0.centralsoft.org의 이름을 등록 대리인에게 제공했습니다. org의 TLD 서버에서 제 네임 서버를 찾을 수 있습니다. org 서버는 centralsoft에 대한 정보를 어디서 찾아야 하는지 알고 있습니다.

등록할 때, 저는 대리인에게 IP 주소와 친숙한 이름을 유지하고 서로 매핑하는 책임을 지겠다고 말했습니다. 그래서 우리는 합의에 도달했고 도메인 이름 시스템은 “좋아요, 이제 당신은 centralsoft.org의 데이터에 대한 권한이 있습니다. 누군가 인터넷에서 당신이 제공하는 서비스를 찾고 싶을 때, 우리는 그들을 당신에게 안내할 것입니다.”라고 말했습니다.

그래서 이제 저는 당신의 쿼리에 응답할 수 있는 애플리케이션을 실행해야 합니다. “물론, 제 웹 페이지를 보거나 제 사용자 중 한 명에게 이메일을 보내고 싶다면, 여기에서 찾을 수 있습니다. 이름을 요청하시면 IP 주소를 드리겠습니다. 왜냐하면 저는 당신이 TCP/IP를 사용하는 이 프로토콜을 가지고 있다는 것을 알고 있으며, 이름을 지정하더라도 주소가 필요하다는 것을 깨닫기 때문입니다.”

Share: X/Twitter LinkedIn

새 게시물을 받은 편지함에서 받기

스팸은 없습니다. 언제든지 구독 해지 가능합니다.