diff --git a/router/java/src/net/i2p/router/Router.java b/router/java/src/net/i2p/router/Router.java
index b390cbcc0600b055fc15d2d19e7110b43314c969..2b37900171968817741d107f9806bd0494464b80 100644
--- a/router/java/src/net/i2p/router/Router.java
+++ b/router/java/src/net/i2p/router/Router.java
@@ -1273,7 +1273,8 @@ public class Router implements RouterClock.ClockShiftListener {
             changeState(State.RESTARTING);
         }
         ((RouterClock) _context.clock()).removeShiftListener(this);
-        _started = _context.clock().now();
+        // Let's not stop accepting tunnels, etc
+        //_started = _context.clock().now();
         Thread t = new Thread(new Restarter(_context), "Router Restart");
         t.setPriority(Thread.NORM_PRIORITY + 1);
         t.start();
diff --git a/router/java/src/net/i2p/router/tunnel/pool/TunnelPool.java b/router/java/src/net/i2p/router/tunnel/pool/TunnelPool.java
index 3024063e1afda59bc10885aea218982eb8d76f61..cc42da3ab683e597b0998e64af34329499e011fd 100644
--- a/router/java/src/net/i2p/router/tunnel/pool/TunnelPool.java
+++ b/router/java/src/net/i2p/router/tunnel/pool/TunnelPool.java
@@ -52,6 +52,7 @@ public class TunnelPool {
     /** if less than one success in this many, reduce length (exploratory only) */
     private static final int BUILD_TRIES_LENGTH_OVERRIDE_1 = 10;
     private static final int BUILD_TRIES_LENGTH_OVERRIDE_2 = 18;
+    private static final long STARTUP_TIME = 30*60*1000;
     
     TunnelPool(RouterContext ctx, TunnelPoolManager mgr, TunnelPoolSettings settings, TunnelPeerSelector sel) {
         _context = ctx;
@@ -348,6 +349,10 @@ public class TunnelPool {
                 }
             }
         }
+        if (_settings.isExploratory() && _context.router().getUptime() < STARTUP_TIME) {
+            // more exploratory during startup, when we are refreshing the netdb RIs
+            rv++;
+        }
         return rv;
     }