forked from I2P_Developers/i2p.i2p
UPnP: IPv6 part 10
Enable IPv6 by default Don't force listen sockets to IPv4 only
This commit is contained in:
22
history.txt
22
history.txt
@ -1,4 +1,26 @@
|
||||
2021-03-02 zzz
|
||||
* UPnP:
|
||||
- Limit event subscription time
|
||||
- Subscribe to IPv6 service also
|
||||
|
||||
2021-03-01 zzz
|
||||
* UPnP:
|
||||
- Fix mappings not being renewed before expiration
|
||||
- IPv6 port forwarding fixes
|
||||
- Continue to forward deprecated addresses for a while
|
||||
|
||||
2021-02-28 zzz
|
||||
* SSU: Fix set of states requiring address confirmation
|
||||
* UPnP:
|
||||
- Add support for IPv6 firewall addresses
|
||||
- Add support for forwarding IPv6 addresses
|
||||
|
||||
2021-02-27 zzz
|
||||
* UPnP: Move IPv6 checks from Parser to ControlPoint
|
||||
|
||||
2021-02-25 zzz
|
||||
* NetDB: Fix NPE validating expired blinded LS2
|
||||
* NTCP: Don't publish IP at startup when configured as firewalled
|
||||
* SSU: Enable RelayRequest over IPv6
|
||||
* Transports: Adjust conn limits for some platforms
|
||||
|
||||
|
@ -18,7 +18,7 @@ public class RouterVersion {
|
||||
/** deprecated */
|
||||
public final static String ID = "Git";
|
||||
public final static String VERSION = CoreVersion.VERSION;
|
||||
public final static long BUILD = 3;
|
||||
public final static long BUILD = 4;
|
||||
|
||||
/** for example "-test" */
|
||||
public final static String EXTRA = "";
|
||||
|
@ -87,8 +87,8 @@ public class TransportManager implements TransportEventListener {
|
||||
public final static String PROP_ENABLE_NTCP = "i2np.ntcp.enable";
|
||||
/** default true */
|
||||
public final static String PROP_ENABLE_UPNP = "i2np.upnp.enable";
|
||||
/** default false for now */
|
||||
public final static String PROP_ENABLE_UPNP_IPV6 = "i2np.upnp.ipv6.enable";
|
||||
public static final boolean DEFAULT_ENABLE_UPNP_IPV6 = true;
|
||||
private static final String PROP_JAVA_PROXY1 = "socksProxyHost";
|
||||
private static final String PROP_JAVA_PROXY2 = "java.net.useSystemProxies";
|
||||
private static final String PROP_JAVA_PROXY3 = "http.proxyHost";
|
||||
@ -813,7 +813,7 @@ public class TransportManager implements TransportEventListener {
|
||||
// ipv4
|
||||
rv.add(new Port(t.getStyle(), port));
|
||||
// ipv6
|
||||
if (_context.getBooleanProperty(PROP_ENABLE_UPNP_IPV6)) {
|
||||
if (_context.getProperty(PROP_ENABLE_UPNP_IPV6, DEFAULT_ENABLE_UPNP_IPV6)) {
|
||||
RouterAddress ra = t.getCurrentAddress(true);
|
||||
if (ra == null) {
|
||||
if (t.getStyle().equals(UDPTransport.STYLE)) {
|
||||
|
@ -71,9 +71,10 @@ class UPnPManager {
|
||||
_context = context;
|
||||
_manager = manager;
|
||||
_log = _context.logManager().getLog(UPnPManager.class);
|
||||
// UPnP wants to bind to IPv6 link local interfaces by default, but what UPnP router
|
||||
// is going to want to talk IPv6 anyway? Just make it easy and force IPv4 only
|
||||
org.cybergarage.upnp.UPnP.setEnable(org.cybergarage.upnp.UPnP.USE_ONLY_IPV4_ADDR);
|
||||
// this controls what sockets UPnP listens on
|
||||
// not clear it makes any practical difference though
|
||||
if (!context.getProperty(TransportManager.PROP_ENABLE_UPNP_IPV6, TransportManager.DEFAULT_ENABLE_UPNP_IPV6))
|
||||
org.cybergarage.upnp.UPnP.setEnable(org.cybergarage.upnp.UPnP.USE_ONLY_IPV4_ADDR);
|
||||
// set up logging in the UPnP package
|
||||
Debug.initialize(context);
|
||||
int ssdpPort = _context.getProperty(PROP_SSDP_PORT, DEFAULT_SSDP_PORT);
|
||||
@ -189,7 +190,7 @@ class UPnPManager {
|
||||
if (_scannerCallback != null)
|
||||
_scannerCallback.beforeScan();
|
||||
if (_log.shouldLog(Log.DEBUG))
|
||||
_log.debug("UPnP Rescan");
|
||||
_log.debug("UPnP Rescan", new Exception());
|
||||
// TODO default search MX (jitter) is 3 seconds... reduce?
|
||||
// See also:
|
||||
// Adaptive Jitter Control for UPnP M-Search
|
||||
|
Reference in New Issue
Block a user