5154

Good Luck To You!

linux网络设备dns添加

Linux中,可通过编辑/etc/resolv.conf文件或使用nmcli命令等添加DNS。

Linux网络设备DNS添加

DNS

DNS(Domain Name System,域名系统)是互联网的一项服务,它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网,而不需要记住能够被机器直接读取的IP数串,在Linux系统中,正确配置DNS对于网络连接和应用程序的正常运行至关重要。

常见DNS服务器

DNS服务器 IP地址 特点
Google Public DNS 8.8.8、8.8.4.4 性能稳定,全球广泛使用,解析速度较快
OpenDNS 67.222.222、208.67.220.220 提供安全过滤等功能,可定制性较强
阿里Public DNS 5.5.5、223.6.6.6 国内访问速度快,稳定性高
114 DNS 114.114.114、114.114.115.115 国内常用,解析准确,响应速度快

添加DNS的方法

(一)修改/etc/resolv.conf文件

  1. 步骤

    • 打开终端,使用root权限登录(可以使用sudo su命令切换到root用户)。
    • 使用文本编辑器(如vinano等)打开/etc/resolv.conf文件,vi /etc/resolv.conf
    • 在文件中添加或修改nameserver行,每行指定一个DNS服务器的IP地址,
      nameserver 8.8.8.8
      nameserver 8.8.4.4
    • 保存文件并退出编辑器(在vi中,按下Esc键,输入:wq并回车保存并退出)。
    • 重启网络服务使配置生效,可以使用以下命令之一:
      • sudo systemctl restart NetworkManager(适用于使用NetworkManager的系统)
      • sudo service networking restart(适用于一些传统的网络服务管理方式)
  2. 注意事项

    这种方法配置的DNS是临时生效的,系统重启或网络服务重启后,配置可能会被覆盖,如果需要永久保存配置,需要结合其他方法,如编辑网络接口配置文件或使用网络管理工具进行配置。

(二)使用nmcli命令(适用于使用NetworkManager的Linux发行版)

  1. 步骤

    linux网络设备dns添加

    • 打开终端,使用root权限登录。
    • 执行以下命令查看当前网络连接的名称:nmcli connection show
    • 假设网络连接名称为eth0,执行以下命令编辑选定的网络连接的DNS设置:nmcli connection modify eth0 +ipv4.dns 8.8.8.8 8.8.4.4(将8.8.88.4.4替换为所需的DNS服务器地址)。
    • 退出终端,配置即可生效。
  2. 注意事项

    • 确保系统已经安装了NetworkManager,并且网络连接是通过NetworkManager管理的,如果不确定,可以先检查NetworkManager服务是否正在运行(使用systemctl status NetworkManager命令)。

(三)使用systemd resolved服务(适用于使用systemd resolved服务的Linux发行版)

  1. 步骤

    • 打开终端,使用root权限登录。
    • 执行以下命令编辑resolved.conf文件:vi /etc/systemd/resolved.conf
    • 找到DNS=这一行,并在其后添加DNS服务器地址,DNS=8.8.8.8 8.8.4.4,如果没有这一行,可以自行添加。
    • 保存文件并退出编辑器。
    • 重启systemd resolved服务,命令如下:systemctl restart systemd resolved
  2. 注意事项

    • 部分系统可能默认未启用systemd resolved服务,需要先启用该服务(使用sudo systemctl enable systemd resolved命令),然后再进行上述配置操作。

验证DNS配置是否成功

配置完成后,可以使用以下命令验证DNS配置是否生效:

linux网络设备dns添加

(一)使用nslookup命令

在终端中输入nslookup [域名],例如nslookup www.baidu.com,如果能够正确解析出对应的IP地址,说明DNS配置成功。

(二)使用dig命令

在终端中输入dig [域名],例如dig www.google.com,该命令会显示详细的DNS查询信息,包括查询到的IP地址等,如果能够正常显示相关信息,说明DNS配置正确。

相关问题与解答

