DNS 설정 · 8 min read · Oct 02, 2025

ISPConfig로 나만의 이름 서비스(DNS) 설정하기

인터넷은 IP 번호로 작동하며 도메인 이름에서 IP 번호 주소로 이동하기 위해 도메인 이름 시스템 DNS가 사용됩니다. 나만의 이름 서비스를 설정하거나 예를 들어 호스팅 제공업체의 이름 서비스를 사용할 수 있습니다. 두 경우 모두 완전한 도메인 이름을 IP 번호에 매핑합니다. 예를 들어, FQDN mail.howtoforge.com의 주소는 78.46.214.220입니다.

이 튜토리얼은 도메인 이름 xyzzy.tld를 사용합니다. 호스트 이름은 호스트에 부여된 이름으로, 예를 들어 foobar입니다. 호스트 이름과 도메인 이름을 결합하면 완전한 도메인 이름 FQDN이 생성됩니다. 예를 들어, foobar.xyzzy.tld입니다.

도메인이 자신의 조직 외부에서 사용될 경우 도메인을 등록해야 합니다. 등록자는 두 개의 네임 서버를 요구합니다. 일부 등록자는 먼저 등록하고 나중에 네임 서버를 제공할 수 있도록 허용합니다. 그러나 등록자는 두 개의 작동하는 네임 서버를 제공하지 않으면 도메인 이름을 취소하겠다고 위협합니다.

자신의 네임 서버를 운영하려면 두 개의 네임 서버 호스트가 필요합니다. 호스트가 하나만 있는 경우 웹사이트, 이메일, 데이터베이스 등을 운영하고 이름 서비스도 설정할 수 있지만, 두 번째 네임 서버는 어떻게든 마련해야 합니다.

자신의 조직 내에서만 이름 서비스를 제공하는 경우 도메인을 등록할 필요가 없으며 하나의 네임 서버만 가질 수 있습니다.

이 튜토리얼의 ISPConfig 부분은 이름 서비스를 제외한 모든 것이 설치된 하나의 호스트와 이름 서비스용 두 개의 호스트가 있는 다중 서버 설정이 설치되었다고 가정합니다. 총 세 개의 호스트가 있습니다. 호스트 이름은 web, ns1 및 ns2입니다. 웹이 이름 서비스도 실행하는 경우 두 개의 호스트만 사용할 수 있으며 다른 호스트도 네임 서버입니다.

이름 서비스에는 여러 종류의 레코드가 있습니다. A 레코드를 호스트의 IP 번호로 설정합니다. IPv6가 사용되는 경우 AAAA 레코드입니다. 호스트가 세 개 있는 경우 세 개의 A 레코드를 설정합니다. 두 개의 NS 레코드를 네임 서버 호스트 이름으로 설정합니다.

필요한 정보를 다음과 같이 수집합니다:

호스트 또는 도메인IP 주소용도
xyzzy.tld192.168.260.71웹 페이지 주소
web192.168.250.71웹 서버
ns1192.168.250.73네임 서버
ns2192.168.258.75네임 서버

1.1 ISPConfig 3.x 사용하기

세 개의 호스트와 ISPConfig를 다중 서버 설정을 사용하여 설치합니다. 이 튜토리얼을 테스트할 때 Debian GNU/Linux 9.5와 ISPConfig 3.1.12를 사용했습니다.

여러 도메인을 가질 계획이라면 DNS 템플릿을 설정하는 것이 더 쉽습니다. ISPConfig 매뉴얼 4.8.1.3 템플릿을 참조하십시오. 여기서는 하나의 도메인만 추가되므로 템플릿은 사용되지 않습니다.

DNS 탭으로 이동하여 “새 DNS 존 수동 추가“를 누릅니다. 이 존은 도메인에 대한 구성 파일이며, 사용하려는 도메인과 더불어 거의 동일한 것으로 간주할 수 있습니다.

스크린샷은 DNS 존 양식을 작성하는 방법을 보여줍니다. 이 존을 고객을 위해 설정하는 경우 양식에 고객을 입력합니다. 자신을 위해 이 존을 설정하거나 ISPConfig에서 고객을 만들고 싶지 않은 경우 비워둘 수 있습니다.

ISPConfig의 DNS 존 양식

저장하고 레코드 탭으로 이동합니다.

DNS 레코드

레코드 탭에서 원하는 레코드에 대해 녹색 버튼을 눌러 레코드를 추가합니다. 예를 들어 A 레코드를 얻으려면 A가 있는 녹색 버튼을 누릅니다. FQDN 호스트 이름을 작성할 때 이름 끝에 점 문자 “.”를 추가하는 것을 잊지 마십시오. ISPConfig DNS 양식의 일부 필드는 올바르게 작동하는 이름 서비스 항목을 만들기 위해 필요합니다. 필요하지 않은 곳을 기억하기보다는 항상 작성하는 것이 더 쉽습니다.

