반응형

http://cafe.naver.com/dnspro/12296

안녕하십니까 ?

2개월동안 서버구축하느라 고생했습니다.


웹서버, DNS서버세팅


아래  DNS서버  실행은 잘되고 있습니다.

혹시 문제될 부분이 없는가 해서 설정화일 올려 봅니다.


수정해야 할부분이 있으면 가르켜 주셨으면 합니다.

참!!, 1가지 문제는 리눅스 리부팅할때 DNS서버 정지후에 리부팅을 해야지 그렇지 아니면

stoping named 에서 더이상 넘어가지 않아 강제로 리셋을 해야 합니다.

왜, 그런지요 ???


아래 도메인과 IP는 실제와 다르게 표시했습니다.


도메인등록업체 네임서버  1차 : ns1.aaaaa.com      IP : 114.222.13.26
                                    2차 : ns2.aaaaa.com      IP : 114.222.13.26


                                                                       1,2차 IP는 동일합니다.

                                                                       이유는 !P는 한개인데 한개만 등록할려니까

                                                                       두개를 입력해야 등록이 되네요.

                                                                        그래서.. 그 이유가 뭔지 모르겠습니다.

                                                             

CentOS 5.3

Version BIND-9.3.4-P1


인터넷 사용환경  : 인터넷유동아이피, 공유기, VPN고정아이피


#--------- named.caching-nameserver.conf--------------

options {

 listen-on port 53 { any; };
 listen-on-v6 port 53 { ::1; };
 directory  "/var/named";
 dump-file  "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";


 version "No!!";

 allow-query     { any; };
};


logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};


view localhost_resolver {
 match-clients     { any; };
 match-destinations { any; };
 recursion no;
 include "/etc/named.rfc1912.zones";
};



include "/etc/rndc.key";


controls {
 inet 127.0.0.1 port 953
 allow { 127.0.0.1; } keys { "rndckey"; };
};


#------------named.rfc1912.zones---------------

// named.rfc1912.zones:
//
// Provided by Red Hat caching-nameserver package
//
// ISC BIND named zone configuration for zones recommended by
// RFC 1912 section 4.1 : localhost TLDs and address zones
//
// See /usr/share/doc/bind*/sample/ for example named configuration files.
//
zone "." IN {
 type hint;
 file "named.ca";
};

zone "localdomain" IN {
 type master;
 file "localdomain.zone";
 allow-update { none; };
};

zone "localhost" IN {
 type master;
 file "localhost.zone";
 allow-update { none; };
};

zone "0.0.127.in-addr.arpa" IN {
 type master;
 file "named.local";
 allow-update { none; };
};

zone "0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa" IN {
        type master;
 file "named.ip6.local";
 allow-update { none; };
};

zone "255.in-addr.arpa" IN {
 type master;
 file "named.broadcast";
 allow-update { none; };
};

zone "0.in-addr.arpa" IN {
 type master;
 file "named.zero";
 allow-update { none; };
};


#------ 여기까지는 기본설정 그대로사용합니다.

#------ 아래 ZONE부분은 사용자설정부분.


zone "aaaaa.com" IN {
 type master;
 file "aaaaa.com.zone";
 allow-update { none; };
};


zone "eeeee.co.kr" IN {
 type master;
 file "eeeee.co.kr.zone";
 allow-update { none; };
};


zone "ccccc.com" IN {
 type master;
 file "ccccc.com.zone";
 allow-update { none; };
};





zone "13.222.114.in-addr.arpa" IN {
 type master;
 file "aaaaa.com.rev";
 allow-update { none; };
};


#---------------------------------------



#------------aaaaa.com.zone------------

$TTL 86400
@ IN SOA aaaaa.com. root.aaaaa.com (
  42  ; Serial
  3H  ; Refresh
  15M  ;Retry
  1W  ;Expiry
  1D)  ;Minimum
 
 IN  NS ns1.aaaaa.com.

 IN  A  114.222.13.26
