From 01c17c68277ff88fab812920732d9bbe9e6bb571 Mon Sep 17 00:00:00 2001 From: murilo ijanc Date: Tue, 24 Mar 2026 21:45:05 -0300 Subject: Simplify website to single-page Remove old Zola-generated content, keep only the essential landing page with about, contact, and license sections. --- book/en/running-a-node.html | 314 -------------------------------------------- 1 file changed, 314 deletions(-) delete mode 100644 book/en/running-a-node.html (limited to 'book/en/running-a-node.html') diff --git a/book/en/running-a-node.html b/book/en/running-a-node.html deleted file mode 100644 index 480a611..0000000 --- a/book/en/running-a-node.html +++ /dev/null @@ -1,314 +0,0 @@ - - - - - - Running a Node - Tesseras User Guide - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
-

Keyboard shortcuts

-
-

Press or to navigate between chapters

-

Press S or / to search in the book

-

Press ? to show this help

-

Press Esc to hide this help

-
-
-
-
- - - - - - - - - - - - - -
- -
-
- - - - - - - -
-
-

Running a Node

-

The tesseras-daemon binary runs a full Tesseras node that participates in the peer-to-peer network. It listens for connections over QUIC, joins the distributed hash table (DHT), and enables other nodes to discover and find tessera pointers.

-

Starting the daemon

-
tesseras-daemon
-
-

On first run, the daemon:

-
    -
  1. Creates the data directory (~/.local/share/tesseras on Linux, ~/Library/Application Support/tesseras on macOS)
  2. -
  3. Generates a node identity with proof-of-work (takes about 1 second)
  4. -
  5. Binds a QUIC listener on 0.0.0.0:4433
  6. -
  7. Bootstraps into the network by contacting seed nodes
  8. -
  9. Prints daemon ready when fully operational
  10. -
-

Command-line options

-
tesseras-daemon [OPTIONS]
-
-
- - - - - - - - - - -
OptionDescriptionDefault
-c, --config <PATH>Path to a TOML config fileNone (uses built-in defaults)
-l, --listen <ADDR>Address and port to listen on0.0.0.0:4433
-b, --bootstrap <ADDRS>Comma-separated bootstrap addressesboot1.tesseras.net:4433,boot2.tesseras.net:4433
-d, --data-dir <PATH>Data directoryPlatform-specific (see above)
-
-

CLI options override values from the config file.

-

Examples

-

Run with defaults (join the public network):

-
tesseras-daemon
-
-

Run as a seed node (no bootstrap, other nodes connect to you):

-
tesseras-daemon --bootstrap ""
-
-

Run on a custom port with a specific data directory:

-
tesseras-daemon --listen 0.0.0.0:5000 --data-dir /var/lib/tesseras
-
-

Bootstrap from a specific node:

-
tesseras-daemon --bootstrap "192.168.1.50:4433"
-
-

Join a local network of multiple nodes:

-
tesseras-daemon --bootstrap "192.168.1.10:4433,192.168.1.11:4433"
-
-

Node identity

-

Each node has a unique identity stored in <data-dir>/identity.key. This file contains a 32-byte public key and an 8-byte proof-of-work nonce.

-

The node ID is derived from the public key: BLAKE3(pubkey || nonce) truncated to 20 bytes. The nonce must produce a hash with 8 leading zero bits, which takes about 256 hash attempts. This lightweight proof-of-work makes creating thousands of fake identities expensive while costing legitimate users less than a second.

-

The identity is generated automatically on first run and reused on subsequent runs. If you delete identity.key, a new identity will be generated.

-

Logging

-

The daemon uses structured logging via tracing. Control the log level with the RUST_LOG environment variable:

-
# Default (info level)
-tesseras-daemon
-
-# Debug logging
-RUST_LOG=debug tesseras-daemon
-
-# Only show warnings and errors
-RUST_LOG=warn tesseras-daemon
-
-# Debug for DHT, info for everything else
-RUST_LOG=info,tesseras_dht=debug tesseras-daemon
-
-

Shutting down

-

Press Ctrl+C to initiate graceful shutdown. The daemon will:

-
    -
  1. Stop accepting new connections
  2. -
  3. Finish in-flight operations (up to 5 seconds)
  4. -
  5. Close all QUIC connections
  6. -
  7. Exit cleanly
  8. -
-

Firewall

-

The daemon communicates over UDP port 4433 (QUIC). If you’re behind a firewall, ensure this port is open for both inbound and outbound UDP traffic.

-
# Example: Linux with ufw
-sudo ufw allow 4433/udp
-
- -
- - -
-
- - - -
- - - - - - - - - - - - - - - - - - - - - - - - -
- - -- cgit v1.2.3