cjdroute man page

cjdroute -- Cjdns packet switch


/usr/sbin/cjdroute [<options>...]


Cjdns implements an encrypted IPv6 network using public-key cryptography for address allocation and a distributed hash table for routing. This provides near-zero-configuration networking, and prevents many of the security and scalability issues that plague existing networks.

cjdroute runs in the background and either decrypts packets addressed to this node, or sends them on to the next node in the route.



--help: Print usage summary.


--genconf [--no-eth]: Generate a configuration file, write it to stdout. If --no-eth is specified then ethernet beaconing will be disabled.


--bench: Run some cryptography performance benchmarks.


Print cjdroute version and the protocol version which this node speaks.


--cleanconf < conf: Print a clean (valid json) version of the config.


Never fork to the background no matter the config.


To get the router up and running:


Step 1: Generate a new configuration file if one doesn´t already exist.

 cjdroute --genconf > /etc/cjdroute.conf

You can also simply:

 systemctl start cjdns

which will tell cjdroute to generate a new config if needed.


Step 2: Find somebody to connect to. Check out the IRC channel or http://hyperboria.net/ for information about how to meet new people and make connect to them. Read more here: https://github.com/cjdelisle/cjdns/#2-find-a-friend

By default, cjdroute will find any cjdns nodes on your local LAN without any configuration.


Step 3: Add that somebody´s node to your cjdroute.conf file. https://github.com/cjdelisle/cjdns/#3-connect-your-node-to-your-friends-node


Step 4: Fire it up!

 systemctl start cjdns

Or if you had already started cjdns:

 systemctl restart cjdns

For more information about other functions and non-standard setups, see README.md

Referenced By

cjdnslog(1), cjdns-traceroute(1), cjdroute.conf(5), peerStats(1), sessionStats(1), sybilsim(8).

January 2017