Skip to content

feat(datagen): add IPv6 to NetworkIdentity and public emission (PIPE-1001) - #275

Open
Dylan-M wants to merge 2 commits into
dylanmyers/pipe-1035-appliance-identitiesfrom
dylanmyers/pipe-1001-ipv6-networkidentity
Open

feat(datagen): add IPv6 to NetworkIdentity and public emission (PIPE-1001)#275
Dylan-M wants to merge 2 commits into
dylanmyers/pipe-1035-appliance-identitiesfrom
dylanmyers/pipe-1001-ipv6-networkidentity

Conversation

@Dylan-M

@Dylan-M Dylan-M commented Aug 4, 2026

Copy link
Copy Markdown
Contributor

Stacked on #274

Proposed Change

Adds IPv6 to datagen's network model, which was IPv4-only.

  • NetworkIdentity gains an IPv6CIDR field, GenerateDefaultNetworks emits
    dual-stack defaults, and Validate() applies per-family prefix floors.
  • RandomPublicIPv6 generates a global-unicast (2000::/3) address and rejects
    reserved-block hits; RandomIPInCIDRv6 is the IPv6 counterpart of
    RandomIPInCIDR.
  • Populates reservedIPv6Blocks with RFC-attributed entries (RFC 4291
    unspecified / loopback / IPv4-mapped / link-local / multicast, RFC 4193
    unique-local, RFC 3849 documentation, and the rest).
  • Splits ValidateCIDR into IPv4 and IPv6 validation.

Address generation only; no routing or protocol simulation.

Validation: generate a batch of public IPv6 addresses and confirm none land in a
reserved block. Tests cover dual-stack defaults, per-family floors, reserved-block
rejection during public emission, and in-CIDR generation.

Checklist
  • Changes are tested
  • CI has passed

Dylan-M added 2 commits August 4, 2026 17:30
…ts and validation (PIPE-1001)

Assisted-by: Claude Opus 4.8
@Dylan-M
Dylan-M requested review from a team as code owners August 4, 2026 21:32
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