如何在Linux系统中配置和使用DNS服务器?

HCRM技术_小炮 DNS 2025-04-13 585 4
linux怎么用dns

当你在Linux系统中访问网站或使用网络服务时,DNS(域名系统)扮演着“翻译官”的角色——它将人类可读的域名(如www.example.com)转换为机器识别的IP地址,如果DNS配置错误,可能会导致无法上网、访问延迟甚至安全隐患,以下是针对不同场景的DNS配置方法及深度解析。

**一、检查当前DNS配置

在修改配置前,先确认系统当前的DNS设置:

cat /etc/resolv.conf

输出示例:

nameserver 8.8.8.8  
nameserver 8.8.4.4

这里的nameserver行表示系统正在使用的DNS服务器地址(如Google的公共DNS)。

注意:某些系统(如Ubuntu 18.04+)使用systemd-resolved服务管理DNS,可通过以下命令查看:

linux怎么用dns
systemd-resolve --status

**二、临时修改DNS(重启后失效)

适合临时测试或快速修复网络问题:

sudo echo "nameserver 1.1.1.1" > /etc/resolv.conf

此命令将DNS服务器设置为Cloudflare的1.1.1.1,但需注意:

- 若系统启用了NetworkManagersystemd-resolved,重启后配置可能被覆盖。

- 使用chattr +i /etc/resolv.conf可锁定文件防止修改(慎用)。

**三、永久修改DNS的4种方法

1. 通过NetworkManager(图形界面/命令行)

linux怎么用dns

图形界面

进入网络设置 → 选择连接 → IPv4/IPv6 → 手动填写DNS服务器(如208.67.222.222, 208.67.220.220)。

命令行(适用于服务器):

  nmcli con mod <连接名称> ipv4.dns "9.9.9.9 149.112.112.112"
  nmcli con down <连接名称> && nmcli con up <连接名称>

2. 修改/etc/resolv.conf(传统方法)

编辑配置文件:

sudo nano /etc/resolv.conf

添加或修改nameserver行,

nameserver 8.8.8.8  
nameserver 2001:4860:4860::8848  # IPv6地址

适用场景:无网络管理服务的旧版系统。

3. 使用systemd-resolved(推荐新系统)

Ubuntu/Debian等系统默认使用此服务:

sudo nano /etc/systemd/resolved.conf

取消注释并修改:

DNS=1.1.1.1 2606:4700:4700::1111
Domains=~.

重启服务生效:

systemctl restart systemd-resolved

4. DHCP自动分配(路由器依赖)

若通过DHCP获取DNS(常见于家庭网络),需修改路由器的DNS设置,Linux会自动同步。

**四、验证DNS配置是否生效

执行以下命令测试解析是否正常:

nslookup google.com
或
dig google.com +short

若返回IP地址,则配置成功。

高级工具

drill:兼容dig的替代工具

host:快速查询域名IP

**五、常见问题与解决方案

1、DNS解析缓慢

尝试更换更快的公共DNS(如1.1.1.1223.5.5.5)。

2、配置被重置

检查是否与NetworkManagersystemd-resolved冲突,建议统一使用一种管理工具。

3、IPv6解析失败

在DNS配置中添加IPv6地址,或禁用IPv6:

   echo "net.ipv6.conf.all.disable_ipv6 = 1" >> /etc/sysctl.conf
   sysctl -p

**个人观点:DNS配置的核心逻辑

稳定性优先:公共DNS(如阿里云223.5.5.5)通常比运营商DNS更稳定。

隐私保护:避免使用不知名DNS服务,优先选择支持DoH/DoT(加密查询)的服务器。

环境适配:企业内网建议自建DNS服务器,外网服务器可搭配多个供应商实现容灾。

定期检查:通过pingdnseval工具评估DNS响应速度,及时优化。

文章摘自:https://idc.huochengrm.cn/dns/7024.html

评论

精彩评论
  • 2025-04-13 08:42:19

    在Linux系统中配置和使用DNS服务器涉及多个步骤,确保安装了bind工具,并创建必要的配置文件,通过编辑这些配置文件设置域名解析规则,启动并启用新配置的DNS服务以使其生效。

  • 2025-04-13 10:33:49

    在Linux系统中,配置DNS服务器需安装软件包,设置解析记录,确保正确配置网络接口。

  • 2025-04-14 00:10:06

    Linux系统中DNS配置涉及多个步骤和场景,包括检查当前设置、临时修改或永久更改,可通过命令行工具进行图形界面操作或使用NetworkManager等管理工具进行修改验证效果及解决常见问题如解析缓慢等问题时需注意隐私保护和稳定性优先的原则定期检查和优化确保网络顺畅运行

  • 2025-04-15 08:34:08

    Linux系统中DNS配置涉及多个步骤和场景,包括检查当前设置、临时修改或永久更改,可通过命令行工具进行图形界面操作或使用NetworkManager等管理工具进行修改验证效果及解决常见问题如解析缓慢等问题时需注意隐私保护和稳定性优先的原则定期检查和优化确保网络顺畅运行