当前位置:首页 > 行业动态 > 正文

如何在CentOS上设置服务器的DNS?

CentOS 设置服务器DNS可以通过修改 /etc/resolv.conf 文件,添加 DNS 服务器地址,如 nameserver 114.114.114.114。

在CentOS系统中设置服务器的DNS配置是确保网络通信顺畅的重要步骤,本文将详细介绍如何在CentOS 7上通过命令行工具nmcli和修改配置文件来设置DNS,并提供相关的FAQs以帮助用户解决常见问题。

如何在CentOS上设置服务器的DNS?  第1张

CentOS 7 设置服务器DNS

方法一:使用nmcli命令行工具

1、查看当前网络连接

   nmcli connection show

此命令显示当前所有网络连接及其详细信息。

2、修改DNS服务器

假设要修改的网络连接名称为ens160,可以使用以下命令:

   nmcli con mod ens160 ipv4.dns "8.8.8.8 8.8.4.4"

这将把ens160连接的DNS服务器设置为Google的公共DNS(8.8.8.8和8.8.4.4)。

3、使配置生效

   nmcli con up ens160

此命令使刚才的DNS配置立即生效。

方法二:修改NetworkManager配置文件

1、编辑主配置文件

打开或创建/etc/NetworkManager/NetworkManager.conf文件:

   sudo vi /etc/NetworkManager/NetworkManager.conf

在[main]部分添加或修改以下内容:

   [main]
   plugins=ifcfg-rh
   dns=none

2、重启NetworkManager服务

   sudo systemctl restart NetworkManager.service

3、手动修改resolv.conf文件

编辑/etc/resolv.conf文件:

   sudo vi /etc/resolv.conf

添加以下内容:

   nameserver 8.8.8.8
   nameserver 8.8.4.4

保存并退出。

搭建内网DNS服务器

除了设置外部DNS服务器外,有时还需要在内网中搭建自己的DNS服务器,以下是详细步骤:

安装BIND DNS服务器

1、安装BIND组件

   sudo yum install bind bind-utils -y

2、启动并启用BIND服务

   sudo systemctl start named
   sudo systemctl enable named

3、配置防火墙

允许DNS流量通过防火墙:

   sudo firewall-cmd --permanent --add-service=dns
   sudo firewall-cmd --reload

配置BIND DNS服务器

1、编辑主配置文件

打开/etc/named.conf文件:

   sudo vi /etc/named.conf

在options部分添加或修改以下内容:

   options {
       listen-on port 53 { any; };
       allow-query { any; };
       recursion yes;
   };

2、创建区域文件

创建正向解析和反向解析的区域文件,创建一个名为example.com的区域文件:

   sudo vi /var/named/example.com.zone

添加以下内容:

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

3、启动并测试BIND服务

重新启动BIND服务并测试DNS解析:

   sudo systemctl restart named
   ping www.example.com
   nslookup www.example.com

常见问题解答(FAQs)

Q1:如何更改DNS服务器后不生效?

A1:如果修改了/etc/resolv.conf文件后DNS配置没有立即生效,可以尝试重启NetworkManager服务或者整个系统:

sudo systemctl restart NetworkManager.service
或者重启系统
sudo reboot

Q2:如何验证DNS配置是否生效?

A2:可以使用nslookup命令来验证DNS配置是否生效,验证example.com的DNS解析:

nslookup example.com

如果输出中包含正确的IP地址,则说明DNS配置已经生效。

小编有话说

在CentOS 7上设置DNS服务器并不复杂,但需要细心操作,特别是在编辑配置文件时,建议在进行任何修改前备份相关文件,以防出现意外情况,理解DNS的基本工作原理有助于更好地配置和管理DNS服务器,希望本文能够帮助大家顺利地在CentOS 7上设置和管理DNS服务器。

0