Configuration
To configure SideroLink, provide the SideroLink API server address either via the kernel command line argumentsiderolink.api
or as a config document.
The SideroLink API URL format is: https://siderolink.api/?jointoken=token&grpc_tunnel=true
.
- If the URL scheme is
grpc://
, the connection will be established without TLS; otherwise, it will use TLS. - The join token
token
, if specified, will be sent to the SideroLink server. - Setting
grpc_tunnel
totrue
sends a hint to tunnel Wireguard traffic over the same SideroLink API gRPC connection instead of using plain UDP. This is useful in environments where UDP traffic is restricted but adds significant overhead to SideroLink communication, enable this only if necessary. Note that the SideroLink API server might ignore this hint, and the connection might use gRPC tunneling regardless of the setting.
Connection Flow
- Talos Linux generates an ephemeral Wireguard key.
- Talos Linux establishes a gRPC connection to the SideroLink API server, sending its Wireguard public key, join token, and other connection settings.
- If the join token is valid, the SideroLink API server responds with its Wireguard public key and two overlay IPv6 addresses: one for the machine and one for the SideroLink server.
- Talos Linux configures the Wireguard interface with the received settings.
- Talos Linux monitors the Wireguard connection status and re-establishes the connection if necessary.