问答题553/1053设置 DNS 需要修改哪个配置文件?

难度:
2021-11-02 创建

参考答案:

在 Linux 系统中,设置 DNS 需要修改的主要配置文件是 /etc/resolv.conf。这个文件用于指定系统在进行 DNS 查询时应该使用的 DNS 服务器。

1. 修改 /etc/resolv.conf 文件

编辑 /etc/resolv.conf

1sudo nano /etc/resolv.conf

或者使用您喜欢的编辑器(如 vi, vim 等)。

示例内容:

1# /etc/resolv.conf 2nameserver 8.8.8.8 # Google Public DNS 3nameserver 8.8.4.4 # Google Public DNS 4search example.com # 可选,指定域名搜索列表
  • nameserver:指定 DNS 服务器的 IP 地址,可以配置多个 DNS 服务器地址。系统会按顺序查询 DNS 服务器,直到找到有效的解析。
  • search:指定域名后缀,用于在进行 DNS 查询时自动补全(如查询 host 时,系统会自动查找 host.example.com)。

2. 注意事项

动态配置:

在某些使用 DHCP 的系统中,/etc/resolv.conf 可能会被自动更新(例如通过 DHCP 客户端获取 DNS 配置)。如果是这种情况,您可以使用以下方法防止自动覆盖:

a. 通过 NetworkManager(如果系统使用 NetworkManager 管理网络):

如果系统使用 NetworkManager 来管理网络连接,您可以通过 NetworkManager 配置 DNS。

  • 打开 NetworkManager 配置界面,选择您的网络连接,进入 IPv4 Settings,手动配置 DNS。
b. 通过 DHCP 客户端dhclient):

如果您使用的是 dhclient 客户端并希望保持自定义 DNS 配置,可以通过编辑 dhclient.conf 文件来设置。

1sudo nano /etc/dhcp/dhclient.conf

在文件中添加以下内容:

1prepend domain-name-servers 8.8.8.8, 8.8.4.4;

这会告诉 DHCP 客户端在获取其他 DNS 配置时,优先使用您指定的 DNS 服务器。

3. 重启网络服务

某些情况下,修改 DNS 配置后需要重启网络服务使配置生效。

  • systemd 系统中:

    1sudo systemctl restart network
  • 使用 service 管理的系统:

    1sudo service networking restart

4. 使用 nmcli 命令配置 DNS

如果您的系统使用 NetworkManager,可以使用 nmcli 命令来配置 DNS:

1nmcli con mod "your-connection-name" ipv4.dns "8.8.8.8 8.8.4.4" 2nmcli con up "your-connection-name"

最近更新时间:2024-12-24