doc: I2P documentation updates
This commit is contained in:
73
doc/i2p.md
73
doc/i2p.md
@@ -33,12 +33,10 @@ configuration options:
|
|||||||
none)
|
none)
|
||||||
|
|
||||||
-i2pacceptincoming
|
-i2pacceptincoming
|
||||||
If set and -i2psam is also set then incoming I2P connections are
|
Whether to accept inbound I2P connections (default: 1). Ignored if
|
||||||
accepted via the SAM proxy. If this is not set but -i2psam is set
|
-i2psam is not set. Listening for inbound I2P connections is
|
||||||
then only outgoing connections will be made to the I2P network.
|
done through the SAM proxy, not by binding to a local address and
|
||||||
Ignored if -i2psam is not set. Listening for incoming I2P
|
port.
|
||||||
connections is done through the SAM proxy, not by binding to a
|
|
||||||
local address and port (default: 1)
|
|
||||||
```
|
```
|
||||||
|
|
||||||
In a typical situation, this suffices:
|
In a typical situation, this suffices:
|
||||||
@@ -56,6 +54,36 @@ connections if `-i2pacceptincoming=1`. If `-i2pacceptincoming=0` then only
|
|||||||
outbound I2P connections are made and a different transient I2P address is used
|
outbound I2P connections are made and a different transient I2P address is used
|
||||||
for each connection to improve privacy.
|
for each connection to improve privacy.
|
||||||
|
|
||||||
|
## Additional configuration options related to I2P
|
||||||
|
|
||||||
|
```
|
||||||
|
-debug=i2p
|
||||||
|
```
|
||||||
|
|
||||||
|
Set the `debug=i2p` config logging option to see additional information in the
|
||||||
|
debug log about your I2P configuration and connections.
|
||||||
|
|
||||||
|
```
|
||||||
|
-onlynet=i2p
|
||||||
|
```
|
||||||
|
|
||||||
|
Make automatic outbound connections only to I2P addresses. Inbound and manual
|
||||||
|
connections are not affected by this option. It can be specified multiple times
|
||||||
|
to allow multiple networks, e.g. onlynet=onion, onlynet=i2p.
|
||||||
|
|
||||||
|
I2P support was added to Hush in version 3.9.3 and there may be fewer I2P
|
||||||
|
peers than Tor or IP ones. Therefore, using I2P alone without other networks may
|
||||||
|
make a node more susceptible to [Sybil
|
||||||
|
attacks](https://en.bitcoin.it/wiki/Weaknesses#Sybil_attack).
|
||||||
|
|
||||||
|
Another consideration with `onlynet=i2p` is that the initial blocks download
|
||||||
|
phase when syncing up a new node can be very slow. This phase can be sped up by
|
||||||
|
using other networks, for instance `onlynet=onion`, at the same time.
|
||||||
|
|
||||||
|
In general, a node can be run with both onion and I2P hidden services (or
|
||||||
|
any/all of IPv4/IPv6/onion/I2P/CJDNS), which can provide a potential fallback if
|
||||||
|
one of the networks has issues.
|
||||||
|
|
||||||
## Persistent vs transient I2P addresses
|
## Persistent vs transient I2P addresses
|
||||||
|
|
||||||
In I2P connections, the connection receiver sees the I2P address of the
|
In I2P connections, the connection receiver sees the I2P address of the
|
||||||
@@ -136,14 +164,19 @@ port (`TO_PORT`) is always set to 0 and is not in the control of Hush.
|
|||||||
|
|
||||||
## Bandwidth
|
## Bandwidth
|
||||||
|
|
||||||
I2P routers may route a large amount of general network traffic with their
|
By default, your node shares bandwidth and transit tunnels with the I2P network
|
||||||
default settings. Check your router's configuration to limit the amount of this
|
in order to increase your anonymity with cover traffic, help the I2P router used
|
||||||
traffic relayed, if desired.
|
by your node integrate optimally with the network, and give back to the network.
|
||||||
|
It's important that the nodes of a popular application like Hush contribute
|
||||||
|
as much to the I2P network as they consume.
|
||||||
|
|
||||||
With `i2pd`, the amount of bandwidth being shared with the wider network can be
|
It is possible, though strongly discouraged, to change your I2P router
|
||||||
adjusted with the `bandwidth`, `share` and `transittunnels` options in your
|
configuration to limit the amount of I2P traffic relayed by your node.
|
||||||
`i2pd.conf` file. For example, to limit total I2P traffic to 256KB/s and share
|
|
||||||
50% of this limit for a maximum of 20 transit tunnels:
|
With `i2pd`, this can be done by adjusting the `bandwidth`, `share` and
|
||||||
|
`transittunnels` options in your `i2pd.conf` file. For example, to limit total
|
||||||
|
I2P traffic to 256KB/s and share 50% of this limit for a maximum of 20 transit
|
||||||
|
tunnels:
|
||||||
|
|
||||||
```
|
```
|
||||||
bandwidth = 256
|
bandwidth = 256
|
||||||
@@ -153,9 +186,15 @@ share = 50
|
|||||||
transittunnels = 20
|
transittunnels = 20
|
||||||
```
|
```
|
||||||
|
|
||||||
If you prefer not to relay any public I2P traffic and only permit I2P traffic
|
|
||||||
from programs which are connecting via the SAM proxy, e.g. Hush, you
|
|
||||||
can set the `notransit` option to `true`.
|
|
||||||
|
|
||||||
Similar bandwidth configuration options for the Java I2P router can be found in
|
Similar bandwidth configuration options for the Java I2P router can be found in
|
||||||
`http://127.0.0.1:7657/config` under the "Bandwidth" tab.
|
`http://127.0.0.1:7657/config` under the "Bandwidth" tab.
|
||||||
|
|
||||||
|
Before doing this, please see the "Participating Traffic Considerations" section
|
||||||
|
in [Embedding I2P in your Application](https://geti2p.net/en/docs/applications/embedding).
|
||||||
|
|
||||||
|
In most cases, the default router settings should work fine.
|
||||||
|
|
||||||
|
## Bundling I2P in a Hush application
|
||||||
|
|
||||||
|
Please see the "General Guidance for Developers" section in https://geti2p.net/en/docs/api/samv3
|
||||||
|
if you are developing a downstream application that may be bundling I2P with Hush.
|
||||||
|
|||||||
Reference in New Issue
Block a user