I2PTunnel is a tool for interfacing with and providing services on I2P. Destination of an I2PTunnel can be defined using a hostname, Base32, or a full 516-byte destination key. An established I2PTunnel will be available on your client machine as localhost:port. If you wish to provide a service on I2P network, you simply create I2PTunnel to the appropriate ip_address:port. A corresponding 516-byte destination key will be generated for the service and it will become avaliable throughout I2P. A web interface for I2PTunnel management is avaliable on localhost:7657/i2ptunnel/.
- I2P Webserver - A tunnel pointed to a Jetty webserver run
on localhost:7658 for convenient and quick hosting on I2P.
The document root is:
Unix - %APPDATA%\I2P\eepsite\docroot
Windows - C:\Users\**username**\AppData\Roaming\I2P\eepsite\docroot
- I2P HTTP Proxy - localhost:4444 - A HTTP proxy used for browsing I2P and the regular internet anonymously through I2P. Browsing internet through I2P uses a random proxy specified by the "Outproxies:" option.
- Irc2P - localhost:6668 - An IRC tunnel to the default anonymous IRC network, Irc2P.
- mtn.i2p2.i2p - localhost:8998 - The anonymous monotone sourcecode repository for I2P
- smtp.postman.i2p - localhost:7659 - A SMTP service provided by postman at hq.postman.i2p.us
- pop3.postman.i2p - localhost:7660 - The accompanying POP sevice of postman at hq.postman.i2p.us
Opens a local TCP port that connects to a service (like HTTP, FTP or SMTP) on a destination inside of I2P. The tunnel is directed to a random host from the comma seperated (", ") list of destinations.
A HTTP-client tunnel. The tunnel connects to the destination specified by the URL in a HTTP request. Supports proxying onto internet if an outproxy is provided. Strips HTTP connections of the following headers:
- Accept, Accept-Charset, Accept-Encoding, Accept-Language and Accept-Ranges as they vary greatly between browsers and can be used as an identifier.
HTTP client/server tunnels are via I2Ptunnel force-enabling compression via the following http headers:
- X-Accept-Encoding: x-i2p-gzip;q=1.0, identity;q=0.5, deflate;q=0, gzip;q=0, *;q=0
Depending on if the tunnel is using an outproxy or not it will append the following User-Agent:
- Outproxy: User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:18.104.22.168) Gecko/20100625 Firefox/3.6.6
- Internal I2P use: User-Agent: MYOB/6.66 (AN/ON)
Creates a connection to a random IRC server specified by the comma seprated (", ")
list of destinations. Only a whitelisted subset of IRC commands are allowed due to anonymity concerns.
Enables using the I2P router as a SOCKS proxy.
Enables using the I2P router as a SOCKS proxy with the command whitelist specified by IRC client mode.
Creates a HTTP tunnel and uses the HTTP request method "CONNECT" to build a TCP tunnel that usually is used for SSL and HTTPS.
Creates a UDP-server attached to a Streamr client I2PTunnel. The streamr client tunnel will subscribe to a streamr server tunnel.
Creates a destination to a local ip:port with an open TCP port.
Creates a destination to a local HTTP server ip:port. Supports gzip for requests with Accept-encoding: x-i2p-gzip, replies with Content-encoding: x-i2p-gzip in such a request.
Functions as both a I2PTunnel HTTP Server, and a I2PTunnel HTTP client with no outproxying capabilities. An example application would be a web application that does client-type requests, or loopback-testing an eepsite as a diagnostic tool.
Creates a destination that filters the reqistration sequence of a client and passes the clients destination key as a hostname to the IRC-server.
A UDP-client that connects to a media server is created. The UDP-Client is coupled with a Streamr server I2PTunnel.