About Blog Documentation FAQ GitHub

Configuration Reference

The configuration file contains the following options:

Peers

A list of outbound peering connections to make. Peers are specified in URL format. The following types of peers are supported:

Additional settings can optionally be added as query-string parameters to the end of the URL:

InterfacePeers

Like Peers above, but sorted into sections representing the outbound network interface used to establish the peering connection. This is only useful on hosts that require a special multi-homed configuration, otherwise you should use Peers instead.

Listen

A list of listeners to open for accepting incoming connections. Instead of supplying the remote address, you should instead supply a bind address. This would either be 0.0.0.0 for IPv4, :: for IPv4+IPv6 or the IP address of a network interface on your machine. The following listener types are supported:

Additional settings can optionally be added as query-string parameters to the end of the URL:

MulticastInterfaces

Controls which interfaces to enable or disable multicast peer discovery on. The default varies by platform.

Each multicast interface block has the following options:

AllowedPublicKeys

A list of public keys from which your node will allow incoming peering connections.

If public keys are specified, whitelisting is enabled and only nodes with those public keys will be able to peer. If no public keys are specified in this section then peering connections will be allowed as per the Listen and/or MulticastInterfaces configuration.

NOTE: This is not a firewall and does not control who can send you traffic over the Yggdrasil Network or reach open ports and services on your machine. For that you need an IPv6 firewall.

IfName

Determines which TUN interface to use. The default is set to auto which will try to set up a TUN automatically. If set to none, TUN will be disabled and the node will run in headless router-only mode.

On Linux, you can use this setting to give your Yggdrasil TUN interface a unique/persistent name, i.e. ygg0, if desired.

IfMTU

The MTU of the interface.

NodeInfoPrivacy

Whether or not the node info should automatically include build information, i.e. the operating system and architecture and the Yggdrasil build version. If privacy is enabled, the node info will not contain this information.

NodeInfo

A free-form section that the node operator can use to put JSON-formatted metadata that may be made available to other nodes.