I been trying to understand the difference between i2p to things like Tor and VPNs.
To my understanding, i2p is its own closed off network, meaning you cannot use i2p to access stuff outside of i2p like the clear net, onion domains, etc?
When using i2p, all traffic is relayed through other users in the i2p network like Tor but there is really no such thing as an exit node since you cannot access content outside of i2p?
Therefore i2p is good for hosting .i2p domains that can only be accessed in the i2p network and is good for P2P applications like Bittorrent?
Is this correct? Or am I still misunderstanding i2p?
And therefore could you and other users on i2p run a bitcoin nodes which will only be federated with bitcoin nodes with the i2p network and never federate with the rest of the bitcoin network, essentially making a fork of bitcoin blockchain on i2p?
And is there any other good use cases to i2p besides dark net websites and torrenting?
There are exit nodes in i2p, but they are called outproxies. The most popular ones are exit.stormycloud.i2p, purokishi.i2p, and outproxy.acetone.i2p. To setup an outproxy, you will have to setup software external to i2p, i2p routers by themselves will never exit. It is possible to visit onion domains inside of i2p, StormyClouds's outproxy has support for this, but from what ive heard, its recommended to use none of these, and to just use the tor browser if you need to access onion sites or the clearnet anonymously.
There are many use cases for i2p besides eepsites and torrenting, pretty much anything that runs on TCP can prolly be ran on i2p. For example, I run my servers ssh over i2p, so if my ip address were to change for whatever reason, the i2p address will remain the same. There are also IRC services, internet radio stations, there are even 2 public Minecraft servers.
I dont use the outproxies for ssh, but it should be possible to connect to my server using its clearnet address using one of the outproxies. I have i2pd running on my server 24/7, and an entry in the tunnels.conf file that points to 127.0.0.1:22 on the server. When I want to connect to it, Ill run another i2p router on whatever device im connecting to, and Ill put the ".b32.i2p" address into ssh while using the SOCKS proxy for it. It is possible to make a client entry in the tunnels.conf on whatever device you are connecting from, and you can even turn the hops down to 1, which will increase performance, but lower anonymity. I think by default the SOCKS proxy uses 3 hops, but it can be changed.
But it should totally be possible to run your own private VPN over i2p, but Ive never done it myself, I just use ssh to port forward all of my self hosted stuff.
Sure, the steps are different depending on which i2p router you are using, for i2pd, you just have to add a file in your tunnels.d directory, or add an entry in your tunnels.conf and then reload the tunnel configuration. In Java i2p, you will have to do it through the gui.
The tunnel length can be reduced to 1 for better performance, but you will sacrifice some anonymity.
But once the tunnel is setup and running, you can use Minecraft 1.19.2, or a newer version with ViaFabricPlus and connect to 127.0.0.1:25565. Its an anarchy server, but its pretty chill, I heard there is an iron farm and trained villagers for anyone to use near spawn, but I havent seen them. It is a cracked server, so you will have to use /register and save your password somewhere.
The other server is at mc.r4sas.i2p, I couldnt copy any links from there, I think its down rn, but the instructions for i2pcraft should be pretty much the same, just a different address. But I think its a russian speaking server, all of the players ive seen on i2pcraft speak english.