원하는 경우 더 많은 레코드를 추가할 수 있습니다.

ISPConfig 패널 창 상단의 숫자가 있는 빨간 공은 디스크에 저장 중임을 나타냅니다. 숫자는 여전히 작성해야 할 레코드 수를 보여줍니다. 테스트하기 전에 두 분 정도 기다리거나 빨간 공이 사라질 때까지 기다리십시오. 그렇지 않으면 이전 설정을 테스트할 수 있습니다.

더 많은 네임 서버가 필요하거나 ISPConfig를 설치한 호스트가 하나뿐인 경우 ISPConfig 설정에 호스트를 추가할 수 있습니다. 이름 서비스만 실행하는 호스트의 경우 작은 호스트도 충분합니다. 호스트에 Linux와 ISPConfig를 설치할 수 있고 정적 IP 주소가 있다면 네임 서버로 사용할 수 있습니다. 사무실이나 집에서 실행할 수 있지만 정적 IP 주소를 얻는 것이 어려울 수 있습니다. 호스팅 제공업체는 작고 저렴한 서비스를 제공하며 정적 IP 주소를 얻을 수 있습니다. 한 호스트가 어딘가에 있고 다른 호스트가 다른 곳에 있는 ISPConfig 다중 서버 설정을 설정할 수 있습니다.

혼란스러운 경우 ISPConfig 매뉴얼을 읽어보십시오.

1.2 제공업체 이름 서비스 사용하기

이미 ISPConfig를 사용하여 이름 서비스를 설정한 경우 이 부분을 건너뛰십시오.

호스트가 호스팅 제공업체에 있는 경우, 그들은 아마도 호스팅 고객을 위한 DNS 서비스를 제공할 것입니다. 또는 DNS 서비스 제공업체를 찾을 수 있습니다.

이러한 서비스를 사용하는 방법에 대해 정확한 조언을 제공하기는 어렵습니다. 아마도 모든 제공업체마다 다른 시스템이 있을 것입니다. 그러나 모든 제공업체는 처음에 수집한 정보를 입력해야 합니다.

이전 장을 읽고 제공업체의 입력 양식에 맞게 조정하십시오.

호스팅 제공업체 또는 DNS 제공업체는 대부분 이름 서버 세트를 운영하고 있으며 모든 DNS 고객이 이를 사용합니다. 이름 서버는 아마도 ns1.yourprovider.com, ns2.yourprovider.com으로 명명됩니다. 제공업체는 글루 레코드를 제공할 수 있으므로 이름 서버가 ns1.xyzzy.tld, ns2.xyzzy.tld로 표시될 수 있습니다. 글루 레코드가 사용 가능한지 및 사용하는 방법에 대한 제공업체의 지침을 확인하십시오.

1.3 테스트

이제 이름 서비스가 올바르게 작동하는지 확인하십시오. ns1 또는 ns2 호스트에 로그인하고 테스트를 시작합니다. 이 예제는 Debian GNU/Linux 9.5 Stretch에서 실행되고 있으며, 제 추측은 Ubuntu도 거의 동일하다는 것입니다. 다른 운영 체제는 다를 수 있습니다. Windows에서 테스트하는 경우 host 명령이 없으므로 대신 nslookup을 사용하십시오.

root@ns1:~# host web.xyzzy.tld 192.168.250.73
Using domain server:
Name: 192.168.250.73
Address: 192.168.250.73#53
Aliases: 

web.xyzzy.tld has address 192.168.250.71
root@ns1:~#

위 테스트는 사용된 네임 서버가 192.168.250.73이며, 이름 web.xyzzy.tld를 IP 번호 192.168.250.71로 해결함을 보여줍니다. 이는 우리가 원하는 것입니다. 이렇게 테스트하는 것이 유용한 이유는

  • host 명령은 이름 서비스를 테스트하며, 호스트 이름을 ping하면 /etc/hosts 파일에서 먼저 조회할 수 있으므로 이름 서비스를 전혀 테스트하지 않을 수 있습니다.
  • FQDN 뒤의 host 명령의 IP 번호는 쿼리가 전송되는 네임 서버의 주소입니다. 이렇게 하면 방금 설정한 네임 서버를 테스트하고 있다는 것을 확실히 할 수 있습니다.
  • 이름 서비스가 작동하지 않으면 이름이 의도한 IP 번호로 해결되지 않을 수 있으므로 호스트 이름 대신 IP 번호를 사용합니다.