www IN  A  114.222.13.26
web IN  A  114.222.13.26


 

#--------------aaaaa.com.rev-------------

$TTL 86400
@ IN SOA aaaaa.com. root.aaaaa.com (
  2009073012 ; Serial
  28800  ; Refresh
  14400  ;Retry
  3600000  ;Expiry
  86400)  ;Minimum
 
 IN  NS ns1.aaaaa.com.

26 IN  PTR  aaaaa.com.
26 IN  PTR  www.aaaaa.com.


#------------ccccc.co.kr.zone----------------

$TTL 86400
@ IN SOA ccccc.co.kr. root.ccccc.co.kr  (
  42  ; Serial
  3H  ; Refresh
  15M  ;Retry
  1W  ;Expiry
  1D)  ;Minimum
 
 IN  NS ns1.aaaaa.com.  <= ccccc.co.kr 에서 네임서버 이곳에 이렇게 표시 하는것이 정확한지요 ?

 IN  A  114.222.13.26
www IN  A  114.222.13.26


#-----------------------------------------------

named.ca, named.root.hines 화일은 생략

현재 다른 4군데의 도메인 접속 잘되고 문제 없습니다.


위의 화일에 문제가 없다면..

처음 DNS 설정하시는 여러분들도 그대로 IP와 도메인만 고쳐셔

사용하시면 확실히 잘됩니다.


설정하면서 고생삽질했던부분은  아래 2출 추가해야할 부분이었습니다.


#-------------------------------------------------

# /etc/sysconfig/iptables 화일의 추가부분 (아래두줄)

# DNS설정후 로컬에서는 잘 되는데 외부접속이 되지않았던 이유 입니다.

# 아래 두줄 추가로 해결 되었습니다.


# Firewall configuration written by system-config-securitylevel
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:RH-Firewall-1-INPUT - [0:0]
-A INPUT -j RH-Firewall-1-INPUT
-A FORWARD -j RH-Firewall-1-INPUT
-A RH-Firewall-1-INPUT -i lo -j ACCEPT
-A RH-Firewall-1-INPUT -p icmp --icmp-type any -j ACCEPT
-A RH-Firewall-1-INPUT -p 50 -j ACCEPT
-A RH-Firewall-1-INPUT -p 51 -j ACCEPT
-A RH-Firewall-1-INPUT -p udp --dport 5353 -d 224.0.0.251 -j ACCEPT
-A RH-Firewall-1-INPUT -p udp -m udp --dport 631 -j ACCEPT
-A RH-Firewall-1-INPUT -p tcp -m tcp --dport 631 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

아래두줄 추가

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 53 -j ACCEPT  => 추가부분!!
-A RH-Firewall-1-INPUT -m state --state NEW -m udp -p udp --dport 53 -j ACCEPT => 추가부분!!


-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited
COMMIT

반응형
반응형


http://hckim.tistory.com/196?srchid=BR1http%3A%2F%2Fhckim.tistory.com%2F196

아래의 내용은 실제 서버의 설정을 그대로 보여주고 있습니다.

bind 9.3 부터는 환경설정 파일로 name.caching-nameserver.conf 사용합니다.

미리설치된 bind가 없다면
yum install bind


설치가 완료되면 환경설정 을 아래와 같이 해 준다

1) Bind 환경설정
# vi /etc/named.caching-nameserver.conf

