http://debugo.com/dnsmasq/
DNSmasq是一个小巧且方便地用于配置DNS和DHCP的工具,适用于小型网络。它提供了DNS功能和可选择的DHCP功能可以取代dhcpd(DHCPD服务配置)和bind等服务,配置起来更简单,更适用于虚拟化和大数据环境的部署。
dhcp服务
其中一些关键的配置如下,配置文件/etc/dnsmasq.conf 中的注释已经给出了非常详细的解释。
注意:当为某一MAC地址同时静态分配主机名和IP时,如果写到两条dhcp-host选项里(如下所示),则只会生效后面的一条。正确的选项写法如上配置。
重新启动客户端网卡。由于之前测试中客户端网卡已经申请了DHCP租期。所以这里需要修改租期文件,让客户端重新获得IP和hostname。
启动dnsmasq服务(server的IP为192.168.1.132)
下面在客户端进行测试:
# 确保网络接口配置使用dhcp方式
配置DNS服务
dnsmasq能够缓存外部DNS记录,同时提供本地DNS解析或者作为外部DNS的代理,即dnsmasq会首先查找/etc/hosts等本地解析文件,然后再查找/etc/resolv.conf等外部nameserver配置文件中定义的外部DNS。所以说dnsmasq是一个很不错的DNS中继。DNS配置同样写入dnsmasq.conf配置文件里。
配置完成后重启dnsmasq,然后在客户端测试:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
[
root
@
os03
]
nslookup
os01
.debugo
.com
Server
:
192.168.1.132
Address
:
192.168.1.132
#53
Name
:
os01
.debugo
.com
Address
:
192.168.1.132
[
root
@
os03
]
nslookup
os02
.debugo
.com
Server
:
192.168.1.132
Address
:
192.168.1.132
#53
Name
:
os02
.debugo
.com
Address
:
192.168.1.201
[
root
@
os03
]
nslookup
doubleclick
.net
Server
:
192.168.1.132
Address
:
192.168.1.132
#53
Name
:
doubleclick
.net
Address
:
127.0.0.1
#注意,由于address选项解析为127.0.0.1,而非server的192.168.1.132地址。
[
root
@
os03
]
nslookup
a1
.phobos
.apple
.com
Server
:
192.168.1.132
Address
:
192.168.1.132
#53
Name
:
a1
.phobos
.apple
.com
Address
:
202.175.5.114
|
^^