AWS Ubuntu设置DNS解析(解决resolve.conf被覆盖问题)

众所周知:

Ubuntu在域名解析时,最直接使用的是/etc/resolve.conf文件,它是/run/systemd/resolve/resolve.conf的软链接,而对于刚装完的ubuntu系统,该文件的内容如下

bash 复制代码
ubuntu@ip-172-31-36-184:/etc$ cat resolv.conf
# This file is managed by man:systemd-resolved(8). Do not edit.
#
# This is a dynamic resolv.conf file for connecting local clients directly to
# all known uplink DNS servers. This file lists all configured search domains.
#
# Third party programs must not access this file directly, but only through the
# symlink at /etc/resolv.conf. To manage man:resolv.conf(5) in a different way,
# replace this symlink by a static file or a different symlink.
#
# See man:systemd-resolved.service(8) for details about the supported modes of
# operation for /etc/resolv.conf.

nameserver 172.31.0.2
search ap-northeast-1.compute.internal

第1步, 修改/etc/systemd/resolved.conf,例如:

谷歌的dns=8.8.8.8 cloudflare的dns: 1.1.1.1

bash 复制代码
ubuntu@ip-172-31-36-184:/etc/systemd$ ls
journald.conf  logind.conf  network  networkd.conf  pstore.conf  resolved.conf  sleep.conf  system  system.conf  timesyncd.conf  user  user.conf
ubuntu@ip-172-31-36-184:/etc/systemd$ cat resolved.conf 
#  This file is part of systemd.
#
#  systemd is free software; you can redistribute it and/or modify it
#  under the terms of the GNU Lesser General Public License as published by
#  the Free Software Foundation; either version 2.1 of the License, or
#  (at your option) any later version.
#
# Entries in this file show the compile time defaults.
# You can change settings by editing this file.
# Defaults can be restored by simply deleting this file.
#
# See resolved.conf(5) for details

[Resolve]
DNS=8.8.8.8 1.1.1.1
#FallbackDNS=
#Domains=
#LLMNR=no
#MulticastDNS=no
#DNSSEC=no
#DNSOverTLS=no
#Cache=no-negative
#DNSStubListener=yes
#ReadEtcHosts=yes

个人猜测,这个时候,系统在往/run/systemd/resolve/resolv.conf里面写域名解析服务器地址的时候,会从/etc/systemd/resolved.conf中取得DNS相关的配置。

复制代码
    2,重启域名解析服务

            systemctl restart systemd-resolved
            systemctl enable systemd-resolved

    3,备份当前的/etc/resolve.conf,并重新设置/run/systemd/resolve/resolv.conf  到/etc/resolve.conf的软链接

            mv    /etc/resolv.conf    /etc/resolv.conf.bak
            ln  -s   /run/systemd/resolve/resolv.conf    /etc/

验证:

bash 复制代码
ubuntu@ip-172-31-36-184:/etc$ cat resolv.conf
# This file is managed by man:systemd-resolved(8). Do not edit.
#
# This is a dynamic resolv.conf file for connecting local clients directly to
# all known uplink DNS servers. This file lists all configured search domains.
#
# Third party programs must not access this file directly, but only through the
# symlink at /etc/resolv.conf. To manage man:resolv.conf(5) in a different way,
# replace this symlink by a static file or a different symlink.
#
# See man:systemd-resolved.service(8) for details about the supported modes of
# operation for /etc/resolv.conf.

nameserver 8.8.8.8
nameserver 1.1.1.1
nameserver 172.31.0.2
search ap-northeast-1.compute.internal

参考:
1-华为云开发者论坛

2-csdn https://blog.csdn.net/booklijian/article/details/116491288

相关推荐
捷瑞电子工坊11 小时前
Ubuntu 终端指令速查手册(持续更新)
linux·ubuntu·教程·开发工具·命令行·速查手册·终端指令
发光的沙子12 小时前
嵌入式系统架构师----Ubuntu如何安装不在列表内的软件?
linux·运维·ubuntu
飘忽不定的bug14 小时前
ubuntu20.04交叉编译QT5.15.12(RK3562+ubuntu20.04)
linux·qt·ubuntu
库玛西14 小时前
深入浅出Linux select网络模型:从底层位图原理到C++面向对象高级封装
linux·服务器·网络·c++·ubuntu
迷路爸爸18015 小时前
在 Ubuntu / Linux 上轻量安装 LaTeX:TinyTeX 使用记录
linux·运维·ubuntu
范桂飓15 小时前
AWS Kiro Agent 架构解析
架构·云计算·aws
与自己和解74116 小时前
使用ssh实现 VScode 直连 ubuntu
vscode·ubuntu·ssh
2601_9622998817 小时前
Linux下运行Python脚本
linux·python·ubuntu·脚本·命令
skywalk816317 小时前
通过下载Ubuntu ova文件在Virtual Box快速安装ubuntu
linux·运维·ubuntu·virtualbox
捷瑞电子工坊18 小时前
Ubuntu 下安装 VSCode 和 gcc 的简单步骤
vscode·ubuntu·代码编辑器·安装教程·gcc·deb·snap