// named.caching-nameserver.conf
...
options {
//    listen-on port 53 { 127.0.0.1; };
// 기본적으로 port 53 으로 자신만이  접근 가능하게 되어있다.
// 외부접근 가능 하게 any로 바꾼다.
      listen-on port 53 { any; };
//        listen-on-v6 port 53 { ::1; };
// ip v6 에 대한 것으로 차후 서비스를 위해 ~..주석처리.
        directory       "/var/named";
// zone file에 대한 기본 디렉토리 설정
        dump-file       "/var/named/data/cache_dump.db";
// 캐쉬 덤프 파일 생성 위치와 파일 이름
        statistics-file "/var/named/data/named_stats.txt";
// 통계파일 생성 위치와 파일 이름
        memstatistics-file "/var/named/data/named_mem_stats.txt";
// 메모리 관련 통계파일 위치 이름

        // Those options should be used carefully because they disable port
        // randomization
        // query-source    port 53;    
query-source    port 53;  
// 쿼리를 받아 들일 소스포트
        // query-source-v6 port 53;
//     allow-query     { localhost; };
        allow-query     { any; };
// 쿼리 허용할 ip 대역
};
logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};
// 실행에 있어 디버깅시 참고 할 수 있는 로그파일 생성 위치
view localhost_resolver {
//        match-clients      { localhost; };
//        match-destinations { localhost; };
        match-clients      { any; };
        match-destinations { any; };
// 로컬 리졸버 허용 클라이언트 지정

        recursion yes;
        include "/etc/named.rfc1912.zones";
};


2) zone 파일 지정
vi /etc/named.rfc1912.zones

// named.rfc1912.zones:
//
// Provided by Red Hat caching-nameserver package
//
// ISC BIND named zone configuration for zones recommended by
// RFC 1912 section 4.1 : localhost TLDs and address zones
//
// See /usr/share/doc/bind*/sample/ for example named configuration files.
//
zone "." IN {
        type hint;
        file "named.ca";
};
...
zone "abydos.kr" IN {
        type master;
        file "abydos.kr.zone";
        allow-update { none; };
};
//추가

3)zone 파일 생성(미리생성된 localdomain.zone 파일을 복사해서 수정한다)

# cd /var/named
# ls
# cp localdoamin.zone abydos.kr.zone

4) 생성한 zone파일을 수정한다.
# vi abydos.kr.zone

$TTL    86400
@               IN SOA  abydos.kr. root.abydos.kr (
                                        2009080201      ; serial (d. adams)
                                        3H              ; refresh
                                        15M             ; retry
                                        1W              ; expiry
                                        1D )            ; minimum
                IN NS           ns.abydos.kr.
                IN MX 10        abydos.kr.
                IN MX 10        mail.abydos.kr.
                IN MX 10        aspmx.l.google.com.
                IN MX 20        alt1.aspmx.l.google.com.
                IN MX 20        alt2.aspmx.l.google.com.
                IN MX 30        aspmx2.googlemail.com.
                IN MX 30        aspmx3.googlemail.com.
                IN MX 30        aspmx4.googlemail.com.
                IN MX 30        aspmx5.googlemail.com.
                IN A            114.207.245.36
ns              IN A            114.207.245.36
www             IN A            114.207.245.36
docs            IN CNAME        ghs.google.com.
sites           IN CNAME        ghs.google.com.
calendar        IN CNAME        ghs.google.com.
mail            IN CNAME        ghs.google.com.
googlea3e90e45321c80c2          IN CNAME        google.com.
ftp             IN CNAME        @
*               IN CNAME        @


제 경우에는 구글로 이메일서비스와 몇가지 서비스를 쓰고있어서 여러가지 설정이 추가되어 있습니다.

5)설정이 바르게 되었는지 확인

# named-checkconf /etc/named.rfc1912.zones
# named-checkconf /etc/named.caching-nameserver.conf
# named-checkzone abydos.kr /var/named/abydos.kr.com.zone


6)테스트

[root@ns named]# nslookup
> server 127.0.0.1
Default server: 127.0.0.1
Address: 127.0.0.1#53
> abydos.kr
Server:         127.0.0.1
Address:        127.0.0.1#53

Name:   abydos.kr
Address: 114.207.245.36
> ftp.abydos.kr
Server:         127.0.0.1
Address:        127.0.0.1#53

ftp.abydos.kr   canonical name = abydos.kr.
Name:   abydos.kr
Address: 114.207.245.36


