← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1750884] [NEW] [2.4, bionic] /etc/resolv.conf not configured correctly in Bionic, leads to no DNS resolution

 

Public bug reported:

When deploying Bionic, /etc/resolv.conf is not configured correctly,
which leads to no DNS resolution. In the output below, you will see that
netplan config is correctly to the 10.90.90.1 nameserver, but in
resolv.conf that's a local address.

Resolv.conf should really be configured to use the provided DNS
server(s). That said, despite that fact, DNS resolution doesn't work
with the local address.

Bionic
------

ubuntu@node01:~$ cat /etc/netplan/50-cloud-init.yaml
# This file is generated from information provided by
# the datasource.  Changes to it will not persist across an instance.
# To disable cloud-init's network configuration capabilities, write a file
# /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg with the following:
# network: {config: disabled}
network:
    version: 2
    ethernets:
        enp0s25:
            match:
                macaddress: b8:ae:ed:7d:17:d2
            mtu: 1500
            nameservers:
                addresses:
                - 10.90.90.1
                search:
                - maaslab
                - maas
            set-name: enp0s25
    bridges:
        br0:
            addresses:
            - 10.90.90.3/24
            gateway4: 10.90.90.1
            interfaces:
            - enp0s25
            parameters:
                forward-delay: 15
                stp: false
ubuntu@node01:~$ cat /etc/resolv.conf
# This file is managed by man:systemd-resolved(8). Do not edit.
#
# 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

search maaslab maas
ubuntu@node01:~$ ping google.com
ping: google.com: Temporary failure in name resolution

[...]

ubuntu@node01:~$ sudo vim /etc/resolv.conf
ubuntu@node01:~$ cat /etc/resolv.conf
# This file is managed by man:systemd-resolved(8). Do not edit.
#
# 127.0.0.53 is the systemd-resolved stub resolver.
# run "systemd-resolve --status" to see details about the actual nameservers.
nameserver 10.90.90.1

search maaslab maas
ubuntu@node01:~$ ping google.com
PING google.com (172.217.0.174) 56(84) bytes of data.
64 bytes from mia09s16-in-f14.1e100.net (172.217.0.174): icmp_seq=1 ttl=52 time=4.46 ms
64 bytes from mia09s16-in-f14.1e100.net (172.217.0.174): icmp_seq=2 ttl=52 time=4.38 ms

=============================
Xenial
==============================

ubuntu@node05:~$ cat /etc/network/interfaces.d/50-cloud-init.cfg
# This file is generated from information provided by
# the datasource.  Changes to it will not persist across an instance.
# To disable cloud-init's network configuration capabilities, write a file
# /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg with the following:
# network: {config: disabled}
auto lo
iface lo inet loopback
    dns-nameservers 10.90.90.1
    dns-search maaslab maas

auto enp0s25
iface enp0s25 inet static
    address 10.90.90.162/24
    gateway 10.90.90.1
    mtu 1500
ubuntu@node05:~$ 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
nameserver 10.90.90.1
search maaslab maas

** Affects: cloud-init
     Importance: Undecided
         Status: New

** Affects: maas
     Importance: Undecided
         Status: Invalid

** Affects: nplan (Ubuntu)
     Importance: Critical
         Status: New

** Affects: systemd (Ubuntu)
     Importance: Critical
         Status: New

** Also affects: cloud-init
   Importance: Undecided
       Status: New

** Also affects: nplan (Ubuntu)
   Importance: Undecided
       Status: New

** Also affects: systemd (Ubuntu)
   Importance: Undecided
       Status: New

** Changed in: nplan (Ubuntu)
   Importance: Undecided => Critical

** Changed in: systemd (Ubuntu)
   Importance: Undecided => Critical

** Changed in: maas
       Status: New => Incomplete

** Changed in: maas
       Status: Incomplete => Invalid

** Description changed:

  When deploying Bionic, /etc/resolv.conf is not configured correctly,
  which leads to no DNS resolution. In the output below, you will see that
  netplan config is correctly to the 10.90.90.1 nameserver, but in
  resolv.conf that's a local address.
  
+ Resolv.conf should really be configured to use the provided DNS
+ server(s)
  
  Bionic
  ------
  
  ubuntu@node01:~$ cat /etc/netplan/50-cloud-init.yaml
  # This file is generated from information provided by
  # the datasource.  Changes to it will not persist across an instance.
  # To disable cloud-init's network configuration capabilities, write a file
  # /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg with the following:
  # network: {config: disabled}
  network:
-     version: 2
-     ethernets:
-         enp0s25:
-             match:
-                 macaddress: b8:ae:ed:7d:17:d2
-             mtu: 1500
-             nameservers:
-                 addresses:
-                 - 10.90.90.1
-                 search:
-                 - maaslab
-                 - maas
-             set-name: enp0s25
-     bridges:
-         br0:
-             addresses:
-             - 10.90.90.3/24
-             gateway4: 10.90.90.1
-             interfaces:
-             - enp0s25
-             parameters:
-                 forward-delay: 15
-                 stp: false
+     version: 2
+     ethernets:
+         enp0s25:
+             match:
+                 macaddress: b8:ae:ed:7d:17:d2
+             mtu: 1500
+             nameservers:
+                 addresses:
+                 - 10.90.90.1
+                 search:
+                 - maaslab
+                 - maas
+             set-name: enp0s25
+     bridges:
+         br0:
+             addresses:
+             - 10.90.90.3/24
+             gateway4: 10.90.90.1
+             interfaces:
+             - enp0s25
+             parameters:
+                 forward-delay: 15
+                 stp: false
  ubuntu@node01:~$ cat /etc/resolv.conf
  # This file is managed by man:systemd-resolved(8). Do not edit.
  #
  # 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
  
  search maaslab maas
  
  =============================
  Xenial
  ==============================
  
