diff --git a/router/java/src/net/i2p/router/transport/TransportImpl.java b/router/java/src/net/i2p/router/transport/TransportImpl.java index b3d2c224c..deebe9c37 100644 --- a/router/java/src/net/i2p/router/transport/TransportImpl.java +++ b/router/java/src/net/i2p/router/transport/TransportImpl.java @@ -527,7 +527,7 @@ public abstract class TransportImpl implements Transport { */ protected void replaceAddress(RouterAddress address) { if (_log.shouldLog(Log.WARN)) - _log.warn("Replacing address with " + address); + _log.warn("Replacing address with " + address, new Exception()); if (address == null) { _currentAddresses.clear(); } else { @@ -538,6 +538,8 @@ public abstract class TransportImpl implements Transport { } _currentAddresses.add(address); } + if (_log.shouldLog(Log.WARN)) + _log.warn(getStyle() + " now has " + _currentAddresses.size() + " addresses"); if (_listener != null) _listener.transportAddressChanged(); } diff --git a/router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java b/router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java index 258953a57..c96e1ca49 100644 --- a/router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java +++ b/router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java @@ -791,7 +791,7 @@ public class NTCPTransport extends TransportImpl { return; } if (!isAlive()) { - if (source == SOURCE_INTERFACE) { + if (source == SOURCE_INTERFACE || source == SOURCE_UPNP) { try { InetAddress ia = InetAddress.getByAddress(ip); saveLocalAddress(ia); diff --git a/router/java/src/net/i2p/router/transport/udp/UDPTransport.java b/router/java/src/net/i2p/router/transport/udp/UDPTransport.java index ca05e879c..457503155 100644 --- a/router/java/src/net/i2p/router/transport/udp/UDPTransport.java +++ b/router/java/src/net/i2p/router/transport/udp/UDPTransport.java @@ -635,7 +635,7 @@ public class UDPTransport extends TransportImpl implements TimedWeightedPriority return; } if (!isAlive()) { - if (source == SOURCE_INTERFACE) { + if (source == SOURCE_INTERFACE || source == SOURCE_UPNP) { try { InetAddress ia = InetAddress.getByAddress(ip); saveLocalAddress(ia); @@ -1797,7 +1797,7 @@ public class UDPTransport extends TransportImpl implements TimedWeightedPriority if (wantsRebuild) { if (_log.shouldLog(Log.INFO)) - _log.info("Address rebuilt: " + addr, new Exception()); + _log.info("Address rebuilt: " + addr); replaceAddress(addr); if (allowRebuildRouterInfo) _context.router().rebuildRouterInfo();