22.04 DHCPv6 IPv6 broken (at least on Oracle OCI)

Bug #2025382 reported by Tim K.
38
This bug affects 7 people
Affects Status Importance Assigned to Milestone
systemd (Ubuntu)
Triaged
Medium
Unassigned
Jammy
Triaged
Medium
Unassigned
Lunar
New
Undecided
Unassigned

Bug Description

Ubuntu 22.04.2 LTS
kernel 5.15.0-1038-oracle
systemd 249.11-0ubuntu3.9

After an update a couple weeks ago, Ubuntu 22.04 can no longer get IPv6 via DHCPv6 systemd-networkd, at least on Oracle OCI, but there are also other similar reports, e.g.

https://ubuntuforums.org/showthread.php?t=2487465&p=14146758

Oracle seems to be aware of the issue but they claim it's a Ubuntu 22.04 bug:

https://community.oracle.com/customerconnect/discussion/687610/oci-ipv6-address-not-assigned-to-oci-ubuntu-instance-by-dhcp

The workaround to assign a static IPv6 is not great when managing multiple cloud instances.

Tim K. (tkubnt)
description: updated
Revision history for this message
Tim K. (tkubnt) wrote :

Running `sudo dhclient -6 <interface>` appears to work, the problem seems to be with the systemd-networkd DHCPv6 client.

Revision history for this message
Dominic (triatic) wrote :

Oracle seem to have started sending invalid bytes at the end of dhcpv6 packets.

Systemd has just issued a patch to work around this.

Can this patch be backported into Ubuntu 22.04?

https://github.com/systemd/systemd/commit/1d2b93ff89f28b18c222321c8c7bc48be2185375

Revision history for this message
Nick Rosbrook (enr0n) wrote :

This does seem like a reasonable thing to backport, yeah.

The patch does not actually apply to v249.11 cleanly, but from a quick look around this is just because of some re-factoring and moving things around. So it should be simple to adapt the patch for the v249.11 codebase.

I will look into patching and testing this out myself. I don't currently have access to Oracle OCI, however.

Changed in systemd (Ubuntu Jammy):
status: New → Confirmed
status: Confirmed → Triaged
importance: Undecided → Medium
Changed in systemd (Ubuntu):
status: New → Fix Released
status: Fix Released → Triaged
importance: Undecided → Medium
tags: added: systemd-sru-next
Revision history for this message
Nick Rosbrook (enr0n) wrote :

Did Oracle make any changes around this or is it still an issue? I have not had the time to try and test this or access to OCI.

Revision history for this message
Jan De Luyck (jdeluyck) wrote :

As far as I'm aware nothing has changed on OCI.

Revision history for this message
Dominic (triatic) wrote :

Oracle seem to have corrected the DHCPv6 server. When I load up an unmodified stock instance of Ubuntu, I now get an IPv6 address immediately like I did before they broke it.

Revision history for this message
Tim K. (tkubnt) wrote :

Interesting because Oracle claimed that it was Ubuntu/systemd that was broken, not their DHCPv6 server, their argument was that the `dhclient -6` works fine.

Revision history for this message
Dominic (triatic) wrote :

It eventually became apparent that Oracle started appending a null byte to DHCPv6 packets a few weeks ago. `dhclient -6` is more tolerant of malformed DHCPv6 packets than networkd's DHCPv6 client.

Revision history for this message
Jan De Luyck (jdeluyck) wrote :

I just tried rebooting my OCI ubuntu 2204 box. Still no ipv6 address until I run dhclient -6.

Nick Rosbrook (enr0n)
tags: removed: systemd-sru-next
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.