Skip to content

Run the server

Blitz Relay needs one UDP port for game traffic. The HTTP administration API is optional and uses a separate TCP port.

  1. Choose a release

    Download a build for your operating system from GitHub Releases.

    • Slim builds require the .NET 10 runtime.
    • Standalone builds include the runtime and are trimmed.
    • Native builds are ahead-of-time compiled, self-contained executables.
  2. Set the connection secrets

    Every relay connection uses BLITZ_RELAY_CONNECTION_KEY. The HTTP API also requires BLITZ_RELAY_HTTP_ADMIN_TOKEN.

    Terminal window
    export BLITZ_RELAY_CONNECTION_KEY="replace-with-a-long-random-key"
    export BLITZ_RELAY_HTTP_ADMIN_TOKEN="replace-with-a-different-random-token"
    Terminal window
    $env:BLITZ_RELAY_CONNECTION_KEY = "replace-with-a-long-random-key"
    $env:BLITZ_RELAY_HTTP_ADMIN_TOKEN = "replace-with-a-different-random-token"
  3. Start the relay

    Terminal window
    BlitzRelay

    The defaults are UDP 7770 for relay traffic and TCP 7771 for the HTTP API.

  4. Check the HTTP listener

    Terminal window
    curl -i http://127.0.0.1:7771/health

    A running API responds with 200 OK. This endpoint does not require authentication.

Terminal window
BlitzRelay --port 9000 --http-port 9001

Open the selected relay port for inbound UDP traffic. Open the HTTP port for inbound TCP traffic only from networks that should reach the administration API.

Your transport must use the same relay address, UDP port, and connection key. Continue with the Netcode for GameObjects guide or Fish-Networking guide.