Skip to content

Data Model ​

This page describes the core domain objects in business terms.

Config ​

A config is the root object of a Mesh.

FieldDescription
idConfig ID, such as cfg_xxx.
nameConfig name; also affects generated interface names.
virtual_subnetMesh virtual subnet.
default_listen_portDefault listen port for new endpoints.
default_mtuDefault MTU.
default_dnsDefault DNS.
auto_syncControls only the default auto-sync value for newly created endpoints.
tunnel_protocolwireguard or amneziawg_2.
awg_s1..awg_s4Config-level AmneziaWG S parameters.
awg_h1..awg_h4Config-level AmneziaWG H parameters.

Node ​

An endpoint represents a device that joins the Mesh.

FieldDescription
idEndpoint ID, such as node_xxx.
config_idOwning config.
nameEndpoint name.
ipv4_addressPublic IPv4 address or hostname.
ipv6_addressPublic IPv6 address or hostname.
listen_portEndpoint listen port.
virtual_ipMesh virtual IP.
node_typedynamic or static.
auto_syncWhether automatic synchronization is allowed.
pre_up/post_up/pre_down/post_downLifecycle commands.
awg_jc/awg_jmin/awg_jmaxEndpoint-local AmneziaWG junk parameters.
awg_i1..awg_i5AmneziaWG CPS decoy-packet parameters.

A Mesh pair is represented by directional records. A bidirectional Mesh pair contains forward and reverse records with the same link_group_id.

FieldDescription
local_node_idLocal endpoint.
peer_node_idPeer endpoint.
allowed_ipsAllowedIPs written to the Peer.
persistent_keepalivePersistentKeepalive.
preshared_keyOptional PSK.
endpoint_modeauto, manual, or none.
endpoint_ref_familyipv4 or ipv6 for an automatic Endpoint.
endpoint_port_modeUse the peer listen port or a manual port.

NodeConfigState ​

Synchronization state has three layers:

  • desired: target state generated from current system data.
  • staged: synchronized state waiting for client delivery.
  • confirmed: state that the client has confirmed as applied.

EndpointRuntimeStatus ​

Runtime state records online, tunnel, and synchronization state for dynamic endpoints.

The backend runtime projection is authoritative for online state. An explicit offline signal always marks the endpoint offline; otherwise any valid heartbeat, probe, or control-channel signal can keep it online.

PortForwardRule ​

Port-forward rules are managed by the tool.

FieldDescription
from_node_idFrom endpoint: where the service actually exists.
from_portFrom port: where the service actually listens.
to_node_idTo endpoint: accepts incoming traffic and owns the lifecycle commands.
to_portTo port: the externally exposed access port.
to_platformlinux or darwin.
protocoltcp, udp, or all.