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.
 
 
 
 
 
Meeh 662e4161b0 Save/Load router.info/router.key from data directory 11 years ago
Win32 fix windows build, add windows GetDefaultDataDir, add files to project 11 years ago
.gitignore Updating Makefile to collect build objects in a folder 11 years ago
CryptoConst.h make sure crypto consts get initialized first 11 years ago
ElGamal.h replaced ElGamalEncrypt to ElGamalEncryption 11 years ago
Garlic.cpp replaced ElGamalEncrypt to ElGamalEncryption 11 years ago
Garlic.h replaced ElGamalEncrypt to ElGamalEncryption 11 years ago
HTTPServer.cpp use ElGamalEcryption for garlic encryption 11 years ago
HTTPServer.h process b32 address with path 11 years ago
I2NPProtocol.cpp replaced ElGamalEncrypt to ElGamalEncryption 11 years ago
I2NPProtocol.h SSU send message 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 update 11 years ago
Identity.h replaced ElGamalEncrypt to ElGamalEncryption 11 years ago
LICENSE Initial commit 11 years ago
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 and queue added 11 years ago
Log.h Log and queue added 11 years ago
Makefile UPnP added 11 years ago
NTCPSession.cpp fixed crash 11 years ago
NTCPSession.h always pass delivery instructions to tunnel gateway 11 years ago
NetDb.cpp use ElGamalEcryption for garlic encryption 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 Save/Load router.info/router.key from data directory 11 years ago
RouterContext.h external IP detection 11 years ago
RouterInfo.cpp establish SSU session through relay 11 years ago
RouterInfo.h establish SSU session through relay 11 years ago
SSU.cpp establish SSU session through relay 11 years ago
SSU.h establish SSU session through relay 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 ms visual studio 2013 support 11 years ago
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 fixed crash 11 years ago
Transports.h external IP detection 11 years ago
Tunnel.cpp always pass delivery instructions to tunnel gateway 11 years ago
Tunnel.h pass delivery intructions to tunnel gateway 11 years ago
TunnelBase.h send multiple messages 11 years ago
TunnelConfig.h fixed incorrect memory access 11 years ago
TunnelEndpoint.cpp send multiple messages 11 years ago
TunnelEndpoint.h cumulative update 11 years ago
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 Adding volatile keyword 11 years ago
util.cpp fix windows build, add windows GetDefaultDataDir, add files to project 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.