고고잉 2023. 1. 1. 19:03

[root@localhost ~]# yum install bind*

기본설정:
[root@localhost ~]# cd /var/named/
[root@localhost named]# vim /etc/named.conf

도메인 등록
[root@localhost named]# vi /etc/named.rfc1912.zones 

zone "kh.com" IN{
        type master;
        file "kh.com.zone";
};

[root@localhost ~]# cd /var/named/
[root@localhost named]# ls
chroot  data  dynamic  named.ca  named.empty  named.localhost  named.loopback  slaves

named.localhost 복사
[root@localhost named]# cp named.localhost kh.com.zone
[root@localhost named]# ls -l
합계 36
drwxr-x--- 6 root  named 4096 2022-07-11 20:38 chroot
drwxrwx--- 2 named named 4096 2016-03-16 22:25 data
drwxrwx--- 2 named named 4096 2016-03-16 22:25 dynamic
-rw-r----- 1 root  root   152 2022-07-11 20:39 kh.com.zone
-rw-r----- 1 root  named 2075 2014-04-23 21:57 named.ca
-rw-r----- 1 root  named  152 2009-12-15 21:27 named.empty
-rw-r----- 1 root  named  152 2007-06-21 19:09 named.localhost
-rw-r----- 1 root  named  168 2009-12-15 21:27 named.loopback
drwxrwx--- 2 named named 4096 2016-03-16 22:25 slaves

소유그룹 변경
[root@localhost named]# chown :named kh.com.zone 
[root@localhost named]# ls -l
합계 36
drwxr-x--- 6 root  named 4096 2022-07-11 20:38 chroot
drwxrwx--- 2 named named 4096 2016-03-16 22:25 data
drwxrwx--- 2 named named 4096 2016-03-16 22:25 dyna
-rw-r----- 1 root  named  152 2022-07-11 20:39 kh.com.zone
-rw-r----- 1 root  named 2075 2014-04-23 21:57 named.ca
-rw-r----- 1 root  named  152 2009-12-15 21:27 named.empty
-rw-r----- 1 root  named  152 2007-06-21 19:09 named.localhost
-rw-r----- 1 root  named  168 2009-12-15 21:27 named.loopback
drwxrwx--- 2 named named 4096 2016-03-16 22:25 slaves

파일 수정
[root@localhost named]# vim kh.com.zone

$TTL 1D
@       IN SOA  ns1.kh.com. linux.kh.com (

                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      ns1.kh.com.
ns1     A       40.40.40.40
linux   A       40.40.40.100
                                   
서비스 재시작
[root@localhost named]# service named restart

[root@localhost named]# chkconfig --level 5 named on
[root@localhost named]# chkconfig --list named


win7 에서
nslookup 에서
server x.x.x.x로 변경가능

-----------------------------------

네임서버를 두대 이상으로 구성한다면 주 네임 서버(한대)와 보조 네임(한대이상) 서버를 만든다

주 네임 서버 (192.168.30.20)에서
[root@localhost named]# vim kh.com.zone 
로 들어가서 NS를 추가한다
$TTL 1D
@       IN SOA  ns1.kh.com. admin.kh.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      ns1.kh.com.
        NS      ns2.kh.com.
ns1     A       192.168.30.20cd 
ns2     A       192.168.30.30
hello   A       192.168.30.10
server3 A       192.168.30.30
aidmin  A       192.168.30.100

그리고 보조 네임 서버 (192.168.30.30)에서
[root@localhost named]# vi /etc/named.rfc1912.zones 
안에 아래의 내용으로 변경한다.
zone "kh.com" IN {
        type slave;
        file "slaves/kh.com.zone";
        masters { 192.168.30.20; };
};

그리고 기존에 있던 kh.com.zone을 삭제한다.
 [root@localhost named]# rm kh.com.zone

(주네임서버 변경 후)
named 재시작 후 kh.com.zone 파일을 열어 확인한다.
[root@localhost named]# service named restart
named 정지 중:                                             [  OK  ]
named 시작 중:                                             [  OK  ]
[root@localhost named]# ls
chroot  dynamic   named.empty      named.loopback
data    named.ca  named.localhost  slaves
[root@localhost named]# cd slaves
[root@localhost slaves]# ls
kh.com.zone
[root@localhost slaves]# vim kh.com.zone
[root@localhost slaves]# 



캐시정보를 지울때
[root@localhost named]# rndc flush


* vim 파일 열었을 때 swp 임시파일 내용이 뜬다면 임시저장된 파일을 지워야한다. 창 뜬곳에서 d 누르면 지워짐


조건부 전달자 (영상보고 다시 작성하기)
첫번째 방법
모든 요청에 대해서 전달자를 사용
[root@localhost named]# vim /etc/named.conf
option에 추가하면 모든 사용자에대해 전달자를 사용한다는 뜻
forward first;
        forwarders {45.0.0.200;};

두번째 방법
특정 도메인에 대해서만 전달자를 사용하는 조건부 전달자
[root@localhost named]# vim /etc/named.rfc1912.zones 
zone 추가 (특정 대상)
zone "a.com" IN {
        type forward;
        forward only;
        forwarders {12.0.0.200;};
};