Package | Description |
---|---|
net.i2p.data.router |
Classes formerly in net.i2p.data but moved here as they are only used by the router.
|
net.i2p.router |
The I2P router application handles the I2P network communication.
|
net.i2p.router.transport |
The transport system allows the usage of communication layers that are below I2P in the stack, on which I2P messages are sent.
|
net.i2p.router.transport.ntcp |
The NTCP transport allows passing I2P messages on top of TCP.
|
net.i2p.router.transport.udp |
The UDP transport (also known as 'SSU transport') allows passing I2P messages on top of UDP.
|
net.i2p.router.web.helpers |
Helpers and handlers for the router console user interface,
with these classes supporting the webapp in routerconsole.war.
|
Modifier and Type | Method and Description |
---|---|
RouterAddress |
RouterInfo.getTargetAddress(String transportStyle)
Pull the first workable target address for the given transport.
|
Modifier and Type | Method and Description |
---|---|
Collection<RouterAddress> |
RouterInfo.getAddresses()
Retrieve the set of RouterAddress structures at which this
router can be contacted.
|
List<RouterAddress> |
RouterInfo.getTargetAddresses(String transportStyle)
For multiple addresses per-transport (IPv4 or IPv6)
|
List<RouterAddress> |
RouterInfo.getTargetAddresses(String transportStyle1,
String transportStyle2)
For multiple addresses per-transport (IPv4 or IPv6)
Return addresses matching either of two styles
|
Modifier and Type | Method and Description |
---|---|
boolean |
RouterAddress.deepEquals(RouterAddress addr)
Everything, including Transport, host, port, options, and cost
|
Modifier and Type | Method and Description |
---|---|
void |
RouterInfo.setAddresses(Collection<RouterAddress> addresses)
Specify a set of RouterAddress structures at which this router
can be contacted.
|
Modifier and Type | Method and Description |
---|---|
List<RouterAddress> |
CommSystemFacade.createAddresses()
Create the list of RouterAddress structures based on the router's config
|
Modifier and Type | Method and Description |
---|---|
void |
CommSystemFacade.notifyRemoveAddress(RouterAddress address)
Tell other transports our address changed
|
void |
CommSystemFacade.notifyReplaceAddress(RouterAddress address)
Tell other transports our address changed
|
Modifier and Type | Method and Description |
---|---|
RouterAddress |
Transport.getCurrentAddress(boolean ipv6)
What address are we currently listening to?
Replaces getCurrentAddress()
Note: An address without a host is considered IPv4.
|
RouterAddress |
TransportImpl.getCurrentAddress(boolean ipv6)
What address are we currently listening to?
Replaces getCurrentAddress()
Note: An address without a host is considered IPv4.
|
Modifier and Type | Method and Description |
---|---|
List<RouterAddress> |
CommSystemFacadeImpl.createAddresses() |
(package private) List<RouterAddress> |
TransportManager.getAddresses()
This forces a rebuild
|
List<RouterAddress> |
Transport.getCurrentAddresses()
What addresses are we currently listening to?
Replaces getCurrentAddress()
|
List<RouterAddress> |
TransportImpl.getCurrentAddresses()
What addresses are we currently listening to?
Replaces getCurrentAddress()
|
List<RouterAddress> |
TransportImpl.getTargetAddresses(RouterInfo target)
Get all available address we can use,
shuffled and then sorted by cost/preference.
|
List<RouterAddress> |
Transport.updateAddress()
Ask the transport to update its addresses based on current information and return them
|
List<RouterAddress> |
TransportImpl.updateAddress()
Ask the transport to update its address based on current information and return it
Transports should override.
|
Modifier and Type | Method and Description |
---|---|
static AddressType |
TransportUtil.getType(RouterAddress addr) |
static boolean |
TransportUtil.isIPv6(RouterAddress addr)
Addresses without a host (i.e.
|
static boolean |
TransportUtil.isYggdrasil(RouterAddress addr) |
void |
CommSystemFacadeImpl.notifyRemoveAddress(RouterAddress address)
Tell other transports our address changed
|
void |
CommSystemFacadeImpl.notifyReplaceAddress(RouterAddress udpAddr)
UDP changed addresses, tell NTCP and restart
All the work moved to NTCPTransport.externalAddressReceived()
|
protected void |
TransportImpl.removeAddress(RouterAddress address)
Remove only this address.
|
protected void |
TransportImpl.replaceAddress(RouterAddress address)
Replace any existing addresses for the current transport
with the same IP length (4 or 16) with the given one.
|
Modifier and Type | Method and Description |
---|---|
RouterAddress |
NTCPConnection.getRemoteAddress()
Only valid for outbound; null for inbound
|
Constructor and Description |
---|
NTCPConnection(RouterContext ctx,
NTCPTransport transport,
RouterIdentity remotePeer,
RouterAddress remAddr,
int version)
Create an outbound unconnected NTCP connection.
|
Modifier and Type | Method and Description |
---|---|
(package private) static RouterAddress |
PeerTestManager.getAddress(List<RouterAddress> addrs,
boolean isIPv6)
Get an address out of a list of addresses.
|
RouterAddress |
UDPTransport.getCurrentExternalAddress(boolean isIPv6)
Simple fetch of stored IP and port, since
we don't put them in the real, published RouterAddress anymore
if we are firewalled.
|
(package private) RouterAddress |
UDPTransport.getTargetAddress(RouterInfo target)
Get first available address we can use.
|
Modifier and Type | Method and Description |
---|---|
List<RouterAddress> |
UDPTransport.updateAddress()
Rebuild to get updated cost and introducers.
|
Modifier and Type | Method and Description |
---|---|
(package private) static SessionKey |
PeerTestManager.getIntroKey(RouterAddress ra)
Get an intro key out of an address.
|
(package private) int |
UDPTransport.getSSUVersion(RouterAddress addr)
Get the valid SSU version of Bob's SSU address
for our outbound connections as Alice.
|
int |
IntroductionManager.pickInbound(RouterAddress current,
boolean ipv6,
Properties ssuOptions,
int howMany)
Grab a bunch of peers who are willing to be introducers for us that
are locally known (duh) and have published their own SSU address (duh^2).
|
protected void |
UDPTransport.removeAddress(RouterAddress address)
Remove then tell NTCP that we changed.
|
protected void |
UDPTransport.replaceAddress(RouterAddress address)
Replace then tell NTCP that we changed.
|
Modifier and Type | Method and Description |
---|---|
(package private) static RouterAddress |
PeerTestManager.getAddress(List<RouterAddress> addrs,
boolean isIPv6)
Get an address out of a list of addresses.
|
Constructor and Description |
---|
OutboundEstablishState2(RouterContext ctx,
UDPTransport transport,
RemoteHostId claimedAddress,
RemoteHostId remoteHostId,
RouterIdentity remotePeer,
boolean needIntroduction,
SessionKey introKey,
RouterAddress ra,
UDPAddress addr)
Prepare to start a new handshake with the given peer.
|
UDPAddress(RouterAddress addr) |
Modifier and Type | Method and Description |
---|---|
int |
NetDbRenderer.RAComparator.compare(RouterAddress l,
RouterAddress r) |