** Description changed: + === Begin SRU Template === + [Impact] + Network configuration provided to cloud-init that has an ipv6 address + and additional manual default route will fail to bring up the routes + correctly. + + [Test Case] + The basic idea below is: + a.) launch an instance with proposed version of cloud-init. + b.) inside instance, get cloud-init's network rendering tool from trunk + c.) run the rendering tool against a config that failed before. + d.) check rendered ENI config to verify it looks correct. + + ## launch an instance. + $ release=xenial + $ ref=$release-proposed + $ lxc-proposed-snapshot --proposed --publish $release $ref + $ lxc launch $ref $name + $ lxc exec $ref $name /bin/bash + + ## get render tool + % wget https://git.launchpad.net/~cloud-init-dev/cloud-init/plain/tools/net-convert.py -O net-convert.py + + % cat > net-config.yaml <<"EOF" + version: 1 + config: + - type: physical + name: eth0 + mac_address: "c0:d6:9f:2c:e8:80" + subnets: + - type: static + address: "2001:1::2/64" + routes: + - gateway: "2001:4800:78ff:1b::1" + netmask: "::" + network: "::" + EOF + + $ python3 ./net-convert.py \ + --network-data=net-config.yaml --kind=yaml \ + --output-kind=eni \ + --mac=eth0,c0:d6:9f:2c:e8:80 \ + --directory=out.d + + % cat out.d/etc/network/interfaces + auto lo + iface lo inet loopback + + auto eth0 + iface eth0 inet6 static + address 2001:1::2/64 + post-up route add -A inet6 default gw 2001:4800:78ff:1b::1 || true + pre-down route del -A inet6 default gw 2001:4800:78ff:1b::1 || true + + + ## The output above is the expected output. The failure path + ## would have post-up and pre-down like: + post-up route add -net :: netmask :: gw 2001:4800:78ff:1b::1 || true + pre-down route del -net :: netmask :: gw 2001:4800:78ff:1b::1 || true + + [Regression Potential] + Regressions for this change are almost certainly limited to + rendering of ipv6 networking configuration and most likely limited + to routing. + + [Other Info] + Upstream commit at + https://git.launchpad.net/cloud-init/commit/?id=811ce49d74af + + === End SRU Template === + + cloud-init trunk and xenial, yakkety, zesty and artful all fail A network config with a ipv6 gateway route like: - subnets: - - type: static - address: 2001:4800:78ff:1b:be76:4eff:fe06:96b3 - netmask: 'ffff:ffff:ffff:ffff::' - routes: - - gateway: 2001:4800:78ff:1b::1 - netmask: '::' - network: '::' + - type: static + address: 2001:4800:78ff:1b:be76:4eff:fe06:96b3 + netmask: 'ffff:ffff:ffff:ffff::' + routes: + - gateway: 2001:4800:78ff:1b::1 + netmask: '::' + network: '::' For eni rendering, this should create a post-up/post-down route command that generates a default ipv6 route entry, like this: - post-up route add -A inet6 default gw 2001:4800:78ff:1b::1 || true - pre-down route del -A inet6 default gw 2001:4800:78ff:1b::1 || true + post-up route add -A inet6 default gw 2001:4800:78ff:1b::1 || true + pre-down route del -A inet6 default gw 2001:4800:78ff:1b::1 || true However, what is currently generated is this: - post-up route add -net :: netmask :: gw 2001:4800:78ff:1b::1 || true - pre-down route del -net :: netmask :: gw 2001:4800:78ff:1b::1 || true + post-up route add -net :: netmask :: gw 2001:4800:78ff:1b::1 || true + pre-down route del -net :: netmask :: gw 2001:4800:78ff:1b::1 || true That does not install the route correctly as a default gateway route. - This is fallout from commit d00da2d5b0d45db5670622a66d833d2abb907388 + This is fallout from commit d00da2d5b0d45db5670622a66d833d2abb907388 net: normalize data in network_state object This commit removed ipv6 route 'netmask' values, and converted them to prefix length values, but failed to update the eni renderer's check for ipv6 default gateway.
-- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1701097 Title: eni rendering of ipv6 gateways fails To manage notifications about this bug go to: https://bugs.launchpad.net/cloud-init/+bug/1701097/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs