LinuxCommandLibrary

zerotier-one

Enable ZeroTier virtual network connections

TLDR

Start the ZeroTier One [d]aemon

$ sudo zerotier-one -d
copy

SYNOPSIS

zerotier-one [options]

PARAMETERS

-p <port>, --port <port>
    Specifies the UDP port for ZeroTier communications. The default port is 9993.

-d, --daemon
    Forks the `zerotier-one` process into the background, running it as a daemon.

-U <path>, --ui-path <path>
    Sets the path to the web UI files, primarily used in desktop versions of ZeroTier.

-P <pidfile>, --pidfile <pidfile>
    Writes the process ID (PID) of the daemon to the specified file.

-C <path>, --config <path>
    Specifies the path to the configuration and data directory for ZeroTier. The default is typically /var/lib/zerotier-one.

-h, --help
    Displays a help message with all available command-line options and their descriptions.

-v, --version
    Shows the version information of the ZeroTier One daemon.

-l <level>, --log-level <level>
    Sets the verbosity level for logging output. Valid levels include info, debug, warning, error, and none.

-q, --quiet
    Suppresses most output to standard output and standard error, useful when running as a daemon.

-6
    Explicitly enables the IPv6 listener. This is typically enabled by default.

-4
    Explicitly enables the IPv4 listener. This is typically enabled by default.

DESCRIPTION

The `zerotier-one` command launches the core ZeroTier client daemon, a crucial component for establishing and managing secure, peer-to-peer virtual networks. This daemon allows your device to join ZeroTier virtual Layer 2 networks, enabling seamless communication with other devices on the same virtual network, regardless of their physical location or the underlying network infrastructure (LAN, WAN, cellular). It handles the encryption, routing, and management of virtual network interfaces, effectively creating a global area network (GAN) that operates like a traditional local area network. By doing so, `zerotier-one` simplifies complex networking challenges, offering a robust solution for remote access, IoT device management, secure multi-cloud connectivity, and building private networks without the complexities of traditional VPN setups or firewall port forwarding. It operates quietly in the background, maintaining connectivity and processing network traffic for all joined ZeroTier networks.

CAVEATS

The `zerotier-one` daemon typically requires root privileges to start and manage network interfaces. Users often interact with it via `systemctl` for service management or `zerotier-cli` for client operations. Ensure firewall rules allow UDP traffic on port 9993 (or custom port) for optimal connectivity. ZeroTier relies on central root servers for initial peer discovery, though direct peer-to-peer connections are established afterward.

CONFIGURATION DIRECTORY

The default configuration and data directory for `zerotier-one` on Linux systems is usually /var/lib/zerotier-one. This directory stores crucial information such as the device's identity (ID, private key), joined network configurations, and other persistent data needed for operation.

DAEMON VS. CLIENT TOOL

It's important to distinguish between `zerotier-one` and `zerotier-cli`. `zerotier-one` is the background daemon that handles the actual network operations. `zerotier-cli` is a separate command-line tool used to interact with the running `zerotier-one` daemon, allowing users to join/leave networks, list interfaces, check status, and perform other administrative tasks.

NETWORK IDS

ZeroTier virtual networks are identified by unique 16-digit hexadecimal Network IDs. To join a specific virtual network, you typically use `zerotier-cli join `, which instructs the `zerotier-one` daemon to connect to that network.

HISTORY

ZeroTier was founded by Adam Iredale in 2014, with the vision of simplifying network virtualization and connectivity. The `zerotier-one` daemon emerged as the core component of this innovative approach, aiming to abstract away the complexities of traditional networking and VPNs. It has since evolved into a widely adopted solution for secure, global, peer-to-peer networking, enabling a decentralized and resilient network infrastructure for various use cases, from IoT and remote access to multi-cloud environments.

SEE ALSO

zerotier-cli(1), ip(8), netstat(8), ss(8), systemctl(1)

Copied to clipboard