Shoalsteed / r-i2p

Keeping track of community resources.
0 stars 0 forks source link

Updated Resources #2

Closed Shoalsteed closed 1 year ago

Shoalsteed commented 1 year ago

A list of questions and answers for common questions and suggestions for how to find help.

Shoalsteed commented 1 year ago

The I2P network is an Overlay Network. The Invisible Internet Project began in 2002 and has been active since that time.

How to Connect to the I2P Network

The core software (Java) includes a router that introduces and maintains a connection with the network. It also provides a handful of applications and configuration options to get you started and personalize your experience. I2Pd is a C++ implementation of the I2P protocol. When using I2Pd you will need to edit configuration files, with Java I2P you can do it all within a user interface.

What Can I Do On The I2P Network? The network provides an application layer that allows people to use and create familiar apps for daily use. Additionally, the network has its own unique DNS so that you can self host or mirror content on the network. You can create and own your own platform that you can add to the I2P directory or only invite your friends. The I2P network functions the same way the Internet does. The Java software includes a BitTorrent client, and email as well as a static website template. Other applications can easily be added to your router console.

How it Works The server is hidden from the user and the user from the server. All I2P network traffic is internal to its network. Traffic inside the I2P network does not interact with the Internet directly. It is a layer on top of the Internet. It uses encrypted unidirectional tunnels between you and your peers to send traffic. No one can see where that traffic is coming from, where it is going, or what the contents are. Additionally I2P transports offers resistance to pattern recognition and blocking by censors. Because the network relies on peers to route traffic, location blocking is also reduced.

Distribution All traffic on the I2P network is encrypted. An observer cannot see a message's contents, source, or destination. All traffic you route as a participant is internal to the I2P network, you are not an exit node. The network does not do distributed storage of its content ( like Freenet or IPFS). By participating as a node you are not storing content for anyone. If there are hidden services which you dislike, you may refrain from visiting them. Your router will not request any content without your specific instruction to do so.

Best OS To Use: The I2P core software is cross platform. The best OS to use is the one that you feel most comfortable using.

I Can See My IP Address: Yes, this is how a fully distributed peer-to-peer network works. Every node participates in routing packets for others, so your IP address must be known to establish connections. While the fact that your computer runs I2P software is public, nobody can see your activities in the network. For instance, you cannot see if a user behind an IP address is sharing files, hosting a website, doing research or just running a node to contribute bandwidth to the network.

Is Using I2P Dangerous? The I2P network is an overlay network. There are no dangers in using an overlay network. If you are engaging activities that are illegal or dangerous on the internet, that does not change if you are using an overlay network.

Regarding using overlay networks, the Java implementation includes a "Strict Countries List" that is used to decide how I2P routers should behave within regions where applications like I2P may be limited by law. For example, while no countries that we know of prohibit using I2P, some have broad prohibitions on participating in routing for others. Routers that appear to be in the "Strict" countries will automatically be placed into "Hidden" mode.

When a router is placed into hidden mode, three key things change about its behavior. It will no longer publish a routerInfo to the NetDB, it will no longer accept participating tunnels, and it will reject direct connections to routers in the same country that it is in. These defences make the routers more difficult to enumerate reliably, and prevent them from running afoul of restrictions on routing traffic for others.

OPSEC Keep track of what profiles you maintain and what services you interact with no matter what network you use. Perform personal risk assessments. The I2P Java software ships with very good defaults for hops for privacy without sacrificing performance.

What about "De-Anonymizing" attacks? Reducing anonymity is typically done by: A) identifying characteristics that are consistent across identities or B) identifying ephemeral characteristics of repeated connections.

Attacks on I2P in the past have relied on correlating NetDB storage and verification. By randomizing the delay between storage and verification, we reduce the consistency with which that verification can be linked to I2P activity, thereby limiting the utility of that data point. Attacks on software configured to work with I2P are out of scope for I2P to solve. When browsing I2P, hosting or using I2P services, it is the responsibility of the user to consider their threat model.

Firewalled Status: A firewalled I2P router can still access the I2P network. However, if you want to provide extra capacity to the network, it is necessary to open ports.

Open I2P's port on your modem, router and/or firewall(s) for better connectivity (ideally both UDP and TCP). More information on how to go about port forwarding can be easily found through a web search. Should you have any difficulties, you may request assistance in our forums and IRC channels listed below. Note that I2P does not support connecting to the internet via an http or socks proxy [patches welcome!], though you can connect to proxies via I2P itself once connected to the network.