유사한 방식으로 설정한 다른 호스트 이름을 확인하십시오.

  • 반환된 IP 주소가 잘못된 경우 수정하십시오.
  • 찾을 수 없는 경우 철자를 확인하십시오.
  • 찾을 수 없는 경우 ISPConfig에서 이름을 작성한 FQDN 끝에 점이 있는지 확인하십시오.
  • “연결 시간 초과, 서버에 도달할 수 없음”: 네임 서버가 실행 중이지 않거나 네트워크 연결이 끊어졌습니다. 예를 들어 IP 번호를 ping하여 네트워크를 확인하십시오. 호스트가 실행 중인지 확인하십시오. Debian 및 Ubuntu에서 이름 서비스가 실행 중인지 확인하십시오. systemctl status bind9.service.
  • 위의 모든 방법으로 작동하는 이름 서비스를 얻지 못하면 도구 장으로 이동하십시오.

존 정보를 확인하십시오. 특히 네임 서버를 확인하십시오:

root@ns1:~# dig @192.168.250.73 xyzzy.tld

; <<>> DiG 9.10.3-P4-Debian <<>> @192.168.250.73 xyzzy.tld
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 64352
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 3

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;xyzzy.tld. IN A

;; ANSWER SECTION:
xyzzy.tld. 3600 IN A 192.168.250.71

;; AUTHORITY SECTION:
xyzzy.tld. 3600 IN NS ns1.xyzzy.tld.
xyzzy.tld. 3600 IN NS ns2.xyzzy.tld.

;; ADDITIONAL SECTION:
ns1.xyzzy.tld. 3600 IN A 192.168.250.73
ns2.xyzzy.tld. 3600 IN A 192.168.250.75

;; Query time: 0 msec
;; SERVER: 192.168.250.73#53(192.168.250.73)
;; WHEN: Fri Aug 10 15:41:53 EEST 2018
;; MSG SIZE rcvd: 122

root@ns1:~#

Dig는 쿼리를 보낼 네임 서버를 @-매개변수에서 가져옵니다. 거기에 네임 서버의 IP 번호를 입력하십시오.

Dig가 NS 레코드를 올바르게 표시하고 A 레코드에서 네임 서버의 올바른 IP 번호를 표시하면 상황이 좋습니다.

이제 다른 네임 서버를 사용하여 위 테스트를 수행하십시오. ns2에 로그인할 필요 없이 명령을 다시 실행하되 다른 서버의 IP 번호를 사용하십시오. 이는 다른 네임 서버도 제대로 작동하는지 확인하기 위한 것입니다.

이제 설정한 새로운 네임 서버를 사용하도록 워크스테이션을 설정하여 추가 테스트를 수행할 수 있습니다. 워크스테이션에서 DNS 서버를 변경해야 하며, 운영 체제에 따라 방법을 매뉴얼이나 인터넷에서 찾아보십시오. Linux에서는 /etc/resolv.conf 파일을 편집할 수 있습니다. Windows에서는 네트워크 설정에 있습니다(자동으로 IP 주소를 얻도록 설정한 곳과 동일한 위치).

1.4 역 이름 서비스

역 이름 서비스(PTR 레코드)가 필요하지 않은 경우 이 부분을 건너뛰십시오.

역 이름 서비스는 IP 주소가 주어졌을 때 이름을 해결합니다. 이는 일반적인 이름 서비스의 역 작업입니다.

조직 내부에 이름 서비스를 설정한 경우 동일한 네임 서버에서 역 이름 서비스를 설정할 수 있습니다. ISPConfig를 사용할 때는 먼저 역 존을 생성한 다음 해당 존에서 각 IP 번호에 대한 PTR 레코드를 생성합니다.

역 이름 서비스가 공용 인터넷에서 작동해야 하는 경우, 자신의 네임 서버를 사용할 수 없습니다. 왜냐하면 그것이 IP 역 존에 대한 권한 있는 네임 서버가 아닐 가능성이 높기 때문입니다. 만약 그렇다면, 당신은 그것을 알고 있어야 합니다. 서비스 제공업체나 IP 번호를 제공한 회사에 연락하여 역 이름 서비스를 설정해 달라고 요청하십시오. 필요한 PTR 레코드를 알려주거나, 역 이름 서비스를 사용하는 방법에 대한 웹 사용자 인터페이스를 제공하는 호스팅 회사에서 확인하십시오.

ISPConfig로 역 이름 서비스를 설정하려면 역 서비스에 대한 DNS 존을 생성해야 하며, 이는 IP 번호의 처음 세 옥텟을 역순으로 하여 이름을 지정하고 끝에 “.in-addr.arpa”를 추가해야 합니다. 이 경우 IP 번호는 서브넷 192.168.250/24에서 가져온 것이므로 역 존의 이름은 250.168.192.in-addr.arpa입니다. 역 존에도 NS 레코드를 추가하는 것을 잊지 마십시오.

역 존

