Cjdns
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.
Installation
Install cjdns. An alternative cjdns-gitAUR package (with more dependencies) is also available.
Both packages include a systemd service file, but sysvinit scripts are available too as cjdns-git-sysvinitAUR.
Configuration
On installation, a /etc/cjdroute.conf
is autogenerated.
If you need to re-generate it, execute:
# cjdroute --genconf > /etc/cjdroute.conf
/etc/cjdroute.conf
as it contains the private key capable of encrypting and decrypting all your communications. Executing chmod 600 /etc/cjdroute.conf
as root sets them correctly.Edit /etc/cjdroute.conf
as root to add at least one peer to the connectTo
section. Peers can be anyone else running cjdns who gives you credentials to connect to them with. They can be found in Hyperboria peers, #cjdns and #projectmeshnet on EFnet among many other places.
Starting
Start/enable the cjdns.service
.
If cjdns did not start, you should check the unit status or use journalctl and edit /etc/cjdroute.conf
if needed.