bethrou

module
v0.0.0-...-cdc5ecf Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 23, 2025 License: MIT

README ΒΆ

Bethrou

Bethrou Logo

A simple peer-to-peer proxy network

Go Version License Status Documentation


πŸ“š Documentation

Read the full documentation β†’

This README provides a quick overview. For comprehensive guides, tutorials, and API references, visit our documentation site.

What is Bethrou?

Bethrou is a peer-to-peer proxy network that allows you to route your internet traffic through trusted exit nodes using a private network built on libp2p.

Key Features
  • Private Networks: Uses pre-shared keys (PSK) for network isolation
  • P2P Architecture: Built on libp2p for robust peer-to-peer communication
  • SOCKS5 Proxy: Local SOCKS5 server for easy browser/application integration
  • NAT Traversal: Support for relay nodes to handle NAT and firewall issues
  • Node Discovery: Redis-based pub/sub for dynamic node discovery
  • Load Balancing: Multiple routing strategies (random, round-robin, fastest)

How It Works

flowchart LR
      App[Your Browser or App] -- SOCKS5 --> Client[Bethrou Client]
      Client -- libp2p --> Node[Bethrou Exit Node]
      Client -.->|Redis Pub/Sub| Discovery[Node Discovery]
  1. Client starts and loads exit node addresses (static or via discovery)
  2. Client creates a SOCKS5 proxy server on localhost:1080
  3. Applications connect to the SOCKS5 proxy
  4. Client establishes libp2p connections to exit nodes
  5. Proxy requests are forwarded through libp2p streams to exit nodes
  6. Exit nodes make actual TCP connections to destination addresses
  7. Traffic flows: App β†’ SOCKS5 β†’ libp2p β†’ Exit Node β†’ Internet

Use Cases

  • Privacy: Route traffic through trusted nodes you control
  • Testing: Test applications from different network locations
  • Development: Create isolated network environments for testing
  • Learning: Understand P2P networking and libp2p architecture

Getting Started

To get started with Bethrou, visit our comprehensive documentation:

Our documentation covers:

  • Prerequisites and installation options (source build, Docker, Podman)
  • Generating and managing network keys
  • Configuring nodes and clients
  • Running example setups
  • Troubleshooting and best practices

Contributing

This is an early-stage project. Contributions, ideas, and feedback are welcome!

License

MIT License - see LICENSE file for details

Directories ΒΆ

Path Synopsis
client module
pkg

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL