作者信息:https://home.cnblogs.com/u/huangjiabobk

在Linux中,设置DNS需要修改哪个配置文件?

在Linux中,设置DNS服务器的地址通常涉及修改系统的网络配置文件或使用特定的命令行工具。以下是一些常见的方法:

1. 对于基于Debian的系统(如Ubuntu):
  1. 编辑/etc/resolv.conf文件

    • 这个文件包含了DNS服务器的列表。使用文本编辑器编辑该文件:

      sudo nano /etc/resolv.conf
      
    • 添加或修改nameserver行,例如:

      nameserver 8.8.8.8
      nameserver 8.8.4.4
      
  2. 使用resolvconf

    • 在Debian及其衍生系统中,resolvconf工具用于管理/etc/resolv.conf。你可以使用它来添加DNS服务器:

      sudo resolvconf -a your.network.nameserver -m 0 -x
      
2. 对于基于Red Hat的系统(如CentOS或Fedora):
  1. 编辑/etc/resolv.conf文件

    • 同样,编辑这个文件来添加DNS服务器:

      sudo nano /etc/resolv.conf
      
  2. 使用NetworkManager

    • 如果你的系统使用NetworkManager来管理网络连接,你可以使用nmcli命令来设置DNS:

      sudo nmcli con mod <connection-name> ipv4.dns "8.8.8.8;8.8.4.4"
      
3. 对于使用systemd-resolved的系统:
  1. 编辑/etc/systemd/resolved.conf/etc/systemd/resolved.conf.d/目录下的文件

    • 如果你的系统使用systemd-resolved服务来管理DNS解析,编辑resolved.conf文件或在resolved.conf.d/目录下创建新的配置文件:

      sudo nano /etc/systemd/resolved.conf
      
    • 确保DNS=行包含你的DNS服务器地址,例如:

      DNS=8.8.8.8 8.8.4.4
      
  2. 重启systemd-resolved服务

    • 修改配置文件后,重启systemd-resolved服务以应用更改:

      sudo systemctl restart systemd-resolved
      
4. 使用netplan(在某些新版本的Ubuntu中):
  1. 编辑/etc/netplan/*.yaml文件

    • 在使用netplan的系统中,DNS服务器设置位于netplan配置文件中:

      sudo nano /etc/netplan/01-netcfg.yaml
      
    • 修改或添加DNS地址,例如:

      networking:
        version: 2
        renderer: networkd
        ethernets:
          enp3s0:
            dhcp4: no
            addresses:
              - 192.168.1.100/24
            gateway4: 192.168.1.1
            nameservers:
              addresses: ["8.8.8.8", "8.8.4.4"]
      
  2. 应用配置

    • 使用以下命令应用更改:

      sudo netplan apply
      

综上所述,某些Linux发行版可能使用不同的工具或配置文件来管理网络设置。此外,某些配置可能在系统重启后不会保留,特别是/etc/resolv.conf文件,因为它可能被网络管理器或systemd-resolved服务覆盖。确保你了解你的系统如何管理DNS设置,并根据需要选择合适的方法。

posted @ 2024-06-27 17:07  黄嘉波  阅读(14)  评论(0编辑  收藏  举报
版权声明:原创作品,谢绝转载!否则将追究法律责任。--作者 黄嘉波