이 페이지는 내부 서버를 위한 DNS 환경 구성을 설명한다. DNS 서버는 Ubuntu를 고려하고 단일 DNS 서버를 구성한다.
패키지 설치
Ubuntu 환경
$ sudo apt-get install bind9 bind9utils bind9-doc
/etc/default/bind9 수정
- "-f -4" 추가
# startup options for the server OPTIONS="-f -4 -u bind"
Options 파일 설정
/etc/bind/named.conf.options
options { directory "/var/cache/bind"; // ISP's domain name server forwarders { 168.126.63.1; }; dnssec-validation auto; auth-nxdomain no; # conform to RFC1035 listen-on-v6 { any; }; allow-transfer { none; }; };
Local 파일 설정
- 외부 domain: "curvc.com", local 대신 다른 이름 사용해도 됨
- 내부 IP 주소: 192.168.0.xxx로 구성된 예
/etc/bind/named.conf.local
zone "local.curvc.com" { type master; file "/etc/bind/zones/db.local.curvc.com"; }; zone "0.168.192.in-addr.arpa" { type master; file "/etc/bind/zones/db.192.168.0"; //192.168.0.0/24 subnet };
Forward Zone 설정
host.local.curvc.com이 요청될 대 참조하는 설정
- 설정이 변경할 때 Serial 숫자가 증가되어야 함
/etc/bind/zones/db.local.curvc.com
$TTL 604800 @ IN SOA ns1.local.curvc.com. admin.local.curvc.com. ( 4 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; name servers - NS records IN NS ns1.local.curvc.com. ; IN NS ns2.local.curvc.com. ; name servers - A records ns1.local.curvc.com. IN A 192.168.0.104 ;ns2.local.curvc.com. IN A 192.168.0.105 ; 192.168.0.0/24 - A records ni.local.curvc.com. IN A 192.168.0.50
Reverse Zone 파일 설정
IP 주소 ("192.168.0.100")으로 DNS를 요청받으면 참조하는 설정
- 설정이 변경할 때 Serial 숫자가 증가되어야 함
/etc/bind/zones/db.0.168.192
$TTL 604800 @ IN SOA ns1.local.curvc.com. admin.local.curvc.com. ( 2 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; name servers IN NS ns1.local.curvc.com. ; IN NS ns2.local.curvc.com. ; PTR records 104 IN PTR ns1.local.curvc.com. ; 192.168.0.104 ;105 IN PTR ns2.local.curvc.com. ; 192.168.0.105 50 IN PTR ni.local.curvc.com. ; 192.168.0.50
설정 확인
$ sudo named-checkconf #named.conf* 설정 확인 $ sudo named-checkzone local.curvc.com /etc/bind/zones/db.nyc3.example.com #forward zones 설정 확인 $ sudo named-checkzone 0.168.192.in-addr.arpa /etc/bind/zones/db.192.168.0
서비스 재기동
Ubuntu 환경
$ sudo service bind9 restart
Client 설정
내부 DNS 서버 주소를 공인 DNS보다 먼저 설정한다.
/etc/resolv.conf
search local.curvc.com #local domain name nameserver 192.168.0.104 #local DNS 서버 주소 nameserver 203.248.252.2 #공인 DNS 서버 nameserver 164.124.101.2