user 41ba680dcb fix: resolve DNS locally and try all IPs via SOCKS5
Many SOCKS5 proxies cannot resolve hostnames reliably. Resolve
locally and iterate through all returned addresses until one
succeeds. Also exclude personal config from git.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 11:54:30 +01:00

bouncer

IRC bouncer with SOCKS5 proxy support and persistent message backlog.

Features

  • Connect to multiple IRC networks simultaneously
  • All outbound connections routed through SOCKS5 proxy
  • Persistent message backlog (SQLite) with replay on reconnect
  • Multiple clients can attach to the same network session
  • Password authentication
  • TLS support for IRC server connections
  • Automatic reconnection with exponential backoff
  • Nick collision handling

Quick Start

# Clone and install
cd ~/git/bouncer
make dev

# Copy and edit config
cp config/bouncer.example.toml config/bouncer.toml
$EDITOR config/bouncer.toml

# Run
bouncer -c config/bouncer.toml -v

Connect

From your IRC client, connect to 127.0.0.1:6667 with:

PASS networkname:yourpassword

Where networkname matches a [networks.NAME] section in your config.

Configuration

See config/bouncer.example.toml for a full example.

Documentation

Document Description
docs/INSTALL.md Prerequisites and setup
docs/USAGE.md Comprehensive guide
docs/CHEATSHEET.md Quick reference
docs/DEBUG.md Troubleshooting

Development

make dev      # Install with dev deps
make test     # Run tests
make lint     # Run linter
make fmt      # Format code

License

MIT

Description
No description provided
Readme 403 KiB
Languages
Python 99.6%
Makefile 0.3%
Dockerfile 0.1%