- ubuntu@node05:~$ cat /etc/network/interfaces.d/50-cloud-init.cfg 
+ ubuntu@node05:~$ cat /etc/network/interfaces.d/50-cloud-init.cfg
  # This file is generated from information provided by
  # the datasource.  Changes to it will not persist across an instance.
  # To disable cloud-init's network configuration capabilities, write a file
  # /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg with the following:
  # network: {config: disabled}
  auto lo
  iface lo inet loopback
-     dns-nameservers 10.90.90.1
-     dns-search maaslab maas
+     dns-nameservers 10.90.90.1
+     dns-search maaslab maas
  
  auto enp0s25
  iface enp0s25 inet static
-     address 10.90.90.162/24
-     gateway 10.90.90.1
-     mtu 1500
- ubuntu@node05:~$ cat /etc/resolv.conf 
+     address 10.90.90.162/24
+     gateway 10.90.90.1
+     mtu 1500
+ ubuntu@node05:~$ 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
  nameserver 10.90.90.1
  search maaslab maas

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to cloud-init.
https://bugs.launchpad.net/bugs/1750884

Title:
  [2.4, bionic] /etc/resolv.conf not configured correctly in Bionic,
  leads to no DNS resolution

Status in cloud-init:
  New
Status in MAAS:
  Invalid
Status in nplan package in Ubuntu:
  New
Status in systemd package in Ubuntu:
  New

Bug description:
  When deploying Bionic, /etc/resolv.conf is not configured correctly,
  which leads to no DNS resolution. In the output below, you will see
  that netplan config is correctly to the 10.90.90.1 nameserver, but in
  resolv.conf that's a local address.

  Resolv.conf should really be configured to use the provided DNS
  server(s). That said, despite that fact, DNS resolution doesn't work
  with the local address.

  Bionic
  ------

  ubuntu@node01:~$ cat /etc/netplan/50-cloud-init.yaml
  # This file is generated from information provided by
  # the datasource.  Changes to it will not persist across an instance.
  # To disable cloud-init's network configuration capabilities, write a file
  # /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg with the following:
  # network: {config: disabled}
  network:
      version: 2
      ethernets:
          enp0s25:
              match:
                  macaddress: b8:ae:ed:7d:17:d2
              mtu: 1500
              nameservers:
                  addresses:
                  - 10.90.90.1
                  search:
                  - maaslab
                  - maas
              set-name: enp0s25
      bridges:
          br0:
              addresses:
              - 10.90.90.3/24
              gateway4: 10.90.90.1
              interfaces:
              - enp0s25
              parameters:
                  forward-delay: 15
                  stp: false
  ubuntu@node01:~$ cat /etc/resolv.conf
  # This file is managed by man:systemd-resolved(8). Do not edit.
  #
  # 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

  search maaslab maas
  ubuntu@node01:~$ ping google.com
  ping: google.com: Temporary failure in name resolution

  [...]

  ubuntu@node01:~$ sudo vim /etc/resolv.conf
  ubuntu@node01:~$ cat /etc/resolv.conf
  # This file is managed by man:systemd-resolved(8). Do not edit.
  #
  # 127.0.0.53 is the systemd-resolved stub resolver.
  # run "systemd-resolve --status" to see details about the actual nameservers.
  nameserver 10.90.90.1

  search maaslab maas
  ubuntu@node01:~$ ping google.com
  PING google.com (172.217.0.174) 56(84) bytes of data.
  64 bytes from mia09s16-in-f14.1e100.net (172.217.0.174): icmp_seq=1 ttl=52 time=4.46 ms
  64 bytes from mia09s16-in-f14.1e100.net (172.217.0.174): icmp_seq=2 ttl=52 time=4.38 ms

  =============================
  Xenial
  ==============================

  ubuntu@node05:~$ cat /etc/network/interfaces.d/50-cloud-init.cfg
  # This file is generated from information provided by
  # the datasource.  Changes to it will not persist across an instance.
  # To disable cloud-init's network configuration capabilities, write a file
  # /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg with the following:
  # network: {config: disabled}
  auto lo
  iface lo inet loopback
      dns-nameservers 10.90.90.1
      dns-search maaslab maas

  auto enp0s25
  iface enp0s25 inet static
      address 10.90.90.162/24
      gateway 10.90.90.1
      mtu 1500
  ubuntu@node05:~$ 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
  nameserver 10.90.90.1
  search maaslab maas

To manage notifications about this bug go to:
https://bugs.launchpad.net/cloud-init/+bug/1750884/+subscriptions


Follow ups