I2P: End-to-End encrypted and anonymous Internet https://i2pd.website/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
chertov 7f26296759 adding files to а VS project, showed external ip on statistics page 11 years ago
Win32 adding files to а VS project, showed external ip on statistics page 11 years ago
.gitignore Updating Makefile to collect build objects in a folder 11 years ago
CryptoConst.h
ElGamal.h replaced ElGamalEncrypt to ElGamalEncryption 11 years ago
Garlic.cpp handle garlic message in separate thread 11 years ago
Garlic.h handle garlic message in separate thread 11 years ago
HTTPServer.cpp adding files to а VS project, showed external ip on statistics page 11 years ago
HTTPServer.h process b32 address with path 11 years ago
I2NPProtocol.cpp inbound tunnel where an I2NP messages has been received from 11 years ago
I2NPProtocol.h inbound tunnel where an I2NP messages has been received from 11 years ago
I2PEndian.cpp fix LittleEndian, change endian.h version 11 years ago
I2PEndian.h fix LittleEndian, change endian.h version 11 years ago
Identity.cpp
Identity.h replaced ElGamalEncrypt to ElGamalEncryption 11 years ago
LICENSE
LeaseSet.cpp pick most recent tunnel from LeaseSet 11 years ago
LeaseSet.h pick most recent tunnel from LeaseSet 11 years ago
LittleBigEndian.h fix LittleEndian, change endian.h version 11 years ago
Log.cpp
Log.h
Makefile UPnP added 11 years ago
NTCPSession.cpp inbound tunnel where an I2NP messages has been received from 11 years ago
NTCPSession.h always pass delivery instructions to tunnel gateway 11 years ago
NetDb.cpp inbound tunnel where an I2NP messages has been received from 11 years ago
NetDb.h subscribe to LeaseSet 11 years ago
Queue.h Adding volatile keyword 11 years ago
README.md Log to file, reload config and daemon mode 11 years ago
Reseed.cpp Fixing reseed 11 years ago
Reseed.h fixed compilation error in gcc 4.6 11 years ago
RouterContext.cpp enable SSU 11 years ago
RouterContext.h create SSU address 11 years ago
RouterInfo.cpp create tunnel through any type of transports 11 years ago
RouterInfo.h create SSU address 11 years ago
SSU.cpp inbound tunnel where an I2NP messages has been received from 11 years ago
SSU.h print direction of SSU session 11 years ago
Streaming.cpp use ElGamalEcryption for garlic encryption 11 years ago
Streaming.h use ElGamalEcryption for garlic encryption 11 years ago
Timestamp.h
TransitTunnel.cpp always pass delivery instructions to tunnel gateway 11 years ago
TransitTunnel.h pass delivery intructions to tunnel gateway 11 years ago
Transports.cpp inbound tunnel where an I2NP messages has been received from 11 years ago
Transports.h show SSU sessions 11 years ago
Tunnel.cpp inbound tunnel where an I2NP messages has been received from 11 years ago
Tunnel.h pass delivery intructions to tunnel gateway 11 years ago
TunnelBase.h
TunnelConfig.h
TunnelEndpoint.cpp inbound tunnel where an I2NP messages has been received from 11 years ago
TunnelEndpoint.h
TunnelGateway.cpp always pass delivery instructions to tunnel gateway 11 years ago
TunnelGateway.h always pass delivery instructions to tunnel gateway 11 years ago
UPnP.cpp UPnP added 11 years ago
UPnP.h UPnP added 11 years ago
base64.cpp use base64 alphabet directly 11 years ago
base64.h use base64 alphabet directly 11 years ago
hmac.h eliminate unnecessary const_cast 11 years ago
i2p.cpp handle garlic message in separate thread 11 years ago
util.cpp don't call mapArgs from GetDataDir because it's not initialized yet 11 years ago
util.h Should fix compilation error on some systems 11 years ago

README.md

i2pd

i2p router for Linux written on C++

Requires gcc 4.6 and higher, boost 1.46 and higher, crypto++

on Windows

Requires msvs2013, boost 1.46 and higher, crypto++

Testing

First, build it.

  • $ cd i2pd
  • $ make

Next, find out your public ip. (find it for example at http://www.whatismyip.com/)

Then, run it with:

$ ./i2p --host=YOUR_PUBLIC_IP

The client should now reseed by itself.

To visit an I2P page, you need to find the b32 address of your destination. After that, go to the webconsole and add it behind the url. (Remove http:// and b32.i2p from the address)

This should resulting in for example: http://localhost:7070/4oes3rlgrpbkmzv4lqcfili23h3cvpwslqcfjlk6vvguxyggspwa

Options

  • --host= - The external IP
  • --port= - The port to listen on
  • --httpport= - The http port to listen on
  • --log= - Enable or disable logging to file. 1 for yes, 0 for no.
  • --daemon= - Eanble or disable daemon mode. 1 for yes, 0 for no.