eni rendering dhcp6 writes aliases fails to bring up dhcp6

Bug #1657940 reported by Scott Moser on 2017-01-20
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
cloud-init
High
Ryan Harper
cloud-init (Ubuntu)
Medium
Unassigned
Xenial
Medium
Unassigned
Yakkety
Medium
Unassigned

Bug Description

=== Begin SRU Template ===
[Impact]
cloud-init rendered ENI (/etc/network/interfaces) configuration using
"aliases" (eth0:1). That fails in some scenarios to bring up all interfaces
on boot.

Most specifically problematic is dhcp with ipv4 and dhcp with ipv6.
In that case ipv6 dhcp just would not come up on boot.

[Test Case]
There are unit tests to verify that the new network configuration
is written as expected. Additionally, this is now using the same
ENI rendering format that curtin uses, which has good test cases
in its 'vmtest'.

[Regression Potential]
Users who had done:
   ifup eth0:1
will no longer be able to do that. However now this will reliably work:
   ifup eth0
to bring up all ip addresses on eth0.
=== End SRU Template ===

Currently, a config like this:
| version: 1
| config:
| - 'type': 'physical'
| 'name': 'iface0'
| 'subnets':
| - {'type': 'dhcp4'}
| - {'type': 'dhcp6'}

Will render:
| auto lo
| iface lo inet loopback
|
| auto iface0
| iface iface0 inet dhcp
| post-up ifup iface0:1
|
|
| auto iface0:1
| iface iface0:1 inet6 dhcp

Below is an example test case that shows the output.
Heres the problem:
$ sudo sh -c 'ifdown eth0; ifup eth0'
$ sudo sh -c 'ifdown eth0; ifup eth0'
Killed old client process
Internet Systems Consortium DHCP Client 4.3.3
Copyright 2004-2015 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/

Listening on LPF/eth0/06:b3:0a:3a:2d:e3
Sending on LPF/eth0/06:b3:0a:3a:2d:e3
Sending on Socket/fallback
DHCPRELEASE on eth0 to 172.31.16.1 port 67 (xid=0x32b625f1)
Internet Systems Consortium DHCP Client 4.3.3
Copyright 2004-2015 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/

Listening on LPF/eth0/06:b3:0a:3a:2d:e3
Sending on LPF/eth0/06:b3:0a:3a:2d:e3
Sending on Socket/fallback
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 3 (xid=0xa4d5f301)
DHCPREQUEST of 172.31.29.161 on eth0 to 255.255.255.255 port 67 (xid=0x1f3d5a4)
DHCPOFFER of 172.31.29.161 from 172.31.16.1
DHCPACK of 172.31.29.161 from 172.31.16.1
bound to 172.31.29.161 -- renewal in 1801 seconds.

Failed to bring up eth0:1.
Failed to bring up eth0.

$ sudo ifup -v eth0:1
Parsing file /etc/network/interfaces.d/50-cloud-init.cfg
Parsing file /etc/network/interfaces.d/60-ipv6.cfg
Configuring interface eth0:1=eth0:1 (inet6)
/bin/run-parts --exit-on-error --verbose /etc/network/if-pre-up.d
run-parts: executing /etc/network/if-pre-up.d/ethtool
run-parts: executing /etc/network/if-pre-up.d/ifenslave
+ [ inet6 = meta ]
+ IF_BOND_SLAVES=
+ [ ]
+ [ ]
+ [ -z ]
+ exit
run-parts: executing /etc/network/if-pre-up.d/vlan
/sbin/modprobe -q net-pf-10 > /dev/null 2>&1 || true # ignore failure.
/sbin/sysctl -q -e -w net.ipv6.conf.eth0:1.accept_ra=1

/bin/ip link set dev eth0:1 up
/lib/ifupdown/wait-for-ll6.sh
/sbin/dhclient -1 -6 -pf /run/dhclient6.eth0:1.pid -lf /var/lib/dhcp/dhclient6.eth0:1.leases -I -df /var/lib/dhcp/dhclient.eth0:1.leases eth0:1

