首页主机资讯CentOS域名DNS设置方法

CentOS域名DNS设置方法

时间2025-10-02 15:01:03发布访客分类主机资讯浏览691
导读:一、准备工作 在CentOS上设置域名DNS前,需完成以下基础准备: 确保系统已更新至最新版本:sudo yum update -y; 安装BIND(DNS服务器软件)及工具包:sudo yum install bind bind-uti...

一、准备工作 在CentOS上设置域名DNS前,需完成以下基础准备:

  1. 确保系统已更新至最新版本:sudo yum update -y
  2. 安装BIND(DNS服务器软件)及工具包:sudo yum install bind bind-utils -ybind为核心服务,bind-utils提供nslookupdig等测试工具)。

二、配置DNS主配置文件 BIND的主配置文件为/etc/named.conf,需修改以下关键参数:

  1. 允许监听所有IP地址(若需对外提供服务):在options块中添加listen-on port 53 { any; } ;
  2. 允许所有客户端查询:添加allow-query { any; } ;
  3. 开启递归查询(可选,根据需求调整):添加recursion yes;
  4. 保存并退出:修改完成后保存文件。

三、创建正向解析区域 正向解析将域名映射为IP地址,步骤如下:

  1. 在主配置文件中添加区域定义:在/etc/named.conf中新增以下内容(以example.com为例):
    zone "example.com" IN {
        
        type master;
                          # 区域类型(主服务器)
        file "/var/named/example.com.zone";
      # 区域文件路径
        allow-update {
         none;
     }
        ;
           # 禁止动态更新(生产环境建议设为none)
    }
        ;
        
    
  2. 创建区域文件:执行sudo vi /var/named/example.com.zone,添加以下内容(需替换为实际IP):
    $TTL 86400                      # 记录生存时间(1天)
    @       IN      SOA     ns1.example.com. admin.example.com. (  # SOA记录(起始授权机构)
                2025092601 ;
         Serial          # 序列号(每次修改需递增)
                3600 ;
         Refresh                # 刷新时间(1小时)
                1800 ;
         Retry                  # 重试时间(30分钟)
                604800 ;
         Expire               # 过期时间(1周)
                86400 ) ;
     Minimum TTL         # 最小TTL(1天)
    @       IN      NS      ns1.example.com.  # NS记录(域名服务器)
    @       IN      A       192.168.1.100     # A记录(域名→IP)
    ns1     IN      A       192.168.1.100     # 域名服务器自身的A记录
    www     IN      A       192.168.1.101     # www子域名的A记录
    mail    IN      A       192.168.1.102     # mail子域名的A记录
    
  3. 设置文件权限:执行sudo chown named:named /var/named/example.com.zone(确保BIND用户拥有所有权);
  4. 验证区域文件语法:执行sudo named-checkzone example.com /var/named/example.com.zone,若无错误则说明配置正确。

四、配置反向解析(可选) 反向解析将IP地址映射为域名,适用于邮件服务器等场景,步骤如下:

  1. 在主配置文件中添加反向区域定义:假设IP段为192.168.1.0/24,添加以下内容:
    zone "1.168.192.in-addr.arpa" IN {
          # 反向区域名(IP段反转+in-addr.arpa)
        type master;
        
        file "/var/named/192.168.1.rev";
    
        allow-update {
         none;
     }
        ;
    
    }
        ;
        
    
  2. 创建反向区域文件:执行sudo vi /var/named/192.168.1.rev,添加以下内容:
    $TTL 86400
    @       IN      SOA     ns1.example.com. admin.example.com. (
                2025092601 ;
         Serial
                3600 ;
         Refresh
                1800 ;
         Retry
                604800 ;
         Expire
                86400 )
    @       IN      NS      ns1.example.com.
    100     IN      PTR     example.com.      # 192.168.1.100的反向解析
    101     IN      PTR     www.example.com.  # 192.168.1.101的反向解析
    102     IN      PTR     mail.example.com. # 192.168.1.102的反向解析
    
  3. 验证反向区域文件语法:执行sudo named-checkzone 1.168.192.in-addr.arpa /var/named/192.168.1.rev

五、启动并启用DNS服务

  1. 启动BIND服务sudo systemctl start named
  2. 设置开机自启动sudo systemctl enable named
  3. 检查服务状态sudo systemctl status named(若显示“active (running)”则表示启动成功)。

六、配置防火墙 允许DNS流量(UDP/TCP 53端口)通过防火墙:

sudo firewall-cmd --permanent --add-service=dns  # 永久添加dns服务
sudo firewall-cmd --reload                       # 重新加载防火墙规则

七、测试DNS解析 使用以下命令验证配置是否生效:

  1. 测试正向解析nslookup example.comdig @localhost example.com
  2. 测试反向解析nslookup 192.168.1.100dig -x 192.168.1.100 @localhost
  3. 检查解析结果:若返回对应的IP地址或域名,则说明配置成功。

八、客户端配置(可选) 若其他设备需通过该DNS服务器解析域名,需修改客户端的DNS设置:

  1. CentOS客户端:编辑/etc/resolv.conf,添加nameserver < DNS服务器IP> (如nameserver 192.168.1.100);
  2. Windows客户端:进入“网络设置”→“DNS服务器”,添加对应的IP地址。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: CentOS域名DNS设置方法
本文地址: https://pptw.com/jishu/717305.html
CentOS Swap使用技巧 centos时间戳如何隐藏

游客 回复需填写必要信息