Skip to content

[client] Add IPv6 dual-stack UI support for Android, iOS, and desktop#5738

Open
lixmal wants to merge 2 commits intoclient-ipv6-iptablesfrom
client-ipv6-android-ui
Open

[client] Add IPv6 dual-stack UI support for Android, iOS, and desktop#5738
lixmal wants to merge 2 commits intoclient-ipv6-iptablesfrom
client-ipv6-android-ui

Conversation

@lixmal
Copy link
Copy Markdown
Collaborator

@lixmal lixmal commented Mar 30, 2026

Describe your changes

Merge v4/v6 exit node route pairs into a single UI entry across all platforms (Android, iOS, desktop, daemon CLI). When the management server creates a paired exit node with -v6 suffix, the client now displays one combined entry (0.0.0.0/0, ::/0) with a single toggle that selects/deselects both.

  • Merge paired v4+v6 exit node routes into one display entry on Android, iOS, server daemon, and desktop UI
  • Add ExpandV6ExitPairs in the shared route package so select/deselect auto-includes the paired v6 route
  • Add IsV4DefaultRoute/IsV6DefaultRoute helpers using typed netip.Prefix comparisons
  • Show the peer actively routing traffic for HA route groups instead of always picking the first peer
  • Include IPv6 address in onAddressChanged notifications for dual-stack display on the home screen
  • Fix iOS nil-check ordering in GetRoutesSelectionDetails

Stacked on #5708.

Issue ticket number and link

Stack

Checklist

  • Is it a bug fix
  • Is a typo/documentation fix
  • Is a feature enhancement
  • It is a refactor
  • Created tests that fail without the change (if possible)

By submitting this pull request, you confirm that you have read and agree to the terms of the Contributor License Agreement.

Documentation

Select exactly one:

  • I added/updated documentation for this change
  • Documentation is not needed for this change (explain why)

Docs PR URL (required if "docs added" is checked)

Paste the PR link from https://github.com/netbirdio/docs here:

https://github.com/netbirdio/docs/pull/__

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Mar 30, 2026

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 83e66554-997d-4c34-a3f9-96410e3664a7

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch client-ipv6-android-ui

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@sonarqubecloud
Copy link
Copy Markdown

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant