使用 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 實現開機啓動。域名

相關文章
相關標籤/搜索