@Override
  public CompletableFuture<String> queryLocalIPAddress() {
    final CompletableFuture<String> future = new CompletableFuture<>();
    Executors.newCachedThreadPool()
        .submit(
            () -> {
              try {
                future.complete(InetAddress.getLocalHost().getHostAddress());
              } catch (UnknownHostException e) {
                future.completeExceptionally(e);
              }
            });
    return future;
  }
Retrieve external ip address completable future.

@return the completable future
nat/src/main/java/org/hyperledger/besu/nat/core/AbstractNatManager.java