- 安装 MaraDNS
- 将 MaraDNS 配置为递归名称服务器
MaraDNS 是一个小型、免费、轻量级的域名服务器。它是另一种开源 DNS 服务器,充当缓存、递归或权威名称服务器。它非常容易配置并且适用于 Linux 和 Windows 平台。它可以从这里下载。
以下是 MarDNS 的一些有趣特性:
- 易于安装
- 内存使用率低(使用大约 5MB 的 RAM)
- 可以充当权威名称服务器和递归名称服务器。
- 不要错过,MaraDNS 网站上的文档非常简单易懂。
现在让我们开始在 CentOS 7 上使用 MaraDNS。以下步骤将指导您安装和配置 MaraDNS:
安装 MaraDNS
截至目前,没有任何适用于 CentOS 7 的 MaraDNS 可用 RPM,因此我们将从源代码安装和编译它。
安装 gcc:
sudo yum install gcc
从这里下载最新的源存档。你可以这样做:
wget http://maradns.samiam.org/download/2.0/2.0.11/maradns-2.0.11.tar.bz2
提取档案的内容:
tar -xjf maradns-2.0.11.tar.bz2
切换到提取的 MaraDNS 目录,编译并安装程序:
cd maradns-2.0.11
sudo make
sudo make install
MaraDNS 现已安装。 MaraDNS 服务安装在 /etc/init.d/maradns。您可以通过以下方式简单地启动服务:
sudo /etc/init.d/maradns start
要启动递归恶魔,请运行:
sudo /etc/init.d/maradns.deadwood start
默认情况下,权威名称服务器在端口 127.0.0.1 上侦听,递归服务器在端口 127.0.0.2 上侦听。
让我们确保在启动时启动 MaraDNS:
chkconfig maradns on
递归 DNS 服务器的初始化脚本需要与 chkconfig 兼容,然后才能在启动时运行它。将以下内容添加到文件 /etc/init.d/maradns.deadwood 文件的顶部:
# chkconfig: - 55 45
# description: MaraDNS is secure Domain Name Server (DNS)
# probe: true
将其设置为在启动时运行:
chkconfig maradns.deadwood on
当您的 Web 浏览器发出 DNS 查询时(假设浏览器尚未将映射存储在其缓存中),它会被发送到递归 DNS 服务器。也称为 DNS 转发。 MaraDNS默认侦听IP端口 127.0.0.2,您可以向其添加更多 IP,以逗号分隔。例如 - 127.0.0.2,x.x.x.x。您可以通过将以下行附加到 /etc/dwood3rc 文件来将 MaraDNS 配置为递归服务器:
upstream_servers = {}
upstream_servers["."] = "8.8.8.8, 8.8.4.4" # Forwarding requests to Google DNS Servers
重新启动服务为:
sudo /etc/init.d/maradns.deadwood restart
您已完成设置 MaraDNS 服务器!
提示 - 如果您希望您的 MaraDNS 服务器响应外部 DNS 查询,您需要:
将您的机器公共 IP 添加到两个配置文件 (/etc/mararc & /etc/dwood3rc) 并将它们修改为:
ipv4_bind_addresses = "127.0.0.1, x.x.x.x" #Replace x.x.x.x with your machine's public address.
/etc/dwood3rc:
bind_address="127.0.0.2, x.x.x.x" #Replace x.x.x.x with your machine's public address.
recursive_acl=\0.0.0.0/0\ #允许来自任何地方的连接。
修改过配置后需再次重新启动服务。 |