How To Use VX6
Rule One: IPv6 Endpoint Format
VX6 expects IPv6 endpoints in this format:
[ipv6]:port
Initialize and Start a Node
Initialize node identity and network settings
vx6 init \ --name alice \ --listen '[::]:4242' \ --advertise '[2001:db8::10]:4242' \ --bootstrap '[2001:db8::1]:4242'
The bootstrap endpoint is any known live VX6 node. It is used for first contact, not as a permanent centralized controller.
Start the node runtime
vx6 node
Publish and Connect Services
Share SSH
vx6 service add --name ssh --target 127.0.0.1:22 vx6 reload
Connect from another node
vx6 connect --service alice.ssh --listen 127.0.0.1:2222 ssh -p 2222 user@127.0.0.1
Share a web app
vx6 service add --name web --target 127.0.0.1:8080 vx6 reload vx6 connect --service alice.web --listen 127.0.0.1:9000 curl http://127.0.0.1:9000
Advanced Usage
File transfer
vx6 send --file ./backup.tar --to alice
Direct IPv6 by known address
vx6 connect --service ssh --addr '[2001:db8::10]:4242' --listen 127.0.0.1:2222
Hidden alias flow
vx6 service add \ --name admin \ --target 127.0.0.1:22 \ --hidden \ --alias hs-admin \ --profile fast vx6 reload vx6 connect --service hs-admin --listen 127.0.0.1:2222
Run as background service
systemctl --user enable --now vx6 systemctl --user reload vx6 systemctl --user status vx6
Useful diagnostics
vx6 help vx6 status vx6 list vx6 identity vx6 debug registry vx6 debug dht-get --service alice.ssh