본문 바로가기
서버구축 (WEB,DB)

DNSMASQ – 로컬 DNS 쿼리 캐쉬 설정

by 날으는물고기 2009. 5. 25.

DNSMASQ – 로컬 DNS 쿼리 캐쉬 설정

Dnsmasq is a lightweight, easy to configure DNS forwarder and DHCP server. It is designed to provide DNS and, optionally, DHCP, to a small network. It can serve the names of local machines which are not in the global DNS. The DHCP server integrates with the DNS server and allows machines with DHCP-allocated addresses to appear in the DNS with names configured either in each host or in a central configuration file. Dnsmasq supports static and dynamic DHCP leases and BOOTP/TFTP for network booting of diskless machines.


DNSMASQ 는 리눅스용 Local DNS Cache Server 이다.

리눅스 웹서버에 Reverse DNS Query 옵션을 켜두었다거나, 메일 서버에서 메일 송수신 양이 많다면 접속 요청이 올 때마다 DNS 쿼리를 하게 된다. 보통 많은 수의 웹서버나 메일서버를 운영하더라도 네임서버는 2~3대 정도만 운영하기 때문에 네임서버에 많은 쿼리 요청으로 인해 부하가 발생할 가능성이 있다.

이런 경우에 DNSMASQ 를 설치해서 Local 에 DNS 쿼리를 임시 저장 (캐싱) 하도록 하면 네임 서버의 부하를 줄일 수 있다.

RPM 버전은 여기에서 다운로드 받는다.

물론 RPM 명령으로 설치한다.

rpm –Uvh dnsmasq-xxxx.rpm

설치 후에 /etc/dnsmasq.conf 파일에서 Listen-Address 항목을 수정한다.
Local host 만 사용하게 하려면 127.0.0.1을 적어둔다.

listen-address=127.0.0.1

설정을 저장했으면 DNSMASQ 데몬을 시작한다.

service dnsmasq restart

이제 서버에서 /etc/resolv.conf 를 편집해서 사용하는 DNS 서버를 수정한다.

Nameserver 127.0.0.1

기존 항목 위에 위의 항목을 추가하면 된다.

이렇게 하면 DNS 쿼리가 필요한 경우 맨 먼저 127.0.0.1 (로컬호스트) 의 DNSMASQ 에 요청하게 된다.


Dnsmasq라는 DNS 포워딩과 DHCP 서버가 있습니다.
설명은 위를 참조하시구요. Ubuntu에서 아래와 같이 설치할 수 있습니다.

andrew@andrew-ubuntu:~$ sudo apt-get install dnsmasq

andrew@andrew-ubuntu:~$ sudo vi /etc/dnsmasq.conf

위 파일을 열어서 아래 라인의 주석을 풀면 됩니다.

listen-address=127.0.0.1

andrew@andrew-ubuntu:~$ sudo vi /etc/dhcp3/dhclient.conf

위 파일을 열어서 아래 라인의 주석을 풀면 됩니다.

prepend domain-name-servers 127.0.0.1;

andrew@andrew-ubuntu:~$ sudo vi /etc/resolv.conf

등록된 네임서버의 최상단에 아래를 추가합니다.

nameserver 127.0.0.1

andrew@andrew-ubuntu:~$ sudo /etc/init.d/dnsmasq restart

andrew@andrew-ubuntu:~$ dig google.com

(제 경우엔)결과를 보면 140msec나왔습니다.
;; Query time: 140 msec

andrew@andrew-ubuntu:~$ dig google.com

두 번째 수행시에는 0 msec라는 고무적인 결과가 나옵니다.
;; Query time: 0 msec


References
http://ubuntu.wordpress.com/2006/08/02/local-dns-cache-for-faster-browsing/

728x90

댓글