그 역 존에서 PTR 레코드를 다음과 같이 생성합니다:

PTR 레코드

테스트는 host 명령으로 쉽게 수행할 수 있습니다:

root@ns1:~# host 192.168.250.71 192.168.250.73
Using domain server:
Name: 192.168.250.73
Address: 192.168.250.73#53
Aliases: 

71.250.168.192.in-addr.arpa domain name pointer web.xyzzy.tld.

동일한 IP 번호에 대해 여러 PTR 레코드를 설정할 수 있습니다. 그러면 역 쿼리는 모두 반환됩니다. 원하지 않을 수 있으므로, 무엇을 하고 있는지 알고 있지 않다면 그렇게 하지 마십시오.

예를 들어 메일 서버 mail.xyzzy.tld를 설정한 경우 PTR 레코드를 설정해야 합니다. 대부분의 메일 서버는 발신 IP 번호가 메일 서버가 사용하는 호스트 이름으로 해결되는지 확인합니다.

1.5 도구

이름 서비스가 시작되지 않았다고 의심되는 경우 다음으로 확인하십시오:

systemctl status bind9.service

“Active: active (running) …”가 표시되면 이름 서비스가 작동 중입니다. “network unreachable resolving … AAAA “와 같은 가능성 있는 메시지는 신경 쓰지 마십시오. 그것이 표시되면 IPv6 네트워크가 사용 가능하지 않다는 의미입니다.

이름 서비스가 실행 중이지만 host 명령으로 테스트할 때 응답이 반환되지 않으면 존 파일이 잘못되었을 수 있습니다. bind가 존을 수용하지 않으면 named-checkzone을 사용하십시오. 잘못된 존 파일은 (Debian GNU/Linux에서) /etc/bind/pri<존 이름>.err 파일에 있으며, 파일 이름 끝에 .err가 추가됩니다. 다음과 같이 확인하십시오:

root@ns1:~# named-checkzone 250.168.192.in-addr.arpa /etc/bind/pri.250.168.192.in-addr.arpa.err
zone 250.168.192.in-addr.arpa/IN: has no NS records
zone 250.168.192.in-addr.arpa/IN: not loaded due to errors.
root@ns1:~#

오류를 수정하고 ISPConfig를 사용하여 ISPConfig 패널에서 설정한 경우 수정하십시오.

로그 파일에 오류가 있을 수 있으며, 이름 서비스를 중지하고 시작하여 /var/log/syslog 파일의 내용을 확인하십시오. 예를 들어 다음과 같이:

grep named /var/log/syslog

이름 서비스 설정을 확인하는 웹사이트가 있으며, 인터넷 검색 엔진을 사용하여 찾을 수 있습니다. zonecheck.org, mxtoolbox.com, zonemaster.net을 알고 있습니다.

1.6 도움 요청하기

포럼에서 도움을 요청할 때 도메인 이름을 숨기면 도움이 어렵습니다. 도메인이 무엇인지 공개하면 설정을 확인하고 문제가 있을 경우 조언을 제공하기가 쉽습니다. 도메인 이름을 공개적으로 밝힐 수 없고 이 튜토리얼 및 인터넷의 문서가 도움이 되지 않는 경우, 도메인 이름을 신뢰할 수 있는 사람에게 문의하여 이름 서비스에 대해 아는 사람에게 도움을 요청하십시오.

1.7 도메인 등록하기

이름 서비스가 존에 대해 제대로 작동하면 등록할 수 있습니다. 또는 이전에 이미 등록된 경우 이름 서버를 등록에 추가할 수 있으며, 도메인은 인터넷에서 사용할 수 있습니다. 이름 서비스 정보가 전 세계로 전파되는 데 4 – 48시간이 걸립니다.

xyzzy.tld를 등록하고 이름 서버 ns1.xyzzy.tld가 있는 경우, 이름 서버에 대한 IP 번호를 호스트 이름 대신 제공해야 합니다. ns1.xyzzy.tld라는 호스트 이름만 제공하면 이름 서버를 어떻게 찾을 수 있겠습니까? IP 번호가 ns1.xyzzy.tld에만 있기 때문에 IP 번호를 모르면 어떻게 접근할 수 있겠습니까? 이 딜레마를 해결하는 또 다른 방법은 글루 레코드를 사용하는 것입니다(앞서 참조), 그러면 이름 서버에 대해 IP 번호 대신 이름을 사용할 수 있습니다.

다른 도메인 plugh.tld를 등록할 때, ns1.xyzzy.tld 및 ns2.xyzzy.tld와 같은 호스트 이름으로 이름 서버를 제공할 수 있습니다. xyzzy.tld 도메인이 이미 잘 등록되어 있고 이름 서버가 알려져 있기 때문입니다.

Share: X/Twitter LinkedIn

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

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