跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • 有没有了解 systemd-reslove 的同学,帮看看。
未分類
8 3 月 2021

有没有了解 systemd-reslove 的同学,帮看看。

有没有了解 systemd-reslove 的同学,帮看看。

資深大佬 : lizenghui 4

电脑是 ubuntu 接了有线,有线的 DNS(192.168.1.1)是自建的 adguardhome 。无线 wifi 也会自动连上(无线和有线不是一套网络环境),默认路由走的有线,查看 systemd-reslove 的配置,自动获得了两个 DNS

cat /run/systemd/resolve/resolv.conf  

为

nameserver 192.168.1.1 (有线) nameserver 10.2.1.1 (无线) 

但是默认总是走无线的 DNS 比如我测试:

$ dig hm.baidu.com  ; <<>> DiG 9.16.6-Ubuntu <<>> hm.baidu.com ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 48252 ;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1  ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 65494 ;; QUESTION SECTION: ;hm.baidu.com.                  IN      A  ;; ANSWER SECTION: hm.baidu.com.           2371    IN      CNAME   hm.e.shifen.com. hm.e.shifen.com.        0       IN      A       220.181.33.11  ;; Query time: 0 msec ;; SERVER: 127.0.0.53#53(127.0.0.53) ;; WHEN: 二 2 月 23 12:56:59 CST 2021 ;; MSG SIZE  rcvd: 83 
$ dig hm.baidu.com @192.168.1.1  ; <<>> DiG 9.16.6-Ubuntu <<>> hm.baidu.com @192.168.1.1 ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 36927 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0  ;; QUESTION SECTION: ;hm.baidu.com.                  IN      A  ;; ANSWER SECTION: hm.baidu.com.           10      IN      A       0.0.0.0  ;; Query time: 0 msec ;; SERVER: 192.168.1.1#53(192.168.1.1) ;; WHEN: 二 2 月 23 12:57:54 CST 2021 ;; MSG SIZE  rcvd: 46 

正常浏览器上网,也无法过滤 AD 现在总要手动把无线关了 但是还经常要用无线 打开 /关闭 太麻烦了 请教下大家能否改一下 systemd-reslove 的配置,默认走哪个网卡的路由就用哪个网卡获得的 DNS

大佬有話說 (13)

  • 資深大佬 : ungrown

    手动指定 DNS 不就行了,Linux 也好 Windows 也罢,各个网络连接(网络适配器)不都是可以手动自定义 DNS 地址的吗

  • 資深大佬 : fiveelementgid

    这个是 fedora 33 引进的新功能, release note 我花了一晚上看完了,用垃圾英语写了个简单的改法,你可以参考康康
    https://github.com/wuyuansushen/systemd-resolved

  • 資深大佬 : fiveelementgid

    详细看了一下你的描述,这个问题无解
    而且 Ubuntu 的 service 还没有 Fedora 的功能强大
    因为现行的 system-resolved 方案好像只能应用于全局,开无线的话相当于提供多了一个网络接口,依旧是优先走无线网络自己获取的 dns 。
    有给一个回退方案:直接回滚不使用 system-resolved 服务,然后屏蔽 dhcp 分配的 dns,不过无法享受 concurrency 查询 dns 所带来的网速提升

  • 主 資深大佬 : lizenghui

    @ungrown 手动指定我知道,这不是麻烦么

  • 主 資深大佬 : lizenghui

    @fiveelementgid 谢了 我按这个研究下。

  • 資深大佬 : fiveelementgid

    参考这个
    https://fedoraproject.org/wiki/Changes/systemd-resolved#Detailed_Description
    有一个回退方案,你看看 Ubuntu 能不能用,split DNS 确实可以提高访问速度,但是无法满足你这个需求,你可以回滚到以前的解决方案

  • 主 資深大佬 : lizenghui

    @fiveelementgid 搞不清 systemd-resolve 跟 networkmanager 怎么配合的。。。
    实在不行就只能停了 systemd-resolve 用写触发脚本去改 DNS 。。。

  • 資深大佬 : fiveelementgid

    @lizenghui 关于配合,你用
    man systemd-resolved.service 可以看看
    我给你简单描述一下
    就是 NetworkManager 没有动,只是在 /etc/resolv.conf 里面配置了,让 NetworkManager 的 dns 指向 127.0.0.53 ,然后交给 DNS server 处理

  • 主 資深大佬 : lizenghui

    @fiveelementgid 嗯 读了一下。 /etc/resolv.conf 是从 /run/systemd/resolve/resolv.conf 软链过去的
    那难道是 systemd-resolve 会拉取 networkmanager 每个网卡自动获取到的 dns 信息 统一做为上游 DNS ?

  • 資深大佬 : fiveelementgid

    @lizenghui 看我的新帖子,给你完整的解决方案了

  • 資深大佬 : ungrown

    @lizenghui #9 差不多就是这个意思
    systemd-resolve 相当于一个(自以为)“智能”的 DNS 管理中心。其实 systemd 一路发展下来一直有这种趋势,系统里面不管什么东西,都喜欢去插一手显得自己是大内总管一样,并不只是网络或者 DNS 这一块儿。倒也确实带来了一些方便,将零零碎碎的配置信息综合到了一起,并提供了一个跨版本统一的配置接口,但这也相当于逼迫用户们不得不学习了解它,一旦遇到特殊情况想自定义个配置往往会被绕晕。

    其实归根到底你就是需要给某个网络接口设置一个自定义的 dns,只不过你觉得需要去手动输入一个写死的 dns 地址这不方便也不优雅,你希望这个过程能通过某种配置或者脚本达到自动化。自动化当然是可行的,只不过没必要刻意追求,想研究尝试当然是不错的选择,但放弃折腾直接在接口配置里写死一条地址也没啥不好,反正配置一次就够了,能用就行。机器软件是工具,是给咱用的,没必要反过来把它们供起来啥都顺着它们。

  • 主 資深大佬 : lizenghui

    @ungrown 感谢感谢。真的如您所说,系统其实也是在不断摸索进步,完善的过程,我们作为使用者真的不能追求优雅,用着舒服就行了。
    目前已经有两种方案都可行,经过大家帮忙想辙的过程也了解到不少知识,感觉 V2EX 氛围挺好。

  • 資深大佬 : ungrown

    @lizenghui #12 客气了,如果您看过我在站内喷人的样子也许就会觉得氛围未必就有那么好了(笑

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具