分享 | 交流
让学习成为一种习惯

DNSmasq服务搭建初试

DNSmasq介绍

DNSmasq是一个小巧且方便地用于配置 DNS 和 DHCP 的工具,适用于小型网络,它提供了DNS功能和可选择的DHCP功能。它服务那些只在本地适用的域名,这些域名是不会在全球的DNS服务器中出现的。DHCP服务器和DNS服务器结合,并且允许DHCP分配的地址能在DNS中正常解析,而这些DHCP分配的地址和相关命令可以配置到每台主机中,也可以配置到一台核心设备中(比如路由器),DNSmasq支持静态和动态两种DHCP配置方式。因此如果需要快速搭建一个DNS服务或者DHCP服务,那么可以使用此程序来搭建 。

下载与安装

官方文档

http://www.thekelleys.org.uk/dnsmasq/doc.html

下载地址

http://www.thekelleys.org.uk/dnsmasq/

编译安装dnsmasq

wget http://www.thekelleys.org.uk/dnsmasq/dnsmasq-2.79.tar.gz
tar zxf dnsmasq-2.79.tar.gz
cd dnsmasq-2.79 && make install

另外就是通过yum 安装

yum-y install dnsmasq

sudo apt-get -y install dnsmasq

版本查看

dnsmasq -v

[root@kangqiao ~]# dnsmasq -v
Dnsmasq version 2.76  Copyright (c) 2000-2016 Simon Kelley
Compile time options: IPv6 GNU-getopt DBus no-i18n IDN DHCP DHCPv6 no-Lua TFTP no-conntrack ipset auth no-DNSSEC loop-detect inotify

This software comes with ABSOLUTELY NO WARRANTY.
Dnsmasq is free software, and you are welcome to redistribute it
under the terms of the GNU General Public License, version 2 or 3.

Dnsmasq配置

[root@kangqiao ~]# grep ^[^#] /etc/dnsmasq.conf 
resolv-file=/etc/resolv.conf
strict-order
address=/ef.kangqiao.io/172.16.1.100
listen-address=172.16.1.100,127.0.0.1
addn-hosts=/etc/hosts
cache-size=1024
bogus-nxdomain=223.5.5.5
conf-dir=/etc/dnsmasq.d,.rpmnew,.rpmsave,.rpmorig
# 配置上行DNS,对应no-resolv
resolv-file=/etc/resolv.conf

# resolv.conf内的DNS寻址严格按照从上到下顺序执行,直到成功为止
strict-order

# DNS解析hosts时对应的hosts文件,对应no-hosts
addn-hosts=/etc/hosts
cache-size=1024

# 多个IP用逗号分隔,172.16.x.x表示本机的ip地址,只有127.0.0.1的时候表示只有本机可以访问。
# 通过这个设置就可以实现同一局域网内的设备,通过把网络DNS设置为本机IP从而实现局域网范围内的DNS泛解析(注:无效IP有可能导至服务无法启动)
listen-address=172.16.x.x,127.0.0.1

# 重要!!这一行就是你想要泛解析的域名配置.
address=/ef.kangqiao.io/172.16.1.100

以上几乎是最简配置.
reolve-file=/etc/resolv.conf 配置上行DNS,假设 /etc/resolv.conf 内容如下:
nameserver 223.5.5.5
那就是说如果你访问域名abc.com没有被dnsmasq解析,它会尝试访问 223.5.5.5 去解析。

客户端指定域名服务器/etc/resolv.conf
所有需要使用的客户端,在dns解析服务器列表里加一条dnsmasq的地址172.16.1.100作为dns服务器

访问测试

iMac:~ administrator$ ping ef.kangqiao.io
PING ef.kangqiao.io (172.16.1.100): 56 data bytes
64 bytes from 172.16.1.100: icmp_seq=0 ttl=63 time=0.482 ms
64 bytes from 172.16.1.100: icmp_seq=1 ttl=63 time=0.577 ms
64 bytes from 172.16.1.100: icmp_seq=2 ttl=63 time=0.598 ms
64 bytes from 172.16.1.100: icmp_seq=3 ttl=63 time=0.692 ms
^C
--- ef.kangqiao.io ping statistics ---
4 packets transmitted, 4 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 0.482/0.587/0.692/0.075 ms
未经允许不得转载:留时刻运维网 » DNSmasq服务搭建初试

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

留时刻 - Linux系统教程,运维经验分享

加入我们给我留言