For more information about Port Forwarding: https://portforward.com/

Does it matter which browser is used to access content on the I2P Network? Yes and no. Technically, you can use any browser that has support for proxies. However, some browsers are more secure than others. Also, depending on the browser, it may be more difficult to set up a proxy.

When you start your I2P router for the first time it will open in your default browser. If you open any browser and go to localhost (http://127.0.0.1:7657/home), you will see the router console. You can easily access the router in any browser this way.

Cannot reach I2P sites: If your router is running and you have shared clients and a browser either configured or are using I2PIPB, check the I2P project website using the link found in /home in the router console. If you can reach that site, then you know that your connection is good and browser is working. If you cannot reach a specific site, please realize that we cannot help you with that.

How Do I Activate the SAM Bridge Enable the SAM API: Go to http://127.0.0.1:7657/configclients. Find the menu item called "SAM application bridge." Select "Run at Startup" and press the small arrow to the right of the text.

How come router 'shutdown' takes several minutes? is it bad to shutdown immediately? Because you are routing traffic for other peers. If you shutdown your router immediately, you interrupt their traffic.

Browsing Resources

Proxy Configuration I2P in Private Browsing Mode This extension is included in the I2P core Windows software. If you are not a Windows user, it can be added from Firefox Browser Add-ons.

How to tweak a Chromium Based Browser to work with I2P

Configuring Privacy Browser for I2P on Android

Browser Configuration Guide

Outproxy StormyCloud

Service Directories http://notbob.i2p/ http://identiguy.i2p/

Search Engines Legwork search engine Another i2p search engine by OnionLand Another i2p search engine provided by idk

Inproxies You can use inproxies to surf the I2P network without having to have an I2P router. https://i2phides.me/ https://onion.ly/ https://www.darknetproxy.com/

I2P Name Registries inr.i2p reg.i2p operated by PurpleI2P Team dns.chudo.i2p isitup.i2p Another I2P Name Registry and checking tools to see if a eepsite is offline.

File Hosting and Pastebins i2push File hosting FS Filesharing service PrivateBin Encrypted pastebin Pasta NoJS Basic pastebin (JavaScript-free)

Torrents PaTracker Main torrent tracker DifTracker (French) torrent tracker

Tutorials Setting Up A Gopher Service on I2P A gopher service is somewhere in between a website and an ftp server, allowing the user to download files and also access links. Generating an eepsite vanity address (i2pd) Multi-homing a site between the WWW and an I2P Eepsite (i2pd) How to set up untraceable websites (eepsites) on I2P Easy censorship-resistant communication with Syndie The Hitchhiker’s Guide to the I2P eepsites

I2P Core Development Forums and Gitlab Main project site (clearnet) I2P Forum (clearnet) Official I2P community and development forum zzz zzz's personal website, old developers forum

Inside I2P - (http://git.idk.i2p) Outside I2P - (https://i2pgit.org) git clone https://i2pgit.org/i2p-hackers/i2p.i2p.git The read-only mirror is also still available at github.

GitHub mirror: git clone https://github.com/i2p/i2p.i2p.git

The Tor Project is not I2P's competition, surveillance and creeping authoritarianism is Support Tor users Blizzard: The I2P Snowflake donor Plugin

marek22k commented 1 year ago

Java I2P has built-in applications for torrents, e-mail and so on. i2pd is just a router which you can use with other software through I2CP interface. i2pd does not require Java. It’s written in C++.

Here I would take a tally sheet. If you had more space in the sidebar, a table might make sense. table

i2pd has some major optimizations for faster cryptography which leads to less consumption of processor time and energy.

Maybe mention that Java I2P has a "nicer" and friendlier user interface. For example, with I2Pd you have to edit configuration files, with Java I2P you can do it all via GUI.

Site: https://i2pd.website/

If this should be the new sidebar, a link to geti2p.net and maybe to the download area of geti2p.net as well as to the EasyInstaller for Windows is missing.

How it Works

I think this is very well explained.

The network does not do distributed storage of its content. By participating as a node you are not storing content for anyone.

One could add (like Freenet or IPFS) in brackets.

I Can See My IP Address:

One could also mention the "hidden mode". For example, it would certainly be dangerous for people in certain countries if the government saw them in the netDb. To inform these people about it in advance, one could mention the "hidden mode". On the other hand, do these people have access to Reddit?

To access the I2P network you need to use software. The software sits at layer seven of the OSI model, so no, a MAC address is not visible.

Mentioning the ISO-OSI model can be confusing for non-technical people. Instead, one could simply write that I2P does not work on the hardware level and therefore has nothing to do with MAC addresses.

Firewalled Status: A firewalled I2P router can still access the I2P network.

However, if you want to help the I2P, it is necessary to forward appropriate ports.

Maybe link to https://portforward.com/ or something similar.

I think there is a missing instruction how to get the port out. https://www.reddit.com/r/i2p/comments/yc3vqi/comment/itkcjoh/?utm_source=share&utm_medium=web2x&context=3 Summarized it simply: Go to 127.0.0.1:7657/confignet and forward the randomly selected port for UDP and TCP.

Does it matter which browser is used to access content on the I2P Network?

Maybe one can mention that you can turn off the automatic opening of a browser after I2P has started. I personally find it annoying, for example.

Cannot reach I2P sites:

Maybe you can write out I2PIPB (-> I2P In Private Browsing) once and link to https://addons.mozilla.org/en-US/firefox/addon/i2p-in-private-browsing/. Personally, I2PIPB did not mean anything to me at the beginning, for example.

shared clients

Personally, it would mean more to me if it said "The status at I2P HTTP Proxy is green light" shared clients is again a concept that needs to be understood first.

http://identiguy.i2p/

notbob put it quite well in his blog. identiguy.i2p looks a bit like it was set up a few years ago and then forgotten. For example, you can't submit new eepsites. I would therefore remove the link and perhaps point to reg.i2p as this is still actively managed.

I2P Name Registries

stats.i2p is missing. Should inr.i2p still be there. I am not sure how far this page is still maintained. I think I would leave it there for now.

Tutorials

These are very specified tutorials. Maybe we can make a list of tutorials on geti2p.net?! However, I think that something like this does not belong in the sidelist of Reddit.

zzz zzz's personal website, old developers forum

why 'old'?

Inside I2P - (http://git.idk.i2p)

Git as a heading is missing. Maybe still link somewhere to the Clearnet Git SSH note:

Your ~/.ssh/config should reflect that i2pgit uses port 8022 for git ssh

Host i2pgit.org
  Port 8022
marek22k commented 1 year ago

For the reddit sidebar: Should "Cousin of R2D2" remain as a subtitle? I think that would be nice.

https://inv.riverside.rocks/channel/UCwrsP7TMdw3AS-hHQutF1_Q is currently linked. Is that still up to date? The last video is 10 years old.

IRC was not mentioned in the sidebar. Some seem to be enthusiastic about it. Is there meanwhile again a bridge to the Clearnet IRC from libera or hackint?

You can display a message to users who post in the subreddit for the first time. Currently this is the following:

Thank you for your interest in contributing to the I2P community.

Please note the rules. Only posts that are related or relevant to I2P are welcome in this subreddit. Duplicate posts will be removed. If you need help or have a question, please search for it before posting!

I would suggest that we then link to the FAQ post.

Shoalsteed commented 1 year ago

For the reddit sidebar: Should "Cousin of R2D2" remain as a subtitle? I think that would be nice.

https://inv.riverside.rocks/channel/UCwrsP7TMdw3AS-hHQutF1_Q is currently linked. Is that still up to date? The last video is 10 years old.

IRC was not mentioned in the sidebar. Some seem to be enthusiastic about it. Is there meanwhile again a bridge to the Clearnet IRC from libera or hackint?

Re: tutorials I would remove it. For IRC: Irc2P (works out of the box) - this is listed, should we change it?

Shoalsteed commented 1 year ago

"Cousin of R2D2" is nice - keep!

marek22k commented 1 year ago
  • I2Pd does not require Java. It’s written in C++.

Is this a disadvantage/advantage? I would rephrase it to "I2Pd is written in C++ and Java I2P is written in Java".

  • I2Pd consumes less memory and CPU.

I have not made any measurements, but as far as memory is concerned, I can say that Java I2P on Debian does not need much (about as much as I2Pd). Furthermore, you can set the maximum on Debian. I would still leave it as C++ is generally more performant.

  • I2Pd can be compiled everywhere gcc or clang presented (including Raspberry and routers).

Is this important for an average user to know? Does one compile oneself I2Pd or Java I2P?

  • I2Pd has some major optimizations for faster cryptography which leads to less consumption of processor time and energy.

This is similar to "I2Pd consumes less memory and CPU."

Shoalsteed commented 1 year ago

How to Connect to the I2P Network

The core software (Java) includes a router that introduces and maintains a connection with the network. It also provides a handful of applications and configuration options to get you started and personalize your experience. I2Pd is a C++ implementation of the I2P protocol. When using I2Pd you will need to edit configuration files, with Java I2P you can do it all via GUI.

How to Connect to the I2P Network

"The core software (Java) includes a router that introduces and maintains a connection with the network. It also provides a handful of applications and configuration options to get you started and personalize your experience. I2Pd is a C++ implementation of the I2P protocol. When using I2Pd you will need to edit configuration files, with Java I2P you can do it all via GUI."

marek22k commented 1 year ago

Does everyone know what GUI means? I don't know how common this term is in English. In Germany, I would say, almost no one knows it.

Shoalsteed commented 1 year ago

Does everyone know what GUI means? I don't know how common this term is in English. In Germany, I would say, almost no one knows it.

How about "user interface"?

marek22k commented 1 year ago

I would say web interface, but user interface is good too.

marek22k commented 1 year ago

Which "Desgin" should the headlines have? I have removed the colons. For example, "I Can See My IP Address" has every first letter capitalized, which I think is nice. This is not the case for the other headings. I think it looks better when it's consistent.

Shoalsteed commented 1 year ago

Is Using I2P Dangerous? The I2P network is an overlay network. There are no dangers in using an overlay network. If you are engaging activities that are illegal or dangerous on the internet, that does not change if you are using an overlay network.

Regarding using overlay networks, the Java implementation includes a "Strict Countries List" that is used to decide how I2P routers should behave within regions where applications like I2P may be limited by law. For example, while no countries that we know of prohibit using I2P, some have broad prohibitions on participating in routing for others. Routers that appear to be in the "Strict" countries will automatically be placed into "Hidden" mode.

When a router is placed into hidden mode, three key things change about its behavior. It will no longer publish a routerInfo to the NetDB, it will no longer accept participating tunnels, and it will reject direct connections to routers in the same country that it is in. These defenses make the routers more difficult to enumerate reliably, and prevent them from running afoul of restrictions on routing traffic for others.

Shoalsteed commented 1 year ago

Which "Desgin" should the headlines have? I have removed the colons. For example, "I Can See My IP Address" has every first letter capitalized, which I think is nice. This is not the case for the other headings. I think it looks better when it's consistent.

Agree.

Shoalsteed commented 1 year ago

I Found A Bug!

I2P Core Java Software, clearnet https://i2pgit.org/i2p-hackers/i2p.i2p I2P Core Java Software, I2P Network http://git.idk.i2p/i2p-hackers/i2p.i2p Android, clearnet https://i2pgit.org/i2p-hackers/i2p.android.base Android, I2P Network http://git.idk.i2p/i2p-hackers/i2p.android.base I2P Firefox profile + Freestanding Jpackage(Easy-install), clearnet https://i2pgit.org/i2p-hackers/i2p.firefox I2P Firefox profile + Freestanding Jpackage(Easy-install), I2P Network http://git.idk.i2p/i2p-hackers/i2p.firefox Certified DMG + Freestanding Jpackage(Easy-install Mac), clearnet https://i2pgit.org/i2p-hackers/i2p-jpackage-mac Certified DMG + Freestanding Jpackage(Easy-install Mac), I2P Network http://git.idk.i2p/i2p-hackers/i2p-jpackage-mac

There is also a .onion endpoint: http://47ggr2fa3vnwfyhvgskzdmr3i32eijwymxohtxsls45dulmriwxszjad.onion/

marek22k commented 1 year ago

To access the I2P network you need to use software. The software sits at layer seven of the OSI model, so no, a MAC address is not visible.

Mentioning the ISO-OSI model can be confusing for non-technical people. Instead, one could simply write that I2P does not work on the hardware level and therefore has nothing to do with MAC addresses.

What about:

The I2P router operates on a software layer (layer 7 in the ISO-OSI model). MAC addresses are used on a hardware layer (layer 2 in the ISO-OSI model). I2P therefore has no influence or access to MAC addresses. Therefore, MAC addresses are not distributed in I2P.

Shoalsteed commented 1 year ago

@marek22k Here is the FAQ I have created in markdown. FAQ.txt

marek22k commented 1 year ago

We can remove dns.chudo.i2p (see https://github.com/wipedlifepotato/dns.chudo.i2p/issues/2).