testnet - PurpleI2P/i2pd GitHub Wiki
I2P Test Network
This page documents how to set up and bootstrap a self contained test network using i2pd.
This guide assumes debian stable for host and containers.
Test Network Prerequisites
- CPU with AESNI support
- 64MB-96MB RAM per instance
- linux with lxc support
Initial Setup
Host Setup
Update repos
apt update
Build Dependencies
Get packages for needed for building everything from source
apt install cmake libboost-dev-all libssl-dev build-essential git nodejs
Get packages for containers
apt install lxc lxctl bridge-utils
Host Network Config
Set up bridge interface for containers, it should not bridge any ports.
Append the following to /etc/network/interfaces
auto i2pbr0
iface i2pbr0 inet manual
bridge_ports none
then put the interface up, keep it up
ifup i2pbr0
Host system dependencies
I2PD is used for this test network (obviously)
cd /usr/local/src/
git clone https://github.com/purplei2p/i2pd
cd i2pd/build
cmake -DWITH_AESNI=ON -DWITH_MESHNET=ON
make -j8
CJDNS is used for connecting all the i2pd instances with no manual configuration (very useful)
cd /usr/local/src/
git clone https://github.com/cjdelisle/cjdns
cd cjdns
./do
cp cjdroute /usr/bin
cp contrib/systemd/cjdns.service /etc/systemd/system/
systemctl enable cjdns
systemctl restart cjdns