哪位好心的 Linux 大佬帮帮忙, Debian 11 下如何彻底删除运营商 DNS 服务器? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
oatw
V2EX    Linux

哪位好心的 Linux 大佬帮帮忙, Debian 11 下如何彻底删除运营商 DNS 服务器?

  •  
  •   oatw Aug 2, 2022 3888 views
    This topic created in 1364 days ago, the information mentioned may be changed or developed.

    目前我干了这些:

    首先,在以下文件插入了 google DNS servers 。

    cat /etc/resolvconf/resolv.conf.d/head 

    输出 ->

    # Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8) # DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN # 127.0.0.53 is the systemd-resolved stub resolver. # run "resolvectl status" to see details about the actual nameservers. nameserver 8.8.8.8 nameserver 8.8.4.4 nameserver 2001:4860:4860::8888 nameserver 2001:4860:4860::8844 

    然后,重启相关服务

    sudo systemctl restart resolvconf.service sudo systemctl restart systemd-resolved.service 

    最后,查看当前生效 DNS servers

    cat /etc/resolv.conf 

    输出 ->

    # Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8) # DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN # 127.0.0.53 is the systemd-resolved stub resolver. # run "resolvectl status" to see details about the actual nameservers. nameserver 8.8.8.8 nameserver 8.8.4.4 nameserver 2001:4860:4860::8888 nameserver 2001:4860:4860::8844 nameserver 211.141.0.99 ### 如何把运营商的 DNS 服务器彻底干掉? ### nameserver 211.141.16.99 ### 如何把运营商的 DNS 服务器彻底干掉? ### nameserver 127.0.0.53 

    另外,执行以下命令发现运营商的两个 DNS 服务器也还在:

    resolvectl status 

    输出 ->

    Global Protocols: +LLMNR +mDNS -DNSOverTLS DNSSEC=no/unsupported resolv.conf mode: foreign Current DNS Server: 8.8.8.8 DNS Servers: 8.8.8.8 8.8.4.4 2001:4860:4860::8888 2001:4860:4860::8844 211.141.0.99 211.141.16.99 ### 如何把运营商的 DNS 服务器彻底干掉? ### Link 2 (enp0s31f6) Current Scopes: DNS LLMNR/IPv4 LLMNR/IPv6 Protocols: +DefaultRoute +LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported DNS Servers: 211.141.0.99 211.141.16.99 ### 如何把运营商的 DNS 服务器彻底干掉? ### 

    求问:如何彻底干掉运营商的 DNS 服务器?

    12 replies    2022-09-14 11:24:43 +08:00
    cubecube
        1
    cubecube  
       Aug 2, 2022
    别用 dhcp 配置 static
    dhcp 会改 dns
    hefish
        2
    hefish  
       Aug 2, 2022   1
    dhcp 协议本身就可以推送 dns 等网络配置信息吧。要不你试试 chattr +i /etc/resolv.conf
    zbinlin
        3
    zbinlin  
       Aug 2, 2022   1
    在 `/etc/systemd/network/` 下找到 `enp.network` (可能是其他文件名),在里面添加

    ```
    [DHCP]
    UseDNS = no
    ```

    如果有 IPv6 的 DNS ,再添加:

    ```
    [IPV6ACCEPTRA]
    UseDNS = no
    ```
    dzdh
        4
    dzdh  
       Aug 2, 2022
    ```
    # Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
    # DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
    # 127.0.0.53 is the systemd-resolved stub resolver.
    # run "resolvectl status" to see details about the actual nameservers.
    ```

    > # DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
    ksc010
        5
    ksc010  
       Aug 2, 2022   1
    下面这 3 个都会 修改 dns 配置文件, 若要固定 dns 需要判断当前是哪个程序在管理
    1. resolvconf
    2. NetworkManager
    3. DHCP clients ( dhclient dhcpd )



    ##dhcpd

    https://man.archlinux.org/man/dhcpcd.conf.5

    sudo vi /etc/dhcpcd.conf

    #option domain_name_servers, domain_name, domain_search, host_name
    option domain_name, domain_search, host_name
    static domain_name_servers=223.5.5.5 223.6.6.6


    ##dhclient
    sudo vi /etc/dhcp/dhclient.conf

    supersede domain-name-servers 223.5.5.5,223.6.6.6; #覆盖
    prepend domain-name-servers 223.5.5.5,223.6.6.6; #附加
    anytk
        6
    anytk  
       Aug 2, 2022
    启用 systemd-resolved 服务
    然后 链接 /etc/resolv.conf 指向 /run/systemd/resolve/stub-resolv.conf
    然后 新建 /etc/systemd/resolved.conf.d/dns.conf ,加入自己的 dns ,注意使用 `Domains=~.` 行
    ```ini
    [Resolve]
    DNS=xxxxxxx
    Domains=~.
    ```
    重启 systemd-resolved 服务就可以了,具体可以去看 arch 的 wiki
    oatw
        7
    oatw  
    OP
       Aug 2, 2022
    @ksc010 谢谢你,果然是高手呀~
    happyabs
        8
    happyabs  
       Sep 14, 2022
    debian 默认的网络管理为 ifupdown, 一般通过修改 /etc/network/interfaces 文件来启用 dhcp,具体配置操作可参考官方文档:
    sudo nano /etc/network/interfaces
    auto ens123
    iface ens123 inet dhcp
    happyabs
        9
    happyabs  
       Sep 14, 2022
    手贱想按^+Enter 换行,结果发送回复了
    如果启用了 DHCP:
    debian 默认的网络管理为 ifupdown, 一般通过修改 /etc/network/interfaces 文件来启用 DHCP, 具体配置操作可参考官方文档, 这里给出样例, 我的配置如下:
    sudo nano /etc/network/interfaces
    auto ens123
    iface ens123 inet dhcp

    之后就交由 dhcp 来配置 dns(dns 全称: domain-name-servers),
    ifupdown 的 DHCP 方式:dhclient, pump, udhcpc, dhcpcd(按启用的先后顺序), 一般默认使用内置的 dhclient,
    因此要修改 dhclient 的配置文件(/etc/dhcp/dhclient.conf), 才真正修改 DNS:
    sudo nano /etc/dhcp/dhclient.conf
    #添加下面这行就是覆盖全局所有使用 DHCP 的网卡的 DNS.
    supersede domain-name-servers 202.96.128.86, 119.29.29.29, 202.96.134.133;

    #添加下面这块代码就是只覆盖特定网卡的 DNS, 并且不获取 domain-name-servers 和 ipv6 的配置.
    interface "ens192" {
    request subnet-mask, broadcast-address, time-offset, routers,
    domain-name, domain-search, host-name,
    netbios-name-servers, netbios-scope, interface-mtu,
    rfc3442-classless-static-routes;
    supersede domain-name-servers 202.96.128.86, 119.29.29.29, 20296.134.133;
    }

    #其中 supersede 这个修饰符的意思是只按用户指定的值, 忽略 DHCP 获取的; 此外还有 default prepend 等修饰符,具体可参考官方文档.
    happyabs
        10
    happyabs  
       Sep 14, 2022
    如果没启用 DHCP:
    那就直接在 /etc/network/interfaces 修改 dns 好了,如果不是用 debian 默认的 ifupdown, 用的是 networkd,那就改这个的配置文件

    networkd 在 Debian11 中是已安装但未启用的,也不是 Debian 默认的网络管理,使用 networkctl 命令可检查其运行状态,networkd 修改 dns 更方便点貌似, 也支持 dhcp 只获取 ip 不获取 dns 的场景, 如果用 netplan 作为前端管理就更加方便了

    以下是参考链接:
    https://manpages.debian.org/buster/isc-dhcp-client/dhclient.8.en.html
    About     Help     Advertise     Blog     API     FAQ     Solana     5703 Online   Highest 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 114ms UTC 07:46 PVG 15:46 LAX 00:46 JFK 03:46
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86