페이지 트리

이 페이지는 내부 서버를 위한 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


Example (one dns server) Configuration Files

bind9.tar.gz