Download VX6 and join the mesh
A lightweight, encrypted peer-to-peer runtime. Run your own node, connect to the global VX6 network, and communicate without centralized infrastructure.
Live Network
VX6 nodes form a self-healing mesh. Each peer discovers and connects to others without central coordination.
Zero Infrastructure
No servers, no cloud. Your node is your infrastructure. Connect directly to peers over encrypted IPv6 tunnels.
End-to-End Encrypted
Every connection is encrypted by default. Identity-based routing ensures only intended recipients can read your data.
Lightweight Runtime
Single binary, minimal footprint. Runs as a systemd service or standalone process with near-zero resource overhead.
Global Mesh
Join the worldwide VX6 network through any public entry node. Self-healing topology adapts as peers join and leave.
Install & Setup
Build and run VX6
Choose your branch
- main: Linux-first branch
- Windows-compatible: Windows build branch with aligned protocol behavior
Clone and install
git clone https://github.com/ethical-buddy/VX6
cd VX6
sudo make installmake install builds the binary and installs the user systemd unit so the node can be started cleanly in the background.
Windows build
go build -o vx6.exe ./cmd/vx6
go build -o vx6-gui.exe ./cmd/vx6-guiBuild Windows binaries from the Windows-compatible branch. That branch is intended to stay aligned with the current VX6 protocol and feature set.
macOS build
GOOS=darwin GOARCH=amd64 go build -o vx6-darwin ./cmd/vx6macOS build targets are validated as part of cross-platform release gating while Linux remains the source protocol branch.
Initialize your node
./vx6 init \
--name alice \
--listen '[::]:4242' \
--advertise '[2001:db8::10]:4242' \
--bootstrap '[2001:db8::1]:4242'The --bootstrap address is simply a known live VX6 peer. It can be a public entry node, a mirror, or another machine that already sees the network.
Start the runtime
vx6 node
# or run it as a service
systemctl --user enable --now vx6Run with systemd
systemctl --user enable --now vx6
systemctl --user status vx6
systemctl --user reload vx6This keeps the node in the background and makes reloads easy when services or config change.
Join the global VX6 network
vx6 init \
--name alice \
--listen '[::]:4242' \
--advertise '[your-ipv6]:4242' \
--bootstrap '[YOUR_PUBLIC_VX6_NODE_1]:4242'We are also building a global VX6 network. Join it through one of the public VX6 entry nodes. Keep this section updated with your current live node IPs and mirrors.
Platform Builds
Linux
Primary branch. Native systemd integration, IPv6-first networking.
sudo make install
systemctl --user enable --now vx6RecommendedWindows
Windows-compatible branch with aligned protocol behavior.
go build -o vx6.exe ./cmd/vx6
go build -o vx6-gui.exe ./cmd/vx6-guimacOS
Cross-platform build target validated in release gating.
GOOS=darwin GOARCH=amd64 \
go build -o vx6-darwin ./cmd/vx6What You Get After Setup
- A persistent node identity
- A local registry of peers, services, and aliases
- A service network that can grow from any known live node
- Direct, relay, hidden, and raw IPv6 access modes
Requirements
- OS — Linux, Windows, and macOS build targets
- Network — IPv6 reachability
- Build — Go toolchain or release binary
App Layer Status
Protocol and runtime are production-focused. On top of it, VX6 MeshChat is under active development as a decentralized communication product for communities and teams.
See the roadmap →