여기까지 해서 CentOS .5.2 Final + BIND 9.3.4의 환경에서 도메인네임서비스 설정이 끝났습니다.


7)zone파일 설명

TTL    86400 - time to live의 약자 다른 네임서버에서 읽어간 정보가 살아있는 시간이다. 초단위
@ - ORIGIN 의 의미 public domain을 의미 즉  @ = linux.com.
IN - IN 다음 의 설정을 이용
SOA - SOA start of authority 해당 도메인의 정보를 가지고 있고 root@abydos.kr 는 관리자임을 나타낸다.
2009080201      ; serial (d. adams) - 해당 정보의 시리얼 보통 날짜정보 + 카운터로 표시된다.
3H              ; refresh - 리프레쉬 타임 주기
15M             ; retry - S로의 장애 발생시 재 접속  시간
1W              ; expiry - 존파일 유효기간,
1D             ; minimum - TTL과 같은 의미 다른 서버에서 zone 데이터를 가져갔을때 그 데이터에 대한 유효기간
IN NS           ns.abydos.kr. - 네임서버 이름 지칭
IN MX 10        mail.abydos.kr. - mailserver 이름 지칭
IN A            192.168.10.200 - ip 할당
mail            IN CNAME        www - mail server의 ip는 www의 설정을 가져온다.
ftp             IN CNAME        @ - ORIGIN 변수의 값을 그대로 사용
*               IN CNAME       


8)DNS서비스를 이용하여 부하를 분산하고 싶은 경우(www.abydos.kr 주소를 여러개 적어서 분산)

www             IN A            192.168.10.200
www             IN A            192.168.10.201
www             IN A            192.168.10.202

반응형
반응형

DNS 서버 구축 및 운용 PDF

반응형
반응형

Howto for CentOS 4 here : http://www.wains.be/index.php/2007/02/04/centos-chroot-dns-with-bind/

1. Install packages :

yum install bind bind-chroot bind-libs bind-utils caching-nameserver

2. Configure RNDC :

cd /var/named/chroot/etc
rndc-confgen > rndc.key
chown root:named rndc.key

Edit rndc.key so it looks like this :

key "rndckey" {
algorithm hmac-md5;
secret "SGsvd1dF+mv+yU4ywCCkkg==";
};

You DON’T NEED anything else in the file (you must remove some option lines !)

A symlink in /etc exists and points to the rndc.key file we’ve just created, named expects that file there in order to be able to authenticate against rndc.

3. Configure /var/named/chroot/etc/named.conf

// we include the rndckey (copy-paste from rndc.key created earlier)
key "rndckey" {
      algorithm hmac-md5;
      secret "SGsvd1dF+mv+yU4ywCCkkg==";
};

// we assume our server has the IP 192.168.254.207 serving the 192.168.254.0/24 subnet
controls {
        inet 127.0.0.1 allow { 127.0.0.1; } keys { "rndckey"; };
        inet 192.168.254.207 allow { 192.168.254.0/24; } keys { "rndckey"; };
};

options {
        directory "/var/named";
        pid-file "/var/run/named/named.pid";

        recursion yes;

        allow-recursion {
                127.0.0.1;
                192.168.254.0/24;
                };

        // these are the opendns servers (optional)
        forwarders {
                208.67.222.222;
                208.67.220.220;
        };

        listen-on {
                127.0.0.1;
                192.168.254.207;
                };

        /*
         * If there is a firewall between you and nameservers you want
         * to talk to, you might need to uncomment the query-source
         * directive below.  Previous versions of BIND always asked
         * questions using port 53, but BIND 8.1 uses an unprivileged
         * port by default.
         */
        query-source address * port 53;

        // so people can't try to guess what version you're running
        version "REFUSED";

        allow-query {
                127.0.0.1;
                192.168.254.0/24;
                };
        };

