Skip to content

feat: add ipv6 link-local address to Interface - #564

Merged
felix-kaestner merged 1 commit into
ironcore-dev:mainfrom
ofrzeta:add-ipv6-link-local-to-interface
Sep 16, 2026
Merged

felix-kaestner merged 1 commit into
ironcore-dev:mainfrom
ofrzeta:add-ipv6-link-local-to-interface

Conversation

@ofrzeta

@ofrzeta ofrzeta commented Sep 14, 2026

Copy link
Copy Markdown
Contributor

No description provided.

@hardikdr hardikdr added the area/switch-automation Automation processes for network switch management and operations. label Sep 15, 2026
@hardikdr hardikdr added this to Roadmap Sep 15, 2026
@felix-kaestner
felix-kaestner self-requested a review September 15, 2026 07:40
@felix-kaestner

Copy link
Copy Markdown
Collaborator

@ofrzeta Thanks a lot for your contribution! Looks pretty great. 🚀

Would you be able to add a sample for an IPv6 Interface into the config/samples/v1alpha1_interface.yaml file and also add it to the Tiltfile like this?

@ofrzeta
ofrzeta marked this pull request as draft September 15, 2026 19:09
@ofrzeta
ofrzeta marked this pull request as ready for review September 16, 2026 07:30
@ofrzeta

ofrzeta commented Sep 16, 2026

Copy link
Copy Markdown
Contributor Author

Hi @felix-kaestner, thanks for having a look. I've add the samples to the YAML and Tiltfile.

Comment thread internal/provider/openconfig/interface.go Outdated
Comment thread internal/provider/openconfig/interface.go Outdated
@felix-kaestner
felix-kaestner enabled auto-merge (squash) September 16, 2026 14:27
auto-merge was automatically disabled September 16, 2026 14:46

Head branch was pushed to by a user without write access

@felix-kaestner

Copy link
Copy Markdown
Collaborator

@ofrzeta could you please squash all your commits into a single one and make sure it has a Signed-off-by line in it at the end. 🙏 This is an organization requirement currently blocking the merge.

Allow an Interface to carry global unicast IPv6 addresses, or to use
only its automatically generated link-local address via the new
spec.ipv6.useLinkLocalOnly field. The latter is what unnumbered,
interface-based BGP peering runs over.

The two are mutually exclusive, enforced by CEL rules and by the
webhook, which also rejects link-local addresses in spec.ipv6.addresses
and points at useLinkLocalOnly instead.

On NX-OS, useLinkLocalOnly maps to the useLinkLocalAddr property of the
IPv6 interface object. The property is always sent so that turning it
off is reconciled and the payload matches what the device reports back.
Unlike IPv4, IPv6 has no primary/secondary distinction: every address is
sent as primary, which is what the device accepts and reports.

The openconfig provider configures global unicast addresses and rejects
useLinkLocalOnly as unsupported.

Signed-off-by: Oliver Frommel <oliver.frommel@bwi.de>
@ofrzeta
ofrzeta force-pushed the add-ipv6-link-local-to-interface branch from f5e2634 to 52bb21f Compare September 16, 2026 15:55
@felix-kaestner
felix-kaestner merged commit 7baa8c1 into ironcore-dev:main Sep 16, 2026
20 of 22 checks passed
@github-project-automation github-project-automation Bot moved this to Done in Roadmap Sep 16, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/switch-automation Automation processes for network switch management and operations.

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

3 participants