--- a/tests/unittests/test_net.py
+++ b/tests/unittests/test_net.py
@@ -813,6 +813,27 @@ class TestEniRoundTrip(TestCase):
         self.assertEqual(
             expected, [line for line in found if line])

+ def test_dhcp4_and_dhcp6(self):
+ conf = yaml.load(textwrap.dedent("""\
+ version: 1
+ config:
+ - 'type': 'physical'
+ 'name': 'iface0'
+ 'subnets':
+ - {'type': 'dhcp4'}
+ - {'type': 'dhcp6'}
+ """))
+
+ #conf = [
+ # {'type': 'physical', 'name': 'iface0',
+ # 'subnets': [
+ # {'type': 'dhcp4'},
+ # {'type': 'dhcp6'},
+ # ]},
+ #]
+ files = self._render_and_read(network_config=conf)
+ raise Exception(files['/etc/network/interfaces'])
+

Related branches

Scott Moser (smoser) on 2017-01-24
Changed in cloud-init:
status: New → Confirmed
importance: Undecided → High
Jon Grimm (jgrimm) on 2017-01-25
Changed in cloud-init:
assignee: nobody → Ryan Harper (raharper)
status: Confirmed → In Progress
Scott Moser (smoser) on 2017-01-28
Changed in cloud-init:
status: In Progress → Fix Committed
Changed in cloud-init (Ubuntu):
status: New → Fix Committed
status: Fix Committed → Confirmed
importance: Undecided → Medium
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package cloud-init - 0.7.9-19-ge987092-0ubuntu1

