source: apps/routerconsole/jsp/config.jsp @ 807f0665

Last change on this file since 807f0665 was 807f0665, checked in by zzz <zzz@…>, 12 years ago


  • Property mode set to 100644
File size: 11.1 KB
1<%@page contentType="text/html" %>
2<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
5<title>I2P Router Console - config networking</title>
6<link rel="stylesheet" href="default.css" type="text/css" />
9<%@include file="nav.jsp" %>
10<%@include file="summary.jsp" %>
12<jsp:useBean class="net.i2p.router.web.ConfigNetHelper" id="nethelper" scope="request" />
13<jsp:setProperty name="nethelper" property="contextId" value="<%=(String)session.getAttribute("i2p.contextId")%>" />
15<div class="main" id="main">
16 <%@include file="confignav.jsp" %>
18 <jsp:useBean class="net.i2p.router.web.ConfigNetHandler" id="formhandler" scope="request" />
19 <jsp:setProperty name="formhandler" property="*" />
20 <jsp:setProperty name="formhandler" property="contextId" value="<%=(String)session.getAttribute("i2p.contextId")%>" />
21 <font color="red"><jsp:getProperty name="formhandler" property="errors" /></font>
22 <i><jsp:getProperty name="formhandler" property="notices" /></i>
24 <form action="config.jsp" method="POST">
25 <% String prev = System.getProperty("net.i2p.router.web.ConfigNetHandler.nonce");
26    if (prev != null) System.setProperty("net.i2p.router.web.ConfigNetHandler.noncePrev", prev);
27    System.setProperty("net.i2p.router.web.ConfigNetHandler.nonce", new java.util.Random().nextLong()+""); %>
28 <input type="hidden" name="nonce" value="<%=System.getProperty("net.i2p.router.web.ConfigNetHandler.nonce")%>" />
29 <input type="hidden" name="action" value="blah" />
31 <b>Bandwidth limiter</b><br />
32 Inbound rate:
33    <input name="inboundrate" type="text" size="2" value="<jsp:getProperty name="nethelper" property="inboundRate" />" /> KBps
34 bursting up to
35    <input name="inboundburstrate" type="text" size="2" value="<jsp:getProperty name="nethelper" property="inboundBurstRate" />" /> KBps for
36    <jsp:getProperty name="nethelper" property="inboundBurstFactorBox" /><br />
37 Outbound rate:
38    <input name="outboundrate" type="text" size="2" value="<jsp:getProperty name="nethelper" property="outboundRate" />" /> KBps
39 bursting up to
40    <input name="outboundburstrate" type="text" size="2" value="<jsp:getProperty name="nethelper" property="outboundBurstRate" />" /> KBps for
41  <jsp:getProperty name="nethelper" property="outboundBurstFactorBox" /><br />
42 <i>KBps = kilobytes per second = 1024 bytes per second = 8192 bits per second.<br />
43    A negative rate sets the default.</i><br />
44 Bandwidth share percentage:
45   <jsp:getProperty name="nethelper" property="sharePercentageBox" /><br />
46 <% int share = nethelper.getShareBandwidth();
47    if (share < 12) {
48        out.print("<b>NOTE</b>: You have configured I2P to share only " + share + "KBps. ");
49        out.print("I2P requires at least 12KBps to enable sharing. ");
50        out.print("Please enable sharing (participating in tunnels) by configuring more bandwidth. ");
51        out.print("It improves your anonymity by creating cover traffic, and helps the network.<br />");
52    } else {
53        out.print("You have configured I2P to share " + share + "KBps. ");
54        out.print("The higher the share bandwidth the more you improve your anonymity and help the network.<br />");
55    }
56 %>
57 <p>
58 <input type="submit" name="save" value="Save changes" /> <input type="reset" value="Cancel" /><br />
59 <hr />
61 <b>Enable load testing: </b>
62<input type="checkbox" name="enableloadtesting" value="true" <jsp:getProperty name="nethelper" property="enableLoadTesting" /> />
63 <p>If enabled, your router will periodically anonymously probe some of your peers
64 to see what sort of throughput they can handle.  This improves your router's ability
65 to pick faster peers, but can cost substantial bandwidth.  Relevant data from the
66 load testing is fed into the profiles as well as the
67 <a href="oldstats.jsp#test.rtt">test.rtt</a> and related stats.</p>
68 <hr />
70 <b>External UDP address:</b> <i><jsp:getProperty name="nethelper" property="udpAddress" /></i><br />
71 <b>Require SSU introductions? </b>
72<input type="checkbox" name="requireIntroductions" value="true" <jsp:getProperty name="nethelper" property="requireIntroductionsChecked" /> /><br />
73 <p>If you can, please poke a hole in your NAT or firewall to allow unsolicited UDP packets to reach
74    you on your external UDP address.  If you can't, I2P now includes supports UDP hole punching
75    with "SSU introductions" - peers who will relay a request from someone you don't know to your
76    router for your router so that you can make an outbound connection to them.  I2P will use these
77    introductions automatically if it detects that the port is not forwarded (as shown by
78    the <i>Status: Firewalled</i> line), or you can manually require them here. 
79    Users behind symmetric NATs, such as OpenBSD's pf, are not currently supported.</p>
80<input type="submit" name="recheckReachability" value="Check network reachability..." />
81 <hr />
82 <b>Inbound TCP connection configuration:</b><br />
83 Externally reachable hostname or IP address:
84    <input name ="ntcphost" type="text" size="16" value="<jsp:getProperty name="nethelper" property="ntcphostname" />" />
85    (dyndns and the like are fine)<br />
86    OR use IP address detected by SSU
87    (currently <jsp:getProperty name="nethelper" property="udpIP" />)?
88    <input type="checkbox" name="ntcpAutoIP" value="true" <jsp:getProperty name="nethelper" property="tcpAutoIPChecked" /> /><br />
89 <p>
90 Externally reachable TCP port:
91    <input name ="ntcpport" type="text" size="6" value="<jsp:getProperty name="nethelper" property="ntcpport" />" /><br />
92    OR use the same port configured for SSU
93    (currently <jsp:getProperty name="nethelper" property="udpPort" />)?
94    <input type="checkbox" name="ntcpAutoPort" value="true" <jsp:getProperty name="nethelper" property="tcpAutoPortChecked" /> /><br />
95 <p>A hostname entered here will be published in the network database.
96    It is <b>not private</b>.
97    Also, <b>do not enter a private IP address</b> like or
98 </p>
99 <p>You do <i>not</i> need to allow inbound TCP connections - outbound connections work with no
100    configuration.  However, if you want to receive inbound TCP connections, you <b>must</b> poke a hole
101    in your NAT or firewall for unsolicited TCP connections.  If you specify the wrong IP address or
102    hostname, or do not properly configure your NAT or firewall, your network performance will degrade
103    substantially.  When in doubt, leave the hostname and port number blank.</p>
104 <p><b>Note: changing any of these settings will terminate all of your connections and effectively
105    restart your router.</b>
106 </p>
107 <input type="submit" name="save" value="Save changes" /> <input type="reset" value="Cancel" /><br />
108 <hr />
109 <b><a name="help">Reachability Help:</a></b>
110 <p>
111 While I2P will work adequately behind a firewall, your speeds and network integration will generally improve
112 if you open up your port (generally 8887) to both UDP and TCP, and enable inbound TCP above.
113 If you think you have opened up your firewall and I2P still thinks you are firewalled, remember
114 that you may have multiple firewalls, for example both software packages and external hardware routers.
115 <ul>
116 <li><b>OK</b> - Your UDP port does not appear to be firewalled.
117 <li><b>Firewalled</b> - Your UDP port appears to be firewalled.
118     As the firewall detection methods are not 100% reliable, this may occasionally be displayed in error.
119     However, if it appears consistently, you should check whether both your external and internal
120     firewalls are open on port 8887.
121 <li><b>Testing</b> - The router is currently testing whether your UDP port is firewalled.
122 <li><b>Hidden</b> - The router is not configured to publish its address,
123     therefore it does not expect incoming connections.
124 <li><b>WARN - Firewalled and Fast</b> - You have configured I2P to share more than 128KBps of bandwidth,
125     but you are firewalled. While I2P will work fine in this configuration, if you really have
126     over 128KBps of bandwidth to share, it will be much more helpful to the network if
127     you open your firewall.
128 <li><b>WARN - Firewalled and Floodfill</b> - You have configured I2P to be a floodfill router, but
129     you are firewalled. For best participation as a floodfill router, you should open your firewall.
130 <li><b>WARN - Firewalled with Inbound TCP Enabled</b> - You have configured inbound TCP, however
131     your UDP port is firewalled, and therefore it is likely that your TCP port is firewalled as well.
132     If your TCP port is firewalled with inbound TCP enabled, routers will not be able to contact
133     you via TCP, which will hurt the network. Please open your firewall or disable inbound TCP above.
134 <li><b>WARN - Firewalled with UDP Disabled</b> -
135     You have configured inbound TCP, however
136     you have disabled UDP. You appear to be firewalled on TCP, therefore your router cannot
137     accept inbound connections.
138     Please open your firewall or enable UDP.
139 <li><b>ERR - Clock Skew</b> - Your system's clock is skewed, which will make it difficult
140     to participate in the network. Correct your clock setting if this error persists.
141 <li><b>ERR - Private TCP Address</b> - You must never advertise an unroutable IP address such as
142 or as your external address. Correct the address or disable inbound TCP above.
143 <li><b>ERR - SymmetricNAT</b> - I2P detected that you are firewalled by a Symmetric NAT.
144     I2P does not work behind this type of firewall.
145 <li><b>ERR - UDP Port In Use - Set i2np.udp.internalPort=xxxx in advanced config and restart</b> -
146     I2P was unable to bind to port 8887 or other configured port.
147     Check to see if another program is using port 8887. If so, stop that program or configure
148     I2P to use a different port. This may be a transient error, if the other program is no longer
149     using the port. However, a restart is always required after this error.
150 <li><b>ERR - UDP Disabled and Inbound TCP host/port not set</b> -
151     You have not configured inbound TCP with a hostname and port above, however
152     you have disabled UDP. Therefore your router cannot accept inbound connections.
153     Please configure a TCP host and port above or enable UDP.
154 </ul>
155 </p>
156 <hr />
158 <b>Dynamic Router Keys: </b>
159 <input type="checkbox" name="dynamicKeys" value="true" <jsp:getProperty name="nethelper" property="dynamicKeysChecked" /> /><br />
160 <p>
161 This setting causes your router identity to be regenerated every time your IP address
162 changes. If you have a dynamic IP this option can speed up your reintegration into
163 the network (since people will have shitlisted your old router identity), and, for
164 very weak adversaries, help frustrate trivial
165 <a href="">intersection
166 attacks</a> against the NetDB.  Your different router identities would only be
167 'hidden' among other I2P users at your ISP, and further analysis would link
168 the router identities further.</p>
169 <p>Note that when I2P detects an IP address change, it will automatically
170 initiate a restart in order to rekey and to disconnect from peers before they
171 update their profiles - any long lasting client connections will be disconnected,
172 though such would likely already be the case anyway, since the IP address changed.
173 </p>
174 <hr />
176 </form>
Note: See TracBrowser for help on using the repository browser.