mirror of
https://github.com/dashpay/dash.git
synced 2024-12-24 19:42:46 +01:00
merge bitcoin#22250: add basic I2P documentation
This commit is contained in:
parent
bff4d9b551
commit
7cd28bfdc1
@ -71,12 +71,13 @@ The Dash Core repo's [root README](/README.md) contains relevant information on
|
||||
- [dash.conf Configuration File](dash-conf.md)
|
||||
- [Files](files.md)
|
||||
- [Fuzz-testing](fuzzing.md)
|
||||
- [I2P Support](i2p.md)
|
||||
- [Init Scripts (systemd/upstart/openrc)](init.md)
|
||||
- [PSBT support](psbt.md)
|
||||
- [Reduce Memory](reduce-memory.md)
|
||||
- [Reduce Traffic](reduce-traffic.md)
|
||||
- [Tor Support](tor.md)
|
||||
- [Init Scripts (systemd/upstart/openrc)](init.md)
|
||||
- [ZMQ](zmq.md)
|
||||
- [PSBT support](psbt.md)
|
||||
|
||||
License
|
||||
---------------------
|
||||
|
72
doc/i2p.md
Normal file
72
doc/i2p.md
Normal file
@ -0,0 +1,72 @@
|
||||
# I2P support in Dash Core
|
||||
|
||||
It is possible to run Dash Core as an
|
||||
[I2P (Invisible Internet Project)](https://en.wikipedia.org/wiki/I2P)
|
||||
service and connect to such services.
|
||||
|
||||
This [glossary](https://geti2p.net/en/about/glossary) may be useful to get
|
||||
started with I2P terminology.
|
||||
|
||||
## Run Dash Core with an I2P router (proxy)
|
||||
|
||||
A running I2P router (proxy) with [SAM](https://geti2p.net/en/docs/api/samv3)
|
||||
enabled is required (there is an [official one](https://geti2p.net) and
|
||||
[a few alternatives](https://en.wikipedia.org/wiki/I2P#Routers)). Notice the IP
|
||||
address and port the SAM proxy is listening to; usually, it is
|
||||
`127.0.0.1:7656`. Once it is up and running with SAM enabled, use the following
|
||||
Dash Core options:
|
||||
|
||||
```
|
||||
-i2psam=<ip:port>
|
||||
I2P SAM proxy to reach I2P peers and accept I2P connections (default:
|
||||
none)
|
||||
|
||||
-i2pacceptincoming
|
||||
If set and -i2psam is also set then incoming I2P connections are
|
||||
accepted via the SAM proxy. If this is not set but -i2psam is set
|
||||
then only outgoing connections will be made to the I2P network.
|
||||
Ignored if -i2psam is not set. Listening for incoming I2P
|
||||
connections is done through the SAM proxy, not by binding to a
|
||||
local address and port (default: 1)
|
||||
```
|
||||
|
||||
In a typical situation, this suffices:
|
||||
|
||||
```
|
||||
dashd -i2psam=127.0.0.1:7656
|
||||
```
|
||||
|
||||
The first time Dash Core connects to the I2P router, its I2P address (and
|
||||
corresponding private key) will be automatically generated and saved in a file
|
||||
named `i2p_private_key` in the Dash Core data directory.
|
||||
|
||||
## Additional configuration options related to I2P
|
||||
|
||||
You may set the `debug=i2p` config logging option to have additional
|
||||
information in the debug log about your I2P configuration and connections. Run
|
||||
`dash-cli help logging` for more information.
|
||||
|
||||
It is possible to restrict outgoing connections in the usual way with
|
||||
`onlynet=i2p`. I2P support was added to Dash Core in version 22.0 (mid 2021)
|
||||
and there may be fewer I2P peers than Tor or IP ones. Therefore, using
|
||||
`onlynet=i2p` alone (without other `onlynet=`) may make a node more susceptible
|
||||
to [Sybil attacks](https://en.dash.it/wiki/Weaknesses#Sybil_attack). Use
|
||||
`dash-cli -addrinfo` to see the number of I2P addresses known to your node.
|
||||
|
||||
## I2P related information in Dash Core
|
||||
|
||||
There are several ways to see your I2P address in Dash Core:
|
||||
- in the debug log (grep for `AddLocal`, the I2P address ends in `.b32.i2p`)
|
||||
- in the output of the `getnetworkinfo` RPC in the "localaddresses" section
|
||||
- in the output of `dash-cli -netinfo` peer connections dashboard
|
||||
|
||||
To see which I2P peers your node is connected to, use `dash-cli -netinfo 4`
|
||||
or the `getpeerinfo` RPC (e.g. `dash-cli getpeerinfo`).
|
||||
|
||||
To see which I2P addresses your node knows, use the `getnodeaddresses 0 i2p`
|
||||
RPC.
|
||||
|
||||
## Compatibility
|
||||
|
||||
Dash Core uses the [SAM v3.1](https://geti2p.net/en/docs/api/samv3) protocol
|
||||
to connect to the I2P network. Any I2P router that supports it can be used.
|
Loading…
Reference in New Issue
Block a user