生活分享

  • 首页
HETAO
业余码农、业余机械爱好者
  1. 首页
  2. 未分类
  3. 正文

如何永久变更/etc/resolv.conf

2022年9月19日 2315点热度 0人点赞 0条评论

file

每个玩过dns的都会碰到这个问题,当修改了/etc/resolv.conf后马上就生效了,然后重启后就都丢失了。其实在这个文件的开头就有明确的提示,此文件为链接文件,每次都会重新生成。并且你修改了原文件后也还是会被覆盖,不知道提出这个建议的人为什么没有被还原。
正确的做法应该是修改systemd的配置文件/etc/systemd/resolved.conf,修改其中dns配置项,不知道是不是生效特别慢还是怎么的,我的还是ping不通,所有linux手册都是推荐这个,实在不行再用后面的终极大法。

终极大法

systemctl stop systemd-resolved.service
systemctl disable systemd-resolved.service

其实systemd之所以接管dns,好像是到目前为止没有人做过一个像样的管理器,所以他才勉为其难接管,然后做的也太难用。既然就是/etc/resolv.conf他的问题,那么让systemd放弃dns接管,改为手动设置即可,毕竟dns服务器万年不变的。
这里需要注意的是linux只支持三个namserver哦,多了也没用。
对了,我是docker中没有生效,如果也是docker的问题可以用这个办法,同时docker支持手动在damon配置中配置dns:

{
  "dns" : [
    "114.114.114.114",
    "8.8.8.8"
  ]
}

常用命令

dig @xxx.xxx.xxx.xxx www.domain.com
指定ip地址解析域名,我最喜欢用了

nslookup www.domain.com
最常用的,信息量丰富

resolvectl query domain | ip address
用於 DNS 的正向或反向查詢,取決於輸入資料。
裡面也會寫查詢的協議、回應時間等等資料。
resolvectl status
查詢目前 systemd-resolved 的設定。
resolvectl statistics
查詢 systemd-resolved 的統計資料,像是快取數量及命中率。
resolvectl flush-caches
清除本機 DNS 快取,一般來說應該用不到,除非 DNS 被污染而快取錯誤的資料吧。

云服务器注意点

在配置腾讯云服务器时发现他居然单独给网卡设置了dns,所以实际解析都是靠这个地址,比如内网系统更新源镜像、docker镜像等。所以linux的三个nameserver依次就是

  1. 我们的dnsmasq
  2. 云厂商nameserver
  3. 公网nameserver比如114.114.114.114

阿里云内网地址

nameserver 100.100.2.136
nameserver 100.100.2.138
nameserver 223.5.5.5
nameserver 223.6.6.6
options timeout:2 attempts:3 rotate single-request-reopen
Post Views: 2,289
标签: 暂无
最后更新:2023年3月1日

jinzhao

这个人很懒,什么都没留下

点赞
< 上一篇
下一篇 >

COPYRIGHT © 2022 生活分享. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang

浙ICP备14004285号-1