server 192.168.254.207 {
        keys { rndckey; };
        };

zone "." IN {
        type hint;
        file "named.ca";
        };

// we assume we have a slave dns server with the IP 192.168.254.101
zone "test.be" IN {
        type master;
        file "data/test.be.zone";
        allow-update { none; };
        allow-transfer { 192.168.254.101; };
        };

4. Our first zone

Let’s say I own the domain test.be

We create our first zone under /var/named/chroot/var/named/data/test.be.zone

Here’s an example :

$ttl 38400
test.be.       IN      SOA     ns.test.be. admin.test.be. (
                       2007020400   ; Serial
                       10800           ; Refresh after 3 hours
                       3600            ; Retry after 1 hour
                       604800          ; Expire after 1 week
                       86400 )         ; Minimum TTL of 1 day
test.be.       IN      NS      ns.test.be.

test.be.               IN      MX      1       mx.test.be.
test.be.               IN      MX      5       mx2.test.be.

www.test.be.           IN      A       192.168.100.5
ns.test.be.           IN      A       192.168.100.10
mx.test.be.          IN      A       192.168.100.20
mx2.test.be.         IN      A       192.168.100.21
mail.test.be.          IN      CNAME   mx.test.be.

5. Start the service and make sure it’ll start at boot

service named start
chkconfig named on

Make sure it’s running :
# rndc status
number of zones: 1
debug level: 0
xfers running: 0
xfers deferred: 0
soa queries in progress: 0
query logging is OFF
recursive clients: 0/1000
tcp clients: 0/100
server is up and running

6. Query

# nslookup mx.test.be. 127.0.0.1
Server:         127.0.0.1
Address:        127.0.0.1#53

Name:   mx.test.be
Address: 192.168.100.20

# nslookup www.google.com. 127.0.0.1
Server:         127.0.0.1
Address:        127.0.0.1#53

Non-authoritative answer:
www.google.com  canonical name = www.l.google.com.
Name:   www.l.google.com
Address: 216.239.59.99
Name:   www.l.google.com
Address: 216.239.59.103
Name:   www.l.google.com
Address: 216.239.59.104
Name:   www.l.google.com
Address: 216.239.59.147

7. /etc/resolv.conf

If the query made on the previous point is working, you can set up /etc/resolv.conf on the server.

It should look like this :
search test.be
nameserver 127.0.0.1

반응형
반응형


만일 설치부터 필자를 계속 따라오신 분이라면 현재의 서버엔 BIND 9가 설치되어 있을 것이다.

확인해 보도록 하자.

 

# rpm -qa | grep bind
bind-libs-9.2.4-2
bind-utils-9.2.4-2
ypbind-1.17.2-3
bind-9.2.4-2
bind-chroot-9.2.4-2

 

네임서버도 설치되어 있나 확인해 보자.

# rpm -qa | grep name
caching-nameserver-7.3-3


 

이젠 서버에선 DNS를 설정할 준비가 끝났다.

 

아래 점섬내의 글은 BIND가 설치되지 않으신 분들만 보도록 하자~~

=======================================================================================

1. 설치

설치는 간단하게 rpm 설치 하는 법만 설명하도록 하겠습니다.
RH9에서 DNS와 관련된 패키지는 다음과 같습니다. (bind9)


bind-9.2.1-16          : DNS (도메인 이름 시스템) 서버.
bind-devel-9.2.1-16 : bind DNS 개발을 위해 필요한 파일들과 라이브러리들이 포함되어 있습니다.
bind-utils-9.2.1-16   : DNS 네임 서버들을 질의(query)하는 유틸리티.
caching-nameserver-7.2-7  : 캐싱 네임 서버를 설정하는데 필요한 설정 파일들.
redhat-config-bind-1.9.0-13 : Red Hat DNS 설정 도구.

 

위 패키지들 중에 bind-devel-9.2.1-16 는 설치하지 않도록 하겠습니다. ^^;

