|
|
@@ -34,7 +34,8 @@ Edit your `darkirc_config.toml` file to reflect the network settings you want
|
|
|
to support. Listed below are different `darkirc_config.toml` configurations. You
|
|
|
can choose between a clearnet node, a fully anonymous Tor node, or a bridge
|
|
|
node which runs over clearnet & Tor, and is most beneficial for the health of
|
|
|
-the network.
|
|
|
+the network. Each mode can be activated by adding the appropriate profile to
|
|
|
+`active_profiles` net setting.
|
|
|
|
|
|
<u><b>Note</b></u>: As you modify the file, if you notice some settings are missing,
|
|
|
simply add them. Some settings may be commented-out by default. In the example
|
|
|
@@ -45,35 +46,43 @@ have some of them (for example: IPv6 or domain) remove the values entirely.
|
|
|
|
|
|
### Clearnet node
|
|
|
|
|
|
-A clearnet node routes traffic over `tcp+tls`. You can find a complete example config
|
|
|
+A clearnet node routes traffic over `tcp+tls`. It is enabled by adding
|
|
|
+`tcp+tls` to the `active_profiles` list. You can find a complete example config
|
|
|
file for `darkirc-clearnet.toml` in `${DARKFI_REPO}/bin/darkirc/config`.
|
|
|
|
|
|
```toml
|
|
|
+## Outbound connection slots
|
|
|
+outbound_connections = 8
|
|
|
+
|
|
|
+## Inbound connection slots
|
|
|
+inbound_connections = 64
|
|
|
+
|
|
|
## Whitelisted transports for outbound connections
|
|
|
-allowed_transports = ["tcp+tls"]
|
|
|
+active_profiles = ["tcp+tls"]
|
|
|
+
|
|
|
+## Transports to be mixed
|
|
|
+mixed_profiles = []
|
|
|
+
|
|
|
+[net.profiles."tcp+tls"]
|
|
|
+## Seed nodes to connect to
|
|
|
+seeds = ["tcp+tls://lilith1.dark.fi:25551"]
|
|
|
|
|
|
## Addresses we want to advertise to peers
|
|
|
external_addrs = ["tcp+tls://MY_IP_V4:26661", "tcp+tls://MY_IP_V6:26661", "tcp+tls://my.resolveable.address:26661"]
|
|
|
|
|
|
-## Seed nodes to connect to
|
|
|
-seeds = ["tcp+tls://lilith1.dark.fi:5262"]
|
|
|
-
|
|
|
## P2P accept addresses
|
|
|
inbound = ["tcp+tls://0.0.0.0:26661", "tcp+tls://[::]:26661"]
|
|
|
|
|
|
-## Outbound connection slots
|
|
|
-outbound_connections = 8
|
|
|
-
|
|
|
-## Inbound connection slots
|
|
|
-inbound_connections = 64
|
|
|
-
|
|
|
-## Transports to be mixed
|
|
|
-mixed_transports = []
|
|
|
+## Connection settings with default values applicable for each profile separately
|
|
|
+#outbound_connect_timeout = 15
|
|
|
+#channel_handshake_timeout = 10
|
|
|
+#channel_heartbeat_interval = 30
|
|
|
```
|
|
|
|
|
|
### Fully anonymous Tor-enabled node
|
|
|
|
|
|
-A Tor-enabled node routes traffic over `tor`. You can find a complete example config
|
|
|
+A Tor-enabled node routes traffic over `tor`. It is enabled by adding
|
|
|
+`tor` to the `active_profiles` list. You can find a complete example config
|
|
|
file for `darkirc-tor.toml` in `${DARKFI_REPO}/bin/darkirc/config`. This node
|
|
|
configuration is for users that would like to support `darkirc` over the Tor
|
|
|
network. A Tor node provides the best anonymity on the network.
|
|
|
@@ -84,39 +93,43 @@ public node over Tor. Please refer to
|
|
|
|
|
|
```toml
|
|
|
## connection settings
|
|
|
-outbound_connect_timeout = 60
|
|
|
-channel_handshake_timeout = 55
|
|
|
-channel_heartbeat_interval = 90
|
|
|
outbound_peer_discovery_cooloff_time = 60
|
|
|
|
|
|
+## Outbound connection slots
|
|
|
+outbound_connections = 8
|
|
|
+
|
|
|
+## Inbound connection slots
|
|
|
+inbound_connections = 64
|
|
|
+
|
|
|
## Whitelisted transports for outbound connections
|
|
|
-allowed_transports = ["tor", "tor+tls"]
|
|
|
+active_profiles = ["tor"]
|
|
|
|
|
|
-## Addresses we want to advertise to peers
|
|
|
-external_addrs = ["tor://youraddress.onion:25551"]
|
|
|
+## Transports to be mixed
|
|
|
+mixed_profiles = []
|
|
|
|
|
|
-## Seed nodes to connect to
|
|
|
+[net.profiles."tor"]
|
|
|
+## Seed nodes to connect to
|
|
|
seeds = [
|
|
|
"tor://g7fxelebievvpr27w7gt24lflptpw3jeeuvafovgliq5utdst6xyruyd.onion:25552",
|
|
|
"tor://yvklzjnfmwxhyodhrkpomawjcdvcaushsj6torjz2gyd7e25f3gfunyd.onion:25552",
|
|
|
]
|
|
|
|
|
|
-## P2P accept addresses
|
|
|
-inbound = ["tcp://127.0.0.1:25551"]
|
|
|
-
|
|
|
-## Outbound connection slots
|
|
|
-outbound_connections = 8
|
|
|
+## Addresses we want to advertise to peers
|
|
|
+external_addrs = ["tor://youraddress.onion:26661"]
|
|
|
|
|
|
-## Inbound connection slots
|
|
|
-inbound_connections = 64
|
|
|
+## P2P accept addresses
|
|
|
+inbound = ["tcp://127.0.0.1:26661"]
|
|
|
|
|
|
-## Transports to be mixed
|
|
|
-mixed_transports = []
|
|
|
+## Connection settings with default values applicable for each profile separately
|
|
|
+#outbound_connect_timeout = 60
|
|
|
+#channel_handshake_timeout = 55
|
|
|
+#channel_heartbeat_interval = 90
|
|
|
```
|
|
|
|
|
|
### Fully anonymous I2p-enabled node
|
|
|
|
|
|
-An I2p-enabled node routes traffic over `i2p`. You can find a complete example config
|
|
|
+An I2p-enabled node routes traffic over `i2p`. It is enabled by adding
|
|
|
+`i2p` to the `active_profiles` list. You can find a complete example config
|
|
|
file for `darkirc-i2p.toml` in `${DARKFI_REPO}/bin/darkirc/config`. This node
|
|
|
configuration is for users that would like to support `darkirc` over the I2p
|
|
|
network.
|
|
|
@@ -127,40 +140,44 @@ public node over I2p. Please refer to
|
|
|
|
|
|
```toml
|
|
|
## connection settings
|
|
|
-outbound_connect_timeout = 60
|
|
|
-channel_handshake_timeout = 55
|
|
|
-channel_heartbeat_interval = 90
|
|
|
outbound_peer_discovery_cooloff_time = 60
|
|
|
|
|
|
+## Outbound connection slots
|
|
|
+outbound_connections = 8
|
|
|
+
|
|
|
+## Inbound connection slots
|
|
|
+inbound_connections = 64
|
|
|
+
|
|
|
## Whitelisted transports for outbound connections
|
|
|
-allowed_transports = ["i2p", "i2p+tls"]
|
|
|
+active_profiles = ["i2p"]
|
|
|
|
|
|
-## Addresses we want to advertise to peers
|
|
|
-external_addrs = ["i2p://youraddress.b32.i2p:25551"]
|
|
|
+## I2p Socks5 proxy
|
|
|
+i2p_socks5_proxy = "socks5://127.0.0.1:4447"
|
|
|
|
|
|
+[net.profiles."i2p"]
|
|
|
## Seed nodes to connect to
|
|
|
seeds = [
|
|
|
"i2p://6l2rdfriixo2nh5pr5bt555lyz56qox2ikzia4kuzm4okje7gtmq.b32.i2p:5262"
|
|
|
]
|
|
|
|
|
|
-## P2P accept addresses
|
|
|
-inbound = ["tcp://127.0.0.1:25551"]
|
|
|
-
|
|
|
-## Outbound connection slots
|
|
|
-outbound_connections = 8
|
|
|
+## Addresses we want to advertise to peers
|
|
|
+external_addrs = ["i2p://youraddress.b32.i2p:26661"]
|
|
|
|
|
|
-## Inbound connection slots
|
|
|
-inbound_connections = 64
|
|
|
+## P2P accept addresses
|
|
|
+inbound = ["tcp://127.0.0.1:26661"]
|
|
|
|
|
|
-## I2p Socks5 proxy
|
|
|
-i2p_socks5_proxy = "socks5://127.0.0.1:4447"
|
|
|
+## Connection settings with default values applicable for each profile separately
|
|
|
+#outbound_connect_timeout = 60
|
|
|
+#channel_handshake_timeout = 55
|
|
|
+#channel_heartbeat_interval = 90
|
|
|
```
|
|
|
|
|
|
### Bridge node
|
|
|
|
|
|
A bridge node is a node that offers connectivity via multiple transport layers.
|
|
|
This provides the most benefit for the health of the network. This is the most
|
|
|
-maximally compatible node for people that wish to support the network. You can
|
|
|
+maximally compatible node for people that wish to support the network. It can
|
|
|
+be enabled by adding multiple profiles to the `active_profiles` list. You can
|
|
|
find a complete example config file for `darkirc-mixed.toml` in
|
|
|
`${DARKFI_REPO}/bin/darkirc/config`. Refer to
|
|
|
[Tor Nodes](tor-guide.md#inbound-node-settings) to configure Tor.
|
|
|
@@ -168,40 +185,61 @@ find a complete example config file for `darkirc-mixed.toml` in
|
|
|
<!-- TODO: replace the i2p seed address with an official one-->
|
|
|
```toml
|
|
|
## connection settings
|
|
|
-outbound_connect_timeout = 60
|
|
|
-channel_handshake_timeout = 55
|
|
|
-channel_heartbeat_interval = 90
|
|
|
outbound_peer_discovery_cooloff_time = 60
|
|
|
|
|
|
+## Outbound connection slots
|
|
|
+outbound_connections = 8
|
|
|
+
|
|
|
+## Inbound connection slots
|
|
|
+inbound_connections = 64
|
|
|
+
|
|
|
+## I2p Socks5 proxy
|
|
|
+i2p_socks5_proxy = "socks5://127.0.0.1:4447"
|
|
|
+
|
|
|
## Whitelisted transports for outbound connections
|
|
|
-allowed_transports = ["tcp+tls", "tor", "i2p"]
|
|
|
+active_profiles = ["tcp+tls", "tor", "i2p"]
|
|
|
+
|
|
|
+## Transports to be mixed
|
|
|
+mixed_profiles = []
|
|
|
+
|
|
|
+[net.profiles."tcp+tls"]
|
|
|
+## Seed nodes to connect to
|
|
|
+seeds = ["tcp+tls://lilith0.dark.fi:25551", "tcp+tls://lilith1.dark.fi:25551"]
|
|
|
+
|
|
|
+## P2P accept addresses
|
|
|
+inbound = ["tcp+tls://0.0.0.0:26661", "tcp+tls://[::]:26661"]
|
|
|
|
|
|
## Addresses we want to advertise to peers
|
|
|
-external_addrs = ["tcp+tls://MY_IP_V4:26661", "tcp+tls://MY_IP_V6:26661", "tcp+tls://my.resolveable.address:26661",
|
|
|
- "tor://youraddress.onion:25551", "i2p://youraddress.b32.i2p"]
|
|
|
+external_addrs = ["tcp+tls://MY_IP_V4:26661", "tcp+tls://MY_IP_V6:26661", "tcp+tls://my.resolveable.address:26661"]
|
|
|
|
|
|
-## Seed nodes to connect to
|
|
|
+[net.profiles."tor"]
|
|
|
+## Seed nodes to connect to
|
|
|
seeds = [
|
|
|
- "tcp+tls://lilith1.dark.fi:5262",
|
|
|
"tor://g7fxelebievvpr27w7gt24lflptpw3jeeuvafovgliq5utdst6xyruyd.onion:25552",
|
|
|
"tor://yvklzjnfmwxhyodhrkpomawjcdvcaushsj6torjz2gyd7e25f3gfunyd.onion:25552",
|
|
|
- "i2p://6l2rdfriixo2nh5pr5bt555lyz56qox2ikzia4kuzm4okje7gtmq.b32.i2p:5262"
|
|
|
]
|
|
|
|
|
|
## P2P accept addresses
|
|
|
-inbound = ["tcp://127.0.0.1:25551", "tcp+tls://0.0.0.0:26661", "tcp+tls://[::]:26661"]
|
|
|
+inbound = ["tcp://127.0.0.1:26662"]
|
|
|
|
|
|
-## Outbound connection slots
|
|
|
-outbound_connections = 8
|
|
|
+## Addresses we want to advertise to peers
|
|
|
+external_addrs = ["tor://youraddress.onion:26662"]
|
|
|
|
|
|
-## Inbound connection slots
|
|
|
-inbound_connections = 64
|
|
|
+[net.profiles."i2p"]
|
|
|
+## Seed nodes to connect to
|
|
|
+seeds = [
|
|
|
+ ##TODO: replace with an official seed address
|
|
|
+ "i2p://6l2rdfriixo2nh5pr5bt555lyz56qox2ikzia4kuzm4okje7gtmq.b32.i2p:5262"
|
|
|
+]
|
|
|
|
|
|
-## Transports to be mixed
|
|
|
-mixed_transports = ["tcp+tls", "tcp"]
|
|
|
+## Manual peers to connect to
|
|
|
+#peers = []
|
|
|
|
|
|
-## I2p Socks5 proxy
|
|
|
-i2p_socks5_proxy = "socks5://127.0.0.1:4447"
|
|
|
+## P2P accept addresses
|
|
|
+inbound = ["tcp://127.0.0.1:26663"]
|
|
|
+
|
|
|
+## Addresses we want to advertise to peers
|
|
|
+external_addrs = ["i2p://youraddress.b32.i2p:26663"]
|
|
|
```
|
|
|
|
|
|
## Test your node
|