Dnsmasq简单快速搭建DNS服务器
环境准备
服务器:腾讯云lighthouse,1c1g
镜像:CentOS7.6
用户:root
安装
yum install -y dnsmasq
systemctl start dnsmasq.service
systemctl enable dnsmasq.service
配置
vim /etc/dnsmasq.conf
46 #resolv-file= -> resolv-file=/etc/resolv.dnsmasq.conf //上级dns服务配置
58 #no-resolv//不依上游赖服务器的dns,即服务器未找到解析不向上级dns服务器查询
111 #listen-address= -> listen-address=your_srv_ip_addr
128 #no-hosts -> no-hosts //不依赖服务器的hosts
131 #addn-hosts=/etc/banner_add_hosts -> hostsdir=/etc/dnsmasq/dnsmasq.d //dns解析文件目录
557 #cache-size=150 -> #cache-size=0 //不设置缓存
添加dns上游服务器
vim /etc/resolv.dnsmasq.conf
nameserver 183.60.82.98 #2条记录为腾讯云vpc网络dns服务器
nameserver 183.60.83.19
创建dns解析文件目录,dnsmasq动态检查该目录下所有的记录
mkdir -p /etc/dnsmasq/dnsmasq.d
事例:
vim /etc/dnsmasq/dnsmasq.d/test
1.1.1.1 www.test.com
vim /etc/dnsmasq/dnsmasq.d/example
1.1.1.2 www.example.comm
热加载
新增dns解析立刻生效,但修改解析会缓存,造成记录平权负载均衡
创建热加载脚本
vim /etc/dnsmasq/reloaddns.sh
chmod +x /etc/dnsmasq/reloaddns.sh
#!/bin/bash
pid=`netstat -ntpl | awk -F '[/ ]*' '/dnsmasq/ {print $7}' | uniq`
kill -1 $pid
修改dnsmasq服务配置文件
vim /usr/lib/systemd/system/dnsmasq.service
[Unit]
Description=DNS caching server.
After=network.target
[Service]
ExecStart=/usr/sbin/dnsmasq -k --dns-forward-max=10000
ExecReload=/etc/dnsmasq/reloaddns.sh
[Install]
WantedBy=multi-user.target
使dnsmasq的systemd配置文件生效
systemctl daemon-reload
修改dns解析需要重新加载配置文件
systemctl reload dnsmasq.service
Comments | NOTHING