2025年2月24日 星期一 甲辰(龙)年 腊月廿四 设为首页 加入收藏
rss
您当前的位置:首页 > 计算机 > 系统应用 > Linux

CentOS 7 上安装并配置 BIND 以实现 DNS 的正向和反向解析

时间:11-13来源:作者:点击数:21
城东书院 www.cdsy.xyz

在 CentOS 7 上安装并配置 BIND 以实现 DNS 的正向和反向解析可以按照以下步骤进行:

安装 BIND

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

  • yum install bind bind-utils -y
配置 BIND
  1. 编辑主配置文件:

使用文本编辑器打开 BIND 的主配置文件/etc/named.conf。如果没有此文件,你可能需要先检查 BIND 是否正确安装:

  • vim /etc/named.conf

在文件中,确保 BIND 监听在合适的 IP 地址上(通常为 localhost 或服务器的 IP 地址):

  • options {
  • listen-on port 53 { any; };
  • directory "/var/named";
  • dump-file "/var/named/data/cache_dump.db";
  • statistics-file "/var/named/data/named_stats.txt";
  • memstatistics-file "/var/named/data/named_mem_stats.txt";
  • allow-query { any; };
  • };
  1. 配置正向和反向区域:

在/etc/named.conf中添加以下内容:

  • zone "example.com" IN {
  • type master;
  • file "example.com.zone";
  • allow-update { none; };
  • };
  • zone "254.168.192.in-addr.arpa" IN {
  • type master;
  • file "192.168.254.zone";
  • allow-update { none; };
  • };
  1. 创建区域文件:

进入/var/named目录并创建正向和反向区域文件。

  • vim /var/named/example.com.zone

添加以下内容作为正向区域文件(example.com.zone):

  • $TTL 86400
  • @ IN SOA ns1.example.com. admin.example.com. (
  • 2023101001 ; Serial
  • 3600 ; Refresh
  • 1800 ; Retry
  • 604800 ; Expire
  • 86400 ) ; Minimum TTL
  • ;
  • @ IN NS ns1.example.com.
  • ns1 IN A 192.168.254.150
  • www IN A 192.168.254.150

然后创建反向区域文件:

  • vim /var/named/192.168.254.zone

添加以下内容作为反向区域文件(192.168.254.zone):

  • $TTL 86400
  • @ IN SOA ns1.example.com. admin.example.com. (
  • 2023101001 ; Serial
  • 3600 ; Refresh
  • 1800 ; Retry
  • 604800 ; Expire
  • 86400 ) ; Minimum TTL
  • ;
  • @ IN NS ns1.example.com.
  • 150 IN PTR ns1.example.com.
  • 150 IN PTR www.example.com.
检查并启动服务
  1. 检查配置文件的正确性:

使用以下命令检查主配置文件和区域文件的语法:

  • named-checkconf /etc/named.conf
  • named-checkzone example.com /var/named/example.com.zone
  • named-checkzone 254.168.192.in-addr.arpa /var/named/192.168.254.zone
  1. 修改文件所属组和用户
  • chown root:named /var/named/example.com.zone
  • chown root:named /var/named/192.168.254.zone
  1. 启动并启用 BIND 服务:

首次启动 BIND 服务,并使其在系统启动时启动:

  • systemctl enable named --now
防火墙设置
  1. 配置防火墙以允许 DNS 流量:

使用以下命令在 CentOS 7 上配置防火墙以允许通过 DNS 的流量:

  • firewall-cmd --permanent --add-service=dns
  • firewall-cmd --reload
测试正向解析
  1. 测试域名到 IP 地址的解析:

打开终端并运行以下命令,假设你要解析www.example.com:

  • nslookup www.example.com

如果 DNS 服务器配置正确,你应该看到类似以下的输出:

测试反向解析
  1. 测试 IP 地址到域名的反向解析:

运行以下命令来测试 IP 地址192.168.254.150是否正确解析到www.example.com:

  • nslookup 192.168.254.150

你应该看到类似以下的输出:

处理常见问题
  • 无法解析:如果出现无法解析的错误,确保你的 named 服务正在运行,防火墙规则正确设置,并且你的区域文件没有语法错误。

检查服务状态:

  • systemctl status named
  • 检查日志:如果nslookup未返回预期的结果,请查看 DNS 日志文件以获取更多调试信息,通常位于/var/log/messages:
  • tail -f /var/log/messages
城东书院 www.cdsy.xyz
方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门
本栏推荐