이 페이지는 내부 서버를 위한 DNS 환경 구성을 설명한다. DNS 서버는 Ubuntu를 고려하고 단일 DNS 서버를 구성한다.
패키지 설치
$ sudo apt-get install bind9 bind9utils bind9-doc |
/etc/default/bind9 수정
# startup options for the server
OPTIONS="-f -4 -u bind" |
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로 구성된 예
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 숫자가 증가되어야 함
$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 숫자가 증가되어야 함
$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 |
서비스 재기동
$ sudo service bind9 restart |
Client 설정
내부 DNS 서버 주소를 공인 DNS보다 먼저 설정한다.
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