/\/ Amiga Chat Network \/\ /\/ ACN \/\
zircd – Windows Setup

Version: 0.47
Last Updated: April 3, 2026

zircd is fully compatible with Windows and can be run using Python 3.11+.

Prerequisites

  1. Python 3.11 or newer – Download from python.org
    • During installation, check “Add Python to PATH”
  2. Verify Python installation:
    python --version

    Should show Python 3.11 or higher.

  3. Install required dependency:
    pip install cryptography

Quick Start

Method 1: Using the Batch File (Easiest)

zircd.bat 0.0.0.0:8888

Method 2: Using Python Directly

python zircd.py 0.0.0.0:8888

Configuration

Create a Configuration File (Optional)

copy zircd.cfg.example zircd.cfg
notepad zircd.cfg

Edit the key settings:

  • NetworkID – Your unique server ID (max 15 chars, no spaces, case-sensitive)
  • NetworkName – Your network name (e.g. ACN)
  • Hostname – IP to bind to (use 0.0.0.0 for all interfaces)
  • Hostport – Client connection port (default 8888)
  • PingInterval – How often to ping clients in seconds (default 60)
  • MaxPendingClients – Connection queue size (default 5)
  • MinPasswordLength – Minimum NickServ password length (default 8)

See QUICKSTART.md for the full config reference and linking setup.

Running Examples

IPv4 Examples

# Listen on all interfaces
python zircd.py 0.0.0.0:8888

# Listen on localhost only
python zircd.py 127.0.0.1:8888

# Custom port
python zircd.py 0.0.0.0:9999

IPv6 Examples

# IPv6 localhost
python zircd.py [::1]:8888

# IPv6 all interfaces (dual-stack: accepts both IPv4 and IPv6)
python zircd.py [::]:8888

Note: On Windows, you don’t need to quote IPv6 addresses.

Stopping the Server

Press Ctrl-C in the command window.

Log Files

Logs are stored in the logs\ subdirectory:

  • logs\zircd.log – Current log file
  • Automatically rotates when it reaches 5MB
  • Keeps 5 backup files

Environment Variables

Logging

set ZIRCD_LOG_LEVEL=10
python zircd.py 0.0.0.0:8888

Disable Console Logging (File Only)

set ZIRCD_CONSOLE_LOG=0
python zircd.py 0.0.0.0:8888

Firewall Configuration

You may need to allow Python through the Windows Firewall:

  1. Windows will prompt when you first run zircd
  2. Click “Allow access”
  3. Or manually configure in Windows Security -> Firewall & network protection

Running as a Background Service

For production use on Windows, consider using:

  1. NSSM (Non-Sucking Service Manager) – nssm.cc
  2. Windows Task Scheduler – Create a task that runs at startup

Example: NSSM Setup

# Download and install NSSM
nssm install zircd "C:\Path\To\Python\python.exe" "C:\Path\To\zircd\zircd.py" "0.0.0.0:8888"
nssm start zircd

Troubleshooting

Port Already in Use

If you get an error about the port being in use:

  1. Choose a different port (e.g., 6668)
  2. Or stop the other program using that port

Python Not Found

If you get 'python' is not recognized:

  1. Try py zircd.py 0.0.0.0:6667 instead
  2. Or reinstall Python and check “Add to PATH”

Can’t Connect from Other Computers

  1. Check Windows Firewall settings
  2. Make sure you’re binding to 0.0.0.0 (not 127.0.0.1)
  3. Use your computer’s IP address to connect (not localhost)

See Also

  • zircd.cfg.example – Configuration file template
  • QUICKSTART.md – Full setup guide including RSA key generation and server linking
  • LINKING_GUIDE.md – Detailed server-to-server linking documentation
  • SYSTEMD.md – Linux systemd service setup (Linux equivalent of this guide)