Skip to content

Enable IPv6 ULA, SLAAC Router Advertisements, NAT66, and E2E validation - #3104

Open
sferrogoo wants to merge 1 commit into
google:mainfrom
sferrogoo:cuttlefish-ipv6-enablement
Open

Enable IPv6 ULA, SLAAC Router Advertisements, NAT66, and E2E validation#3104
sferrogoo wants to merge 1 commit into
google:mainfrom
sferrogoo:cuttlefish-ipv6-enablement

Conversation

@sferrogoo

Copy link
Copy Markdown
Contributor

Description

This change adds complete IPv6 support for Cuttlefish instances on the host and validates guest dual-stack and pure IPv6-only operation.

  1. IPv6 Unique Local Addresses (ULA):

    • Configures default subnets fd00:cf:22::/64 on cvd-wbr and fd00:cf:24::/64 on cvd-ebr.
    • Adds configuration toggles in /etc/default/cuttlefish-host-resources.
  2. Router Advertisements (SLAAC):

    • Configures dnsmasq to broadcast SLAAC Router Advertisements for autonomous in-guest address assignment.
  3. NAT66 & Forwarding:

    • Implements native nftables masquerading and forwarding rules in cuttlefish-host-resources.init.
    • Adds nftables package dependency to cuttlefish-base in debian/control.
  4. Automated E2E Integration Testing:

    • Adds //cvd/network_tests:network_tests verifying guest SLAAC acquisition, guest-to-host dual-stack communication, and 100% pure IPv6-only functionality after flushing IPv4.

… and E2E validation

* Add IPv6 Unique Local Address (ULA) subnets fd00:cf:22::/64 (cvd-wbr) and fd00:cf:24::/64 (cvd-ebr) to cuttlefish-host-resources defaults and init script.
* Configure dnsmasq to broadcast IPv6 Router Advertisements for guest SLAAC autoconfiguration.
* Implement native nftables masquerading (NAT66) and forwarding rules in cuttlefish-host-resources.init.
* Add nftables dependency in base/debian/control.
* Add E2E network integration test in //cvd/network_tests:network_tests verifying SLAAC IP acquisition, guest-to-host dual-stack communication, and pure IPv6-only operation.
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