DNSmasq介紹html
DNSmasq是一個小巧且方便地用於配置 DNS 和 DHCP 的工具,適用於小型網絡,它提供了DNS功能和可選擇的DHCP功能。vim
它服務那些只在本地適用的域名,這些域名是不會在全球的DNS服務器中出現的。DHCP服務器和DNS服務器結合,服務器
而且容許DHCP分配的地址能在DNS中正常解析,而這些DHCP分配的地址和相關命令能夠配置到每臺主機中,網絡
也能夠配置到一臺核心設備中(好比路由器),DNSmasq支持靜態和動態兩種DHCP配置方式。dom
所以若是須要快速搭建一個DNS服務或者DHCP服務,那麼可使用此程序來搭建工具
本文參考 :http://www.360doc.com/content/14/0913/13/8314158_409140713.shtml測試
下載與安裝網站
官方文檔google
http://www.thekelleys.org.uk/dnsmasq/doc.html阿里雲
下載地址
http://www.thekelleys.org.uk/dnsmasq/
下載程序
wget http://www.thekelleys.org.uk/dnsmasq/dnsmasq-2.75.tar.gz
yum -y install gcc
tar -xf dnsmasq-2.75.tar.gz
cd dnsmasq-2.75
編譯安裝dnsmasq
make install
版本查看
dnsmasq -v
其餘安裝方式
yum -y install dnsmasq
sudo apt-get -y install dnsmasq
配置服務
查看須要監聽網卡的IP地址
ifconfig
dnsmasq配置
vim /etc/dnsmasq.conf #下面是須要修改的選項
resolv-file=/etc/resolv.conf strict-order listen-address=192.168.153.128 address=/demon.com/192.168.153.128 server=114.114.114.114 bogus-nxdomain=114.114.114.114
對參數的解釋
resolve-file 定義dnsmasq從哪裏獲取上游DNS服務器的地址, 默認是從/etc/resolv.conf獲取。
strict-order 表示嚴格按照resolv-file文件中的順序從上到下進行DNS解析,直到第一個解析成功爲止。
listen-address 定義dnsmasq監聽的地址,默認是監控本機的全部網卡上。局域網內主機若要使用dnsmasq服務時,指定本機的IP地址。
address 啓用泛域名解析,即自定義解析a記錄,以下配置爲demon.com這個域名:
address=/demon.com/127.0.0.1 #訪問demon.com時的全部域名都會被解析成127.0.0.1
bogus-nxdomain 爲防止DNS污染,使用參數定義的DNS解析的服務器。注意:若是是阿里雲服務器上配置dnsmasq要啓用此項。
server 指定dnsmasq程序使用哪一個DNS服務器進行解析。 對於不一樣的網站可使用不一樣的域名對應解析以下配置
server=/google.com/8.8.8.8 #表示對於google的服務,使用谷歌的DNS解析。
以上配置完畢後,須要重啓dnsmasq服務,重啓完畢後局域網中的其餘機器,就能夠經過該DNS服務器解析公網的域名。
解析測試
啓動服務
dnsmasq
修改resolv.conf文件,將服務器地址改成本機地址
vim /etc/resolv.conf
對於reslov.conf的這個文件做用主要有四個關鍵字:
nameserver //定義DNS服務器的IP地址
domain //定義本地域名
search //定義域名的搜索列表
sortlist //對返回的域名進行排序
舉個例子
domain demonxian3.com
search www.demonxian3.com mail.demonxian3.com ftp.demonxian3.com
nameserver 114.114.114.114
nameserver 223.5.5.5
另外:domain和search不能共存;若是同時存在,後面出現的將會被使用。
當程序尋找不到主機域名時,會對 search 後面的參數一一查找主機域名
測試是否解析成功
由於以前配置了 address=/demon.com/192.168.153.128
因此當咱們訪問www.demon.com時被解析成本機的IP地址