在 Ubuntu 18.04 中搭建和测试 DNS 服务器

在 Ubuntu 18.04 中搭建和测试 DNS 服务器可以通过安装和配置 BIND(Berkeley Internet Name Domain)来实现。以下是详细的步骤:

1. 安装 BIND

打开终端并运行以下命令来安装 BIND:

sudo apt update
sudo apt install bind9 bind9utils bind9-doc

2. 配置 BIND

2.1 设置区域文件

编辑 BIND 的主配置文件 /etc/bind/named.conf.local,在文件的末尾添加你的区域配置。假设你想为域 example.com 设置 DNS 服务器:

sudo nano /etc/bind/named.conf.local

在文件中添加以下内容:

zone "example.com" {
    type master;
    file "/etc/bind/db.example.com";
};
2.2 创建区域数据文件

接下来,创建区域数据文件 /etc/bind/db.example.com

sudo cp /etc/bind/db.local /etc/bind/db.example.com

然后编辑新创建的文件:

sudo nano /etc/bind/db.example.com
``在编辑器中,你可以根据需求修改区域文件内容。以下是一个简单的区域文件示例:

```plain
$TTL    604800
@       IN      SOA     ns.example.com. admin.example.com. (
                              2         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        241920         ; Expire
                         604800 )       ; Negative Cache TTL
;
@       IN      NS      ns.example.com.
@       IN      A       192.168.1.10  ; 替换为你的服务器IP地址
ns      IN      A       192.168.1.10  ; 替换为你的服务器IP地址
www     IN      A       192.168.1.10  ; 替换为你的服务器IP地址

3. 检查配置

在启动 BIND 之前,检查配置文件是否有错误:

sudo named-checkconf
sudo named-checkzone example.com /etc/bind/db.example.com

如果没有错误消息,则可以继续。

4. 启动 BIND 服务

启动 BIND 服务并设置为开机自启:

sudo systemctl start bind9
sudo systemctl enable bind9

5. 配置防火墙

如果你有防火墙(如 ufw),请允许 DNS 服务通过:

sudo ufw allow 53

6. 测试 DNS 服务器

使用 dig 命令来测试 DNS 服务器是否正常工作:

dig @localhost example.com

你应该看到类似于以下的输出,确认 DNS 服务器返回了正确的响应:

;; ANSWER SECTION:
example.com.       604800  IN      A       192.168.1.10

7. 配置客户端

如果你在本地网络中使用此 DNS 服务器,可以在客户端设备上将其 DNS 服务器设置为 192.168.1.10(或你的 BIND 服务器的 IP 地址)。

在 Ubuntu 上,可以通过编辑 /etc/resolv.conf 文件来设置 DNS 服务器:

sudo nano /etc/resolv.conf

将以下行添加到文件中:

nameserver 192.168.1.10

8. 测试客户端 DNS 解析

在客户端机器上,使用 dignslookup 命令测试 DNS 解析是否正常工作:

dig example.com

或者:

nslookup example.com

如果一切正常,你应该能够看到 DNS 解析的结果。

9. 其他命令

  • 查看 BIND 服务状态:
sudo systemctl status bind9
  • 重新加载 BIND 配置(在修改后):
sudo systemctl reload bind9

通过以上步骤,你就可以在 Ubuntu 18.04 中成功搭建并测试一个 DNS 服务器了!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值