Cjdns - ArchWiki

# Cjdns

From ArchWiki
Jump to navigation Jump to search

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

Note: Double-check file permissions for `/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 for errors and edit `/etc/cjdroute.conf` if needed:

    # systemctl status cjdns
    # journalctl -u cjdns

## See also

- Wikipedia:Cjdns

Category:

- Networking