개발에 필요한 것이기 때문이죠.
위 패키지들을 rpm -qa | grep bind 해서 확인하시고 있을경우 삭제합니다.

 

# rpm -e --nodeps bind-libs-9.2.4-2
# rpm -e --nodeps bind-utils-9.2.4-2
# rpm -e --nodeps ypbind-1.17.2-3

 

다음과 같이 설치하세요

 

# rpm -Uvh /home/free/e-cnn/dns/bind-utils-9.2.1-16.i386.rpm
# rpm -Uvh /home/free/e-cnn/dns/bind-9.2.1-16.i386.rpm
# rpm -Uvh /home/free/e-cnn/dns/redhat-config-bind-1.9.0-13.noarch.rpm
# rpm -Uvh /home/free/e-cnn/dns/caching-nameserver-7.2-7.noarch.rpm

 

이렇게 설치가 끝났다면, dns 실행 준비가 된 것 입니다.

- CentOS 4.1 설치시 패키지선택에서 DNS 이름서버를 선택하면 위의 내용이 모두 설치됨.
  (위와 같은 설치과정을 거칠 필요가 없음)

=======================================================================================

 

이해를 돕기위해 사용되는 예제에서 필자는 test.net 이란 가상의 도메인과 192.168.1.100 이란 공인IP를 사용하것으로 하겠다. (참고로 192.168.~ 로 시작되는 IP는 99% 공유기 IP이다.)

설마 아래의 내용을 보고 실제로 test.net으로 따라하시는 분은 없을거라 믿는다..

 

우선 도메인을 구입하기 위해서 whois.co.kr 에 접속했다.

test.net이란 도메인을 검색했더니 다행스럽게도 소유자가 없는 도메인으로 나와서

바로 회원으로 가입하고 1년 사용료 2만얼마를 내고 도메인을 구입했다.

 

네임서버를 지정하기 위해서 [내 도메인 관리]의 [호스트 관리] 메뉴로 들어가서...

ns.test.net 이란 호스트을 만들고 IP입력란에 192.168.1.100 라고 입력한후 호스트명 생성을 클릭.

 

[내 도메인 관리] - [네임서버 변경]으로 들어가서 1차 네임서버에 ns.test.net , 2차 네임서버는 whois에서 제공하는 네임서버명을 입력하고 저장했다.

(참고로 com 이나 .net은 외국도메인이라 적용되는데 평균 24시간정도가 소요된다.)

 

이제 다시 CentOS로 들어와서...

 

1.서버에서 도메인을 제일 먼저 찾는 곳

# vi /etc/hosts
=======================================================================================
127.0.0.1        test.net      localhost
192.168.1.100  ns.test.net  ns
=======================================================================================
위와 같이 바꾸도록 하자

 

2.서버에서 쓸 dns

# vi /etc/resolv.conf
=======================================================================================
domain test.net
search test.net
nameserver 192.168.1.100
nameserver 168.126.63.1
nameserver 168.126.63.2
=======================================================================================

 

3.도메인에 대하 ip를 찾을 때 참조할 순서
# vi /etc/host.conf
=======================================================================================
order hosts,bind

==> 초기 설치시 이렇게 되어 있으며, 의미는 /etc/hosts파일부터 찾고, bind에서 찾는다는의미
=======================================================================================

 

4.Zone 파일 및 케시 DNS서버에 대한 설정

