Skip to content

Atlas WG Mesh

Atlas WG Mesh gives each virtual machine a private IPv6 address in fdaa::/16.

The address stays with the virtual machine when it moves to another host.

eBPF makes packet decisions, WireGuard encrypts host traffic, and Neighbor Discovery Protocol finds remote virtual machines.

Packet path

text
VM A -> VM hook -> WireGuard -> WireGuard hook -> VM B

The VM hook sends known remote traffic through WireGuard.

For an unknown address, the hook sends a neighbor solicitation.

The destination host answers through proxy NDP, and the uplink hook records its WireGuard address.

If a virtual machine moves, the old host sends NOT_HERE.

The sender removes the old location and starts NDP again.

Security rules

BoundaryRule
SourceA virtual machine can use only an address owned by its interface.
UnderlayA virtual machine cannot reach the host range fdab::/16.
TenantDifferent tenants cannot communicate.
Privileged VMA listed tenant-0 virtual machine can communicate with all tenants.
DiscoveryThe hooks accept location data only from configured peers.

NDP does not authenticate a host. Use a trusted host network.

Documentation

DocumentPurpose
DesignPacket paths, hooks, and maps.
OperationsAll CLI commands and examples.
GatewaysPublic prefixes and routed destinations.
BenchmarksMeasured throughput and packet rate.

Atlas WG Mesh uses the AGPL-3.0 license.

AGPL-3.0