Administrator
Published on 2025-05-14 / 5 Visits
0

Linux 系统中配置 DNS 服务器

#AI

在 Linux 系统中配置 DNS 服务器的方法有多种,具体取决于你的系统版本和网络配置方式。以下是几种常见的配置方法:

方法一:直接修改 /etc/resolv.conf 文件(临时生效)

适用于快速测试或临时修改,重启后配置可能丢失。

# 编辑 resolv.conf 文件
sudo nano /etc/resolv.conf

# 添加或修改 DNS 服务器地址(示例使用 Google 公共 DNS)
nameserver 8.8.8.8
nameserver 8.8.4.4

# 保存并退出(按 Ctrl+O 保存,Ctrl+X 退出)

方法二:通过 NetworkManager 配置(推荐,持久化)

适用于使用 NetworkManager 管理网络的系统(如大多数桌面环境)。

步骤 1:编辑网络连接配置

# 使用 nmcli 命令编辑活动连接(例如 eth0)
sudo nmcli connection modify eth0 ipv4.dns "8.8.8.8 8.8.4.4"

# 或使用图形界面编辑:
# sudo nmtui

步骤 2:应用更改

# 重启 NetworkManager 服务
sudo systemctl restart NetworkManager

# 或重新激活连接
sudo nmcli connection up eth0

方法三:修改 /etc/netplan/*.yaml(Ubuntu 18.04+)

适用于使用 Netplan 管理网络配置的 Ubuntu 系统。

步骤 1:编辑 Netplan 配置文件

# 找到并编辑 Netplan 配置文件(通常位于 /etc/netplan/ 目录下)
sudo nano /etc/netplan/01-network-manager-all.yaml

步骤 2:添加 DNS 配置

network:
  version: 2
  renderer: NetworkManager
  ethernets:
    eth0:  # 根据实际网卡名称修改
      dhcp4: true
      nameservers:
        addresses: [8.8.8.8, 8.8.4.4]  # DNS 服务器地址

步骤 3:应用配置

sudo netplan apply

验证 DNS 配置

配置完成后,可以通过以下命令验证 DNS 是否正常工作:

# 检查 resolv.conf 文件是否更新
cat /etc/resolv.conf

# 测试域名解析
nslookup google.com
ping google.com

注意事项

  1. DHCP 冲突:如果网络使用 DHCP 自动分配 IP,DNS 可能会被 DHCP 服务器覆盖。可以通过以下方式解决:

    • 在 Netplan 配置中设置 dhcp4: false 并手动配置 IP 和 DNS。
    • 在 NetworkManager 中设置 ipv4.ignore-auto-dns: yes
  2. 系统版本差异:不同 Linux 发行版(如 CentOS、Debian)的配置方式可能略有不同,建议查阅对应系统的官方文档。

  3. 防火墙限制:确保防火墙允许 DNS 请求(UDP/TCP 53 端口)。

根据你的系统环境选择合适的配置方法,推荐使用方法二或方法三以确保配置持久化。