# vi /etc/named.conf
=======================================================================================
options {
        directory "/var/named";        // zone 파일을 저장할 디렉토리
        // query-source address * port 53;  // DNS 서버의 ip와 포트 설정 (기본)
controls { //==> 127.0.0.1 에서 rndc로 접속시 컨트롤 가능하다는 의미
        inet 127.0.0.1 allow { localhost; } keys { rndckey; };
};
// 캐시 네임 서버 설정
zone "." IN {
        type hint;
        file "named.ca";
};
// localhost 에 대한 설정
zone "localhost" IN {
        type master;
        file "localhost.zone";
        allow-update { none; };  //다이나믹 하게 업데이트를 허용할것인지 설정한다. 대부분 none
};
// 127.0.0.X 에 대한 역 도메인
zone "0.0.127.in-addr.arpa" IN {
        type master;
        file "named.local";
        allow-update { none; };
};
include "/etc/rndc.key";
=======================================================================================

 

위 파일 내용들은 caching-nameserver에서 기본적으로 생성되는 것들이다. 대부분의 서버에서 별다른 설정하지 않고 사용하면 되고, 중요한 것은 다음 줄부터이다. test.net 이라는 도메인을 셋팅하도록 하겠다.

 

named.conf파일의 맨 아랫 줄에 아래의 내용을 추가한다.

=======================================================================================
zone "test.net" IN {
type master;
file "test.net.zone";
allow-update { none; };
};

zone "1.168.192.in-addr.arpa" { //reverse domain - IP가 역으로 입력되어 있는 것에 주목~!!
type master;
file "test.net.rev";
allow-update { none; };
};
=======================================================================================

 

zone 파일명은 test.net.zone으로 하였다.

위에서 추가한 도메인에 대한 zone 파일을 만들도록 하자..

 

# vi /var/named/chroot/var/named/test.net.zone
=======================================================================================
$TTL    86400
@       IN      SOA     ns.test.net. root.ns.test.net.  (
                2005101311 ; Serial
                28800      ; Refresh
                14400      ; Retry
                3600000    ; Expire
                86400 )    ; Minimum
                IN      NS      ns.test.net.
                IN      MX  0   mail.test.net.
;
localhost       IN      A       127.0.0.1
@                 IN      A       192.168.1.100
www            IN      A       192.168.1.100

mail              IN      A       192.168.1.100
*                  IN      A       192.168.1.100
=======================================================================================
# ln -s /var/named/chroot/var/named/test.net.zone /var/named/test.net.zone

(반드시 심볼릭 링크를 걸어야 한다~~!!!)


# vi /var/named/chroot/var/named/test.net.rev
=======================================================================================
$TTL    86400
@       IN      SOA     ns.test.net. root.ns.test.net.  (
                2005101312 ; Serial
                28800      ; Refresh
                14400      ; Retry
                3600000    ; Expire
                86400 )    ; Minimum
                IN      NS      ns.test.net.
;
100             IN      PTR     ns.test.net.
100             IN      PTR     www.test.net.
100             IN      PTR     test.net.
=======================================================================================
위에서 100이란 숫자는 IP의 제일 마지막에 해당하는 숫자이다.

# ln -s /var/named/chroot/var/named/test.net.rev /var/named/test.net.rev

 

자.. 이제 모든 설정은 끝났다.. 사실 이제부턴 네임서버를 변경한 후 하루정도가 지나야 확실한 결과를 얻을 수 있다. 또한 방화벽을 설치했다면 외부에서 네임서버로 접근할 수 없으니 주의한다. 네임서버의 포트는 42로 방화벽에서 이 포트를 풀어야 한다.


설치와 설정이 끝났다면, DNS 서버를 시작하도록 한다.


(1) 시작
# /etc/rc.d/init.d/named start

 

(2) 재시작
# /etc/rc.d/init.d/named reload

 

(3) 정지
# /etc/rc.d/init.d/named stop

 

(4) 서버시작시 자동으로 실행

# ntsysv

named 라는 서버스에 체크하고 OK로 저장하고 나오도록 한다.

 

(5) 호스트 네임 검사
# grep named /var/log/messages

 

(6) 설정한 도메인 확인하기

# nslookup

> server 168.126.63.1

> set type=any

> test.net
[출처] [CentOS] DNS 네임서버 설정 (BIND 9)|작성자 진아남편

 

반응형
반응형
dns_server_manual
반응형

+ Recent posts