Skip to content

SYSTEM Cited by 3 sources

Fly WireGuard mesh (6PN)

Fly.io runs an internal IPv6 WireGuard mesh — referred to internally as 6PN ("Six Private Network") — connecting every Fly Machine across hosts and regions inside a given org. Described in detail in the Fly post IPv6 + WireGuard = peering. Each Fly Machine gets an fdaa:… IPv6 address on the mesh the moment it boots.

Role in FKS

Under FKS, the WireGuard mesh is the direct replacement for the Kubernetes CNI layer. Per the primitive-mapping table in the FKS beta post:

Networking/CNI → Our internal WireGuard mesh connects your pods together

Observable side-effects in the K8s API:

  • ClusterIP Services default to IPv6 (IP Families: IPv6, IP Family Policy: SingleStack).
  • Endpoint addresses are fdaa:… WireGuard-mesh IPs, e.g. [fdaa:0:48c8:a7b:228:4b6d:6e20:2]:8080.
  • The fly machine list tooling reports the same fdaa:… IP on the Machine record.

This is a concrete instance of concepts/ipv6-service-mesh — service-to-service traffic rides an encrypted IPv6 underlay rather than the CNI+iptables substrate Kubernetes reference clusters use.

Seen in

Last updated · 200 distilled / 1,178 read