使用 Dnsmasq 自建 DNS 的基本配置方法

本文首发于个人博客,内容略有改动
原文连接:使用 Dnsmasq 自建 DNSdom

Dnsmasq 的功能比较多,本文介绍它的 DNS 功能。
有些 Linux 发行版中预装了 Dnsmasq, 若是没有能够经过软件管理器安装,这里不赘述。
Dnsmasq 的配置文件通常在 /etc/dnsmasq.conf
几个关键的参数:code

  • port DNS的端口
  • resolv-file 指向另外一个文件,里面定义了上游 DNS,当遇到本地的 DNS 没法解析的域名,则会向上游 DNS 进行查询
  • listen-address 这里填写监听的 ip,若是要应用于全部的网卡可设为0.0.0.0,或者设为指定的 ip 也可

最为重要的参数就是 address 了。blog

这个参数即为注册的 DNS 记录。
例如:
address=/test.domain.com/192.168.1.1dns

Dnsmasq 比 SkyDNS (以及修改 hosts 文件的方案)强大的一点就是支持泛域名解析,例如:
address=/.domain.com/192.168.1.1
会将 domain.com 下的全部子域名都解析到指定的 ip 上,另有配置的除外。ip

配置好之后重启一下 Dnsmasq 服务便可生效。get

Dnsmasq 能够用于本机做为高级的 hosts 使用,也可搭建在国外的 VPS 上,防止 DNS 污染。博客


注意:CentOS7 系统中会有一个默认由 libvirtd 管理的 dnsmasq 服务和一个 systemd 管理的 dnsmasq 服务。建议使用 virsh net-autostart --disable default 命令关闭由 libvirtd 启动的 dnsmasq,经过 systemctl enable dnsmasq.service 实现开机启动。域名

相关文章
相关标签/搜索