RNS Logo

rns.recipes

◈ 9ce92808be498e9e05590ff27cbfdfe4
Upcoming RNS 1.6.0 https://rns.recipes/forum/general/upcoming-rns-160-help-testing

How to make I2PInterface work reliably?

Started by batrat 500e6ab103644d28... ·

batrat 1d164d8a64118a7a...
#1

Hi. I'm trying to use i2pd+RNS over WAN, but I don't really understand the requirements to make it work, and I can't find the relevant info. Could someone give instructions for the stupid here? I have been able to connect, I reckon from WAN too, but it does not work reliably at all. I have not used i2p before.

 

The transport is an RPi behind a normal home router (OpenWRT). What do I need?

 

  1. Do I need connectable = yes on both ends?
  2. Do I need peers = ...b32.i2p on both ends? (I don't need straight outbound connection from the transport I2PInterface, that's handled by other interfaces.)
  3. Do I need to manually configure tunnels.conf (on both ends), and how?
  4. What about i2pd.conf? Something there?
  5. What ports do I need to open and where?
  6. Something else?

 

Thanks in advance. If this thread gets a clean and working answer, I hope it might reach the Reticulum Community Wiki or something, so that others could find the info too.

batrat 1d164d8a64118a7a...
#2

And just to state more clearly, the configuration I'm trying to achieve is

 

PC on the internet somewhere --> Home transport node I2PInterface (AP) --> Outbound BackboneInterface on the same transport --> Some Backbone listener somewhere

 

So currently I only want a personal point-to-point connection over i2p to my transport, not a widely accessible I2P transport, in case that makes a difference (I'm really not sure if it does).

traveller 32293d4d05b21cf1...
#3

The only thing I had to do to make Reticulum work with I2P is to enable SAM i2pd-side.

 

Set connectable=yes on the transport node's I2PInterface. When it starts, it'll give you a .b32.i2p address you can check via rnstatus. Paste it into the peers = ... section of the I2PInterface on the PC's reticulum instance.

 

If others somehow find your b32 I2P address, they'll also be ahle to connect. While the b32 address itself should act as a form of pre-shared secret, for additional security, you can also enable IFAC.

batrat 1d164d8a64118a7a...
#4

And you got connection over WAN and through the router's firewall? No ports opened or anything? I expected the solution must be more nuanced than that, since that's what I have done from the start, but let's just see once more.

CarL_PetErson d98ab698412c63fa...
#5

Things that haven't been mentioned already:

 

  • I2P sometimes needs a bit of time (sometimes a couple of hours) till it runs smoothly.
  • What RNS-versions are you running? There has been some updates a couple of month ago thatimproved reliability by a LOT

 

I would try to connect to some established I2P-interfaces first to test if those work and than resume with trying to make the point to point connection work.

traveller 32293d4d05b21cf1...
#6

batrat wrote:

And you got connection over WAN and through the router's firewall? No ports opened or anything? I expected the solution must be more nuanced than that, since that's what I have done from the start, but let's just see once more.

 

Yup, just leave i2pd running for some time as mentioned by others and it should work

 

I'm pretty sure that if you have a public IP that the I2P router could probably benefit from it having port forwarding or DMZ configured. (Or inbound open firewall, in the case of IPv6.) I personally don't so I didn't research too much into this.

batrat 1d164d8a64118a7a...
#7

i2pd has been running for a long time, so it's not that. I do have transit disabled on both ends, but I don't suppose that would cause problems (it's been enabled at some point too)?

 

I'm on RNS 1.6.0 currently and have been up to date all along.

 

Verifying against others' I2PInterfaces is a good idea, I'll certainly do that.

HOPerator 6c7b6431cac1ec6d...
#8

If I understand correctly, you want :

 

your computer -> your transport (over I2P)
your transport -> global backbone (over TCP/Backbone Interface), right?

 

For i2pd, verify that the SAM interface is enabled (open a browser, type localhost:7070, it should appear at the bottom)
It should be enabled by default. If it isn't, enable it in your i2pd.conf file.

 

Server-side :

 

in the conf :

 

[[Name of your interface]]

 

type = I2PInterface
enabled = yes
connectable = yes
network_name = your_secret_network_name
passphrase = your_secret_passphrase

 

restart reticulum. run rnstatus, a long string that ends with .b32.i2p should be there. Keep it.

 

You do need to configure it as a transport and add some other interfaces to it to connect to the global backbone.

 

Client-side :

 

[[Name of your interface]]

 

type = I2PInterface
enabled = yes
peers = your_string.b32.i2p
network_name = your_secret_network_name
passphrase = your_secret_passphrase

 

restart and it should normally work.
i2pd will also need a couple of minutes to "warm-up" on your computer everytime you restart it in order to connect to the I2P network. So if you want to directly connect to your transport node, it might not be able to directly reach it.
Give it 10 to 15 minutes.

 

 

Now, in case you don't know, I2P is a p2p network.
Normally, each node participates helps the wider network by sharing bandwidth. This helps to have much more node diversity than, for example on Tor.
This also allows to mix your own traffic with that of others and making your own traffic harder to identify as everyone shares their own traffic.
Do know however that others can now you're on the I2P network, but not what you do on it.

 

It can work with ports closed if you are behind a NAT. However, you won't contribute bandwidth to the wider network. It will also make you less integrated and you won't be able your own traffic with that of others.
Do redirect your ports on your transport node if you can and help the network.

 

Also a warning : due to it's nature, I2P is slow and your traffic might suffer hickups or disconnections from time to time. If one of the peers your traffic was traveling through suddently disconnects, well, the connection will reset and might time out.

 

If I have completly misinterpreted what you wanted or was a bit too handholdy, sorry ^^'

Post a Reply

Supports Markdown: **bold**, *italic*, `code`, ```code blocks```, [links](url)

Log in to upload images

Quote
Copied to clipboard