(一)问题1:为什么修改了/etc/resolv.conf文件后,DNS配置没有生效?

解答:可能有以下原因导致这种情况:

  1. 网络服务未重启:修改/etc/resolv.conf文件后,需要重启网络服务(如sudo systemctl restart NetworkManagersudo service networking restart)才能使配置生效,如果没有重启网络服务,新的DNS配置可能不会立即被系统识别。
  2. 其他网络管理工具的干扰:某些Linux发行版可能使用了其他的网络管理工具(如NetworkManager、systemd resolved等),这些工具可能会自动覆盖/etc/resolv.conf文件中的配置,在这种情况下,需要使用相应的网络管理工具来配置DNS,而不是仅仅修改/etc/resolv.conf文件,如果系统使用了NetworkManager,应该使用nmcli命令来配置DNS;如果使用了systemd resolved服务,应该编辑/etc/systemd/resolved.conf文件并进行相关操作。
  3. 文件权限问题:确保当前用户具有修改/etc/resolv.conf文件的权限,如果没有权限,可能无法成功保存对文件的修改,可以使用sudo命令获取root权限来进行操作。
  4. DNS服务器故障:所配置的DNS服务器本身可能出现故障,导致无法正常解析域名,可以尝试更换其他可靠的DNS服务器地址,如Google Public DNS(8.8.8.8、8.8.4.4)或阿里Public DNS(223.5.5.5、223.6.6.6)等,再次进行测试。

(二)问题2:如何永久保存DNS配置,避免每次重启系统后都需要重新配置?

解答:要根据不同的Linux发行版和网络管理方式来采取相应的措施,以下是几种常见的方法:

linux网络设备dns添加

  1. 对于基于Debian/Ubuntu系统且使用Netplan的情况

    • Netplan配置文件通常位于/etc/netplan目录下,文件名一般以.yaml例如01 netcfg.yaml
    • 使用文本编辑器打开对应的配置文件,找到网络接口配置部分,添加或修改nameservers字段来指定DNS服务器地址,
      network:
        version: 2
        ethernets:
          eth0:
            addresses: [192.168.1.100/24]
            gateway4: 192.168.1.1
            nameservers:
              addresses: [8.8.8.8, 8.8.4.4]
    • 保存文件后,使用netplan apply命令应用新的网络配置,这样配置的DNS会在系统重启后依然生效。
  2. 对于CentOS/RHEL系统且使用NetworkManager的情况

    • 可以使用nmcli命令来永久配置DNS,要配置名为eth0的网络连接的DNS服务器,可以执行以下命令:
      nmcli connection modify eth0 +ipv4.dns 8.8.8.8 8.8.4.4
    • 然后使用nmcli connection up eth0命令重新加载网络连接,使配置生效,这种通过NetworkManager配置的DNS会在系统重启后自动保留。
    • 也可以编辑NetworkManager的配置文件来永久设置DNS,配置文件通常位于/etc/sysconfig/network scripts/ifcfg eth0(其中eth0是网络接口名称),在该文件中添加以下行来指定DNS服务器地址:
      DNS1=8.8.8.8
      DNS2=8.8.4.4
    • 修改完成后,重启网络服务(sudo systemctl restart network)以应用新的配置。
  3. 对于使用systemd resolved服务的系统

    • 按照前面提到的方法编辑/etc/systemd/resolved.conf文件,添加或修改DNS=行来指定DNS服务器地址。
    • 然后重启systemd resolved服务(systemctl restart systemd resolved)。
    • 为了确保在系统启动时自动加载该配置,还需要启用systemd resolved服务(如果尚未启用),使用命令sudo systemctl enable systemd resolved,这样配置的DNS会在

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

«    2025年8月    »
123
45678910
11121314151617
18192021222324
25262728293031
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
搜索
最新留言
    文章归档
    网站收藏
    友情链接

    Powered By Z-BlogPHP 1.7.3

    Copyright Your WebSite.Some Rights Reserved.