---------------
cloud-init (0.7.9-19-ge987092-0ubuntu1) zesty; urgency=medium

  * New upstream snapshot.
    - manual_cache_clean: When manually cleaning touch a file in instance dir.
    - Add tools/ds-identify to identify datasources available.
    - Fix small typo and change iso-filename for consistency [Robin Naundorf]
    - Fix eni rendering of multiple IPs per interface
      [Ryan Harper] (LP: #1657940)
    - tools/mock-meta: support python2 or python3 and ipv6 in both.
    - tests: remove executable bit on test_net, so it runs, and fix it.
    - tests: No longer monkey patch httpretty for python 3.4.2
    - Add 3 ecdsa-sha2-nistp* ssh key types now that they are standardized
      [Lars Kellogg-Stedman] (LP: #1658174)
    - reset httppretty for each test [Lars Kellogg-Stedman] (LP: #1658200)
    - build: fix running Make on a branch with tags other than master
    - EC2: Do not cache security credentials on disk
      [Andrew Jorgensen] (LP: #1638312)
    - doc: Fix typos and clarify some aspects of the part-handler
      [Erik M. Bray]
    - doc: add some documentation on OpenStack datasource.
    - OpenStack: Use timeout and retries from config in get_data.
      [Lars Kellogg-Stedman] (LP: #1657130)
    - Fixed Misc issues related to VMware customization. [Sankar Tanguturi]
    - Fix minor docs typo: perserve > preserve [Jeremy Bicha]
    - Use dnf instead of yum when available [Lars Kellogg-Stedman]
      (LP: #1647118)
    - validate-yaml: use python rather than explicitly python3
    - Get early logging logged, including failures of cmdline url.

 -- Scott Moser <email address hidden> Fri, 03 Feb 2017 21:54:39 -0500

Changed in cloud-init (Ubuntu):
status: Confirmed → Fix Released
Scott Moser (smoser) on 2017-03-03
Changed in cloud-init (Ubuntu Xenial):
status: New → Incomplete
Changed in cloud-init (Ubuntu Yakkety):
status: New → Confirmed
Changed in cloud-init (Ubuntu Xenial):
status: Incomplete → Confirmed
importance: Undecided → Medium
Changed in cloud-init (Ubuntu Yakkety):
importance: Undecided → Medium
Scott Moser (smoser) on 2017-03-03
description: updated

Hello Scott, or anyone else affected,

Accepted cloud-init into xenial-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/cloud-init/0.7.9-48-g1c795b9-0ubuntu1~16.04.1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed.Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in cloud-init (Ubuntu Xenial):
status: Confirmed → Fix Committed
tags: added: verification-needed
Chris Halse Rogers (raof) wrote :

Hello Scott, or anyone else affected,

Accepted cloud-init into yakkety-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/cloud-init/0.7.9-48-g1c795b9-0ubuntu1~16.10.1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed.Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in cloud-init (Ubuntu Yakkety):
status: Confirmed → Fix Committed
Scott Moser (smoser) wrote :
Download full text (3.1 KiB)

ami-6b6f4b0e ubuntu/images-testing-dev/hvm-ssd/ubuntu-xenial-16.04-testing-amd64-server-20170307
ami-6a6f4b0f ubuntu/images-testing/hvm-ssd/ubuntu-yakkety-daily-amd64-server-20170307

I launched an instance in an EC2 region (us-east-2) into a subnet with configured ipv6.

$ rel=$(lsb_release -sc)
$ line=$(awk '$1 == "deb" && $2 ~ /ubuntu.com/ { printf("%s %s %s-proposed main universe\n", $1, $2, rel); exit(0) }; ' "rel=$rel" /etc/apt/sources.list)
$ echo "$line" | sudo tee /etc/apt/sources.list.d/proposed.list
$ sudo apt-get update -q && sudo apt-get install cloud-init -qy
$ dpkg-query --show cloud-init
cloud-init 0.7.9-48-g1c795b9-0ubuntu1~16.04.1

## just show the network info to show the ipv6 section.
$ python3 -c 'from cloudinit import ec2_utils; print(ec2_utils.get_instance_metadata()["network"])'
{'interfaces': {'macs': {'02:30:58:a7:f4:7f': {'vpc-id': 'vpc-87e72bee', 'security-group-ids': 'sg-5a61d333', 'subnet-ipv6-cidr-blocks': '2600:1f16:aeb:b20a::/64', 'vpc-ipv4-cidr-block': '172.31.0.0/16', 'device-number': '0', 'owner-id': '950047163771', 'subnet-ipv4-cidr-block': '172.31.0.0/20', 'vpc-ipv6-cidr-blocks': '2600:1f16:aeb:b200::/56', 'interface-id': 'eni-fa814292', 'local-hostname': 'ip-172-31-6-189.us-east-2.compute.internal', 'public-ipv4s': '52.14.171.177', 'ipv6s': '2600:1f16:aeb:b20a:ab2:9fda:425c:b9e7', 'vpc-ipv4-cidr-blocks': '172.31.0.0/16', 'mac': '02:30:58:a7:f4:7f', 'security-groups': 'wide-open', 'ipv4-associations': {'52.14.171.177': '172.31.6.189'}, 'local-ipv4s': '172.31.6.189', 'subnet-id': 'subnet-cdf821a4', 'public-hostname': 'ec2-52-14-171-177.us-east-2.compute.amazonaws.com'}}}}

I then set default networking for cloud-init to attempt both ipv4 and ipv6.

$ ADDR=$(cat /sys/class/net/eth0/address)
$ sudo tee /etc/cloud/cloud.cfg.d/99-network-config.cfg <<EOF
network:
 version: 1
 config:
  - type: physical
    name: eth0
    mac_address: $ADDR
    subnets:
     - type: dhcp
     - type: dhcp6
EOF

Then, clean the instance, and reboot.

$ sudo rm -Rf /var/log/cloud-init /var/lib/cloud
$ sudo reboot

## When you go back in, look /etc/network/interfaces.d/50-cloud-init.cfg
## and verify it has an ipv6 address and a dhclient6 running.
$ grep -v "^[#]." /etc/network/interfaces.d/50-cloud-init.cfg | grep .
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet dhcp
iface eth0 inet6 dhcp

$ ip address show dev eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9001 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 02:30:58:a7:f4:7f brd ff:ff:ff:ff:ff:ff
    inet 172.31.6.189/20 brd 172.31.15.255 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 2600:1f16:aeb:b20a:ab2:9fda:425c:b9e7/128 scope global
       valid_lft forever preferred_lft forever
    inet6 fe80::30:58ff:fea7:f47f/64 scope link
       valid_lft forever preferred_lft forever

$ ps axw | grep [d]hclient
  888 ? Ss 0:00 /sbin/dhclient -1 -v -pf /run/dhclient.eth0.pid -lf /var/lib/dhcp/dhclient.eth0.leases -I -df /var/lib/dhcp/dhclient6.eth0.leases eth0
 1052 ? Ss 0:00 /sbin/dhclient -1 -6 -pf /run/dhclient6.eth0.pid -lf /var/lib/dhcp/dhclient6.eth0.leases -I -df /var/lib/dhcp/dhclient.eth0.le...

Read more...

Scott Moser (smoser) wrote :
Download full text (3.5 KiB)

ami-6b6f4b0e ubuntu/images-testing-dev/hvm-ssd/ubuntu-xenial-16.04-testing-amd64-server-20170307
ami-6a6f4b0f ubuntu/images-testing/hvm-ssd/ubuntu-yakkety-daily-amd64-server-20170307

I launched an instance in an EC2 region (us-east-2) into a subnet with configured ipv6.

$ rel=$(lsb_release -sc)
$ line=$(awk '$1 == "deb" && $2 ~ /ubuntu.com/ { printf("%s %s %s-proposed main universe\n", $1, $2, rel); exit(0) }; ' "rel=$rel" /etc/apt/sources.list)
$ echo "$line" | sudo tee /etc/apt/sources.list.d/proposed.list
$ sudo apt-get update -q && sudo apt-get install cloud-init -qy </dev/null
$ dpkg-query --show cloud-init
cloud-init 0.7.9-48-g1c795b9-0ubuntu1~16.10.1

## just show the network info to show the ipv6 section.
$ python3 -c 'from cloudinit import ec2_utils; print(ec2_utils.get_instance_metadata()["network"])'
{'interfaces': {'macs': {'06:20:c9:69:43:c3': {'public-ipv4s': '52.14.184.32', 'vpc-ipv6-cidr-blocks': '2600:1f16:aeb:b200::/56', 'subnet-id': 'subnet-20b8565b', 'interface-id': 'eni-8388dff8', 'owner-id': '950047163771', 'subnet-ipv4-cidr-block': '172.31.16.0/20', 'subnet-ipv6-cidr-blocks': '2600:1f16:aeb:b20b::/64', 'security-groups': 'wide-open', 'security-group-ids': 'sg-5a61d333', 'local-hostname': 'ip-172-31-30-202.us-east-2.compute.internal', 'ipv4-associations': {'52.14.184.32': '172.31.30.202'}, 'vpc-ipv4-cidr-blocks': '172.31.0.0/16', 'vpc-ipv4-cidr-block': '172.31.0.0/16', 'ipv6s': '2600:1f16:aeb:b20b:7b8c:976e:5010:f218', 'vpc-id': 'vpc-87e72bee', 'mac': '06:20:c9:69:43:c3', 'public-hostname': 'ec2-52-14-184-32.us-east-2.compute.amazonaws.com', 'local-ipv4s': '172.31.30.202', 'device-number': '0'}}}}

I then set default networking for cloud-init to attempt both ipv4 and ipv6.

$ ADDR=$(cat /sys/class/net/eth0/address)
$ sudo tee /etc/cloud/cloud.cfg.d/99-network-config.cfg <<EOF
network:
 version: 1
 config:
  - type: physical
    name: eth0
    mac_address: $ADDR
    subnets:
     - type: dhcp
     - type: dhcp6
EOF

Then, clean the instance, and reboot.

$ sudo rm -Rf /var/log/cloud-init /var/lib/cloud
$ sudo reboot

## When you go back in, look /etc/network/interfaces.d/50-cloud-init.cfg
## and verify it has an ipv6 address and a dhclient6 running.
$ grep -v "^[#]." /etc/network/interfaces.d/50-cloud-init.cfg | grep .
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet dhcp
iface eth0 inet6 dhcp

$ grep INFO.*network /var/log/cloud-init.log | head -n 1
2017-03-08 20:44:20,861 - stages.py[INFO]: Applying network configuration from system_cfg bringup=False: {'version': 1, 'config': [{'name': 'eth0', 'type': 'physical', 'mac_address': '06:20:c9:69:43:c3', 'subnets': [{'type': 'dhcp'}, {'type': 'dhcp6'}]}]}

$ ip address show dev eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9001 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 06:20:c9:69:43:c3 brd ff:ff:ff:ff:ff:ff
    inet 172.31.30.202/20 brd 172.31.31.255 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 2600:1f16:aeb:b20b:7b8c:976e:5010:f218/128 scope global
       valid_lft forever preferred_lft forever
    inet6 fe80::420:c9ff:fe69:43c3/64 scope link
       valid_lft forever preferred_lft forever

$ ps axw ...

Read more...

tags: added: verification-done-xenial verification-done-yakkety
removed: verification-needed
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package cloud-init - 0.7.9-48-g1c795b9-0ubuntu1~16.04.1

---------------
cloud-init (0.7.9-48-g1c795b9-0ubuntu1~16.04.1) xenial-proposed; urgency=medium

  * debian/rules: install Z99-cloudinit-warnings.sh to /etc/profile.d
  * debian/patches/ds-identify-behavior-xenial.patch: adjust default
    behavior of ds-identify for SRU (LP: #1669675, #1660385).
  * New upstream snapshot.
    - Support warning if the used datasource is not in ds-identify's list
      (LP: #1669675).
    - DatasourceEc2: add warning message when not on AWS. (LP: #1660385)
    - Z99-cloudinit-warnings: Add profile.d script for showing warnings on
    - Z99-cloud-locale-test.sh: convert tabs to spaces, remove unneccesary
      execute bit in permissions.
    - (RedHat) net: correct errors in cloudinit/net/sysconfig.py
      [Lars Kellogg-Stedman]
    - ec2_utils: fix MetadataLeafDecoder that returned bytes on empty
    - Fix eni rendering of multiple IPs per interface [Ryan Harper]
      (LP: #1657940)
    - Add 3 ecdsa-sha2-nistp* ssh key types now that they are standardized
      [Lars Kellogg-Stedman]
    - EC2: Do not cache security credentials on disk [Andrew Jorgensen]
      (LP: #1638312)
    - OpenStack: Use timeout and retries from config in get_data.
      [Lars Kellogg-Stedman] (LP: #1657130)
    - Fixed Misc issues related to VMware customization. [Sankar Tanguturi]
    - (RedHat) Use dnf instead of yum when available [Lars Kellogg-Stedman]
    - Get early logging logged, including failures of cmdline url.
    - test / doc / build environment changes
      - Remove style checking during build and add latest style checks to
        tox [Joshua Powers]
      - code-style: make master pass pycodestyle (2.3.1) cleanly, currently
        [Joshua Powers]
      - Fix small typo and change iso-filename for consistency
      - tools/mock-meta: support python2 or python3 and ipv6 in both.
      - tests: remove executable bit on test_net, so it runs, and fix it.
      - tests: No longer monkey patch httpretty for python 3.4.2
      - reset httppretty for each test [Lars Kellogg-Stedman]
      - build: fix running Make on a branch with tags other than master
      - doc: Fix typos and clarify some aspects of the part-handler
        [Erik M. Bray]
      - doc: add some documentation on OpenStack datasource.
      - Fix minor docs typo: perserve > preserve [Jeremy Bicha]
      - validate-yaml: use python rather than explicitly python3

 -- Scott Moser <email address hidden> Mon, 06 Mar 2017 16:34:10 -0500

Changed in cloud-init (Ubuntu Xenial):
status: Fix Committed → Fix Released

The verification of the Stable Release Update for cloud-init has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

Launchpad Janitor (janitor) wrote :

This bug was fixed in the package cloud-init - 0.7.9-48-g1c795b9-0ubuntu1~16.10.1

---------------
cloud-init (0.7.9-48-g1c795b9-0ubuntu1~16.10.1) yakkety; urgency=medium

  * debian/rules: install Z99-cloudinit-warnings.sh to /etc/profile.d
  * debian/patches/ds-identify-behavior-yakkety.patch: adjust default
    behavior of ds-identify for SRU (LP: #1669675, #1660385).
  * New upstream snapshot.
    - Support warning if the used datasource is not in ds-identify's list
      (LP: #1669675).
    - DatasourceEc2: add warning message when not on AWS. (LP: #1660385)
    - Z99-cloudinit-warnings: Add profile.d script for showing warnings on
    - Z99-cloud-locale-test.sh: convert tabs to spaces, remove unneccesary
      execute bit in permissions.
    - (RedHat) net: correct errors in cloudinit/net/sysconfig.py
      [Lars Kellogg-Stedman]
    - ec2_utils: fix MetadataLeafDecoder that returned bytes on empty
    - Fix eni rendering of multiple IPs per interface [Ryan Harper]
      (LP: #1657940)
    - Add 3 ecdsa-sha2-nistp* ssh key types now that they are standardized
      [Lars Kellogg-Stedman]
    - EC2: Do not cache security credentials on disk [Andrew Jorgensen]
      (LP: #1638312)
    - OpenStack: Use timeout and retries from config in get_data.
      [Lars Kellogg-Stedman] (LP: #1657130)
    - Fixed Misc issues related to VMware customization. [Sankar Tanguturi]
    - (RedHat) Use dnf instead of yum when available [Lars Kellogg-Stedman]
    - Get early logging logged, including failures of cmdline url.
    - test / doc / build environment changes
      - Remove style checking during build and add latest style checks to
        tox [Joshua Powers]
      - code-style: make master pass pycodestyle (2.3.1) cleanly, currently
        [Joshua Powers]
      - Fix small typo and change iso-filename for consistency
      - tools/mock-meta: support python2 or python3 and ipv6 in both.
      - tests: remove executable bit on test_net, so it runs, and fix it.
      - tests: No longer monkey patch httpretty for python 3.4.2
      - reset httppretty for each test [Lars Kellogg-Stedman]
      - build: fix running Make on a branch with tags other than master
      - doc: Fix typos and clarify some aspects of the part-handler
        [Erik M. Bray]
      - doc: add some documentation on OpenStack datasource.
      - Fix minor docs typo: perserve > preserve [Jeremy Bicha]
      - validate-yaml: use python rather than explicitly python3

 -- Scott Moser <email address hidden> Mon, 06 Mar 2017 16:37:28 -0500

Changed in cloud-init (Ubuntu Yakkety):
status: Fix Committed → Fix Released

Reported bug #1675571 as a regression. Changing from eth0:1 means that hosts with no ipv6 addresses on Ubuntu 16.04 do not get /etc/resolv.conf populated with name servers.

This bug is believed to be fixed in cloud-init in 17.1. If this is still a problem for you, please make a comment and set the state back to New

Thank you.

Changed in cloud-init:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers