Конфликты Netplan, networkd, resolvconf: невозможно изменить DNS-серверы

Я запускаю Ubuntu 22.04.1 на безголовом сервере и пытаюсь изменить DNS, который использует сервер. Я настроил файл netplan .yaml следующим образом, чтобы использовать серверы Cloudflare:

      network:
  version: 2
  renderer: networkd
  ethernets:
    enp0s31f6:
      addresses:
        - xxx.xxx.xxx.xxx/32
        - xxxx.xxxx.xxx::2/64
      routes:
        - to: default
          via: xxx.xxx.xxx.xxx
          metric: 100
          on-link: true
        - to: ::/0
          via: fe80::1
      nameservers:
        addresses:
          - 1.1.1.1
          - 2606:4700:4700::1111
          - 1.0.0.1
          - 2606:4700:4700::1001

Послеsudo netplan apply, все казалось copasetic. Кромеnslookup somewebsite.comпоказал, что используемый DNS был 8.8.8.8.

Я проследил источник этого, я думаю, до файла /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 "systemd-resolve --status" to see details about the actual #nameservers.
#nameserver 127.0.0.53
nameserver 8.8.8.8

Мало того, что в этом файле написано, что его нельзя редактировать, он фактически не может быть отредактирован. И я уверен, что если бы я его отредактировал, он был бы перезаписан (полагаю, resolvconf) этим сервером имен Google.

Теперь я нахожусь в положении, когда все проверяется, кроме фактического используемого DNS, который упрямо застрял на 8.8.8.8.

Например,sudo networkctl status enp0s31f6возвращает это:

      ● 2: enp0s31f6                                                                       
                     Link File: /usr/lib/systemd/network/99-default.link
                  Network File: /run/systemd/network/10-netplan-enp0s31f6.network
                          Type: ether
                         State: routable (configured)
                  Online state: online                                               
                          Path: pci-0000:00:1f.6
                        Driver: e1000e
                        Vendor: Intel Corporation
                         Model: Ethernet Connection (2) I219-LM
                    HW Address: xx:xx:xx:xx:xx:xx (Fujitsu Technology Solutions GmbH)
                           MTU: 1500 (min: 68, max: 9000)
                         QDisc: pfifo_fast
  IPv6 Address Generation Mode: eui64
          Queue Length (Tx/Rx): 1/1
              Auto negotiation: yes
                         Speed: 1Gbps
                        Duplex: full
                          Port: tp
                       Address: xxx.xxx.xxx.xxx
                                xxxx:xxx:xx:xxxx::2
                                xxxx::xxxx:xxx:xxxx:xxxx
                       Gateway: xxx.xxx.xxx.xxx
                                xxx.xxx.xxx.xxx
                                fe80::1
                           DNS: 1.1.1.1
                                1.0.0.1
                                2606:4700:4700::1111
                                2606:4700:4700::1001
             Activation Policy: up
           Required For Online: yes
             DHCP6 Client DUID: DUID-EN/Vendor:0000ab11edfd2edd2491a9410000

Иsudo resolvctl statusдает это:

          Global
           Protocols: -LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported
    resolv.conf mode: foreign
  Current DNS Server: 1.1.1.1
         DNS Servers: 1.1.1.1
Fallback DNS Servers: 1.0.0.1

Link 2 (enp0s31f6)
    Current Scopes: DNS
         Protocols: +DefaultRoute +LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported
Current DNS Server: 1.1.1.1
       DNS Servers: 1.1.1.1 1.0.0.1 2606:4700:4700::1111 2606:4700:4700::1001

Link 8 (wg0)
Current Scopes: none
     Protocols: -DefaultRoute +LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported

Итак, все, на что я смотрю, говорит мне, что 1.1.1.1 является основным DNS для моего сервера. Кромеnslookup askubuntu.comкоторый упрямо всегда возвращает это:

          Server:     8.8.8.8
Address:    8.8.8.8#53

Non-authoritative answer:
Name:   askubuntu.com
Address: 151.101.65.69
Name:   askubuntu.com
Address: 151.101.193.69
Name:   askubuntu.com
Address: 151.101.129.69
Name:   askubuntu.com
Address: 151.101.1.69

Я проверил, что 8.8.8.8 действительно используется, запустивsudo tcpdump -n -vv -i enp0s31f6 -W 1200 | grep google.comв одном окне во время работыnslookup google.comв другой.

Как я могу заставить свой сервер прекратить использование 8.8.8.8 и начать использовать DNS, который я пытался запустить?

0 ответов

Другие вопросы по тегам