简易DNS服务器搭建,适用小型公司

dnsmasq是一个小巧且方便地用于配置DNS和DHCP的工具,适用于小型网络,相比bind和dhcpd,配置起来更简单。dnsmasq能够提供本地解析和外部dns服务器代理,通常将将其作为一个DNS中继代理。openstack就是采用的dnsmasq。

1、dnsmasq安装

yum -y install dnsmasq
安装完成之后可以通过”dnsmasq –help” 或 “man 8 dnsmasq”查看支持的配置详情。

2、配置dnsmasq

配置都在一个文件中完成/etc/dnsmasq.conf。默认情况下dnsmasq.conf中只开启了最后include项,可以在/etc/dnsmasq.d中自己写任意名字的配置文件。
vi /etc/dnsmasq.conf

#监听的端口,dns默认53端口,如果设置为0,则完全禁止DNS功能
port=53
#监听地址
listen-address=192.168.145.134

#正确的域名格式才转发
domain-needed

#设置本地域扩展,相当于域简写,如hosts配置 www 会自动加上www.zhutw.com
expand-hosts
local=/zhutw.com/

#配置上游的nameserver解析文件
#resolv-file=/etc/dnsmasq.resolv.conf
#当/etc/resolv.conf或resolv-file文件变化,不重新加载
no-poll
#不使用上游nameserver配置文件(/etc/resolv.conf和resolv-file)
no-resolv

#配置本地解析的hosts
addn-hosts=/etc/dnsmasq.hosts
#不使用/etc/hosts,开启后expand-hosts不生效
#no-hosts

#按配置顺序查询上级nameserver服务器
strict-order

#记录日志,如果打开日志,要及时清理
log-queries
log-facility=/var/log/dnsmasq.log
#启用异步日志记录,缓解阻塞,提高性能。默认队列长度为5,合理值为5-25,最大限制为100
log-async=20

#缓存地址数目,提高速
cache-size=10000
#自动加载目录配置
conf-dir=/etc/dnsmasq.d

在/etc/dnsmasq.d目录下配置自定义项
vi server.conf #配置nameserver

# 指定dnsmasq默认查询的上游服务器
server=8.8.8.8
#可以将特定的域名指定解析它的nameserver。一般是其他的内部DNS name server
server=/baidu.com/61.135.165.235
#指定反向DNS 192.168.1/24网段到192.168.2.1 dns查询
#server=/192.168.1.in-addr.arpa/192.168.2.1
#cn上游dns
server=/cn/114.114.114.114

vi address.conf #配置自定义nameserver

#指定domain解析地址
address=/www.test.net/127.0.0.1
#*.test.net匹配
address=/test.net/127.0.0.1
address=/.abc.com/1.1.1.1
address=/ipv6.test.com/fe80::20d:60ff:fe36:f83

3、启动服务

service dnsmasq start
可以通过dig命令查询解析是否正确,如:

C:\Users\Administrator>dig @192.168.145.134  www.zhutw.com

; <<>> DiG 9.7.2rc1 <<>> @192.168.145.134 www.zhutw.com
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 12080
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;www.zhutw.com.                 IN      A

;; ANSWER SECTION:
www.zhutw.com.          0       IN      A       1.1.1.1

;; Query time: 4 msec
;; SERVER: 192.168.145.134#53(192.168.145.134)
;; WHEN: Mon May 22 22:50:52 2017
;; MSG SIZE  rcvd: 47

4、参考文档

1.利用Dnsmasq部署DNS服务
2.DNSmasq – 配置DNS和DHCP

你可能感兴趣的:(DNS/DHCP)