diff --git a/tools/dhtchat.cpp b/tools/dhtchat.cpp
index 07dfd7c2311306a15bdf65d2c06b43605d87d63d..3f9853c78b290b5fcbec016c0b827282d25554e8 100644
--- a/tools/dhtchat.cpp
+++ b/tools/dhtchat.cpp
@@ -67,7 +67,7 @@ main(int argc, char **argv)
         if (not params.bootstrap.empty())
             dht.bootstrap(params.bootstrap);
 
-        print_node_info(dht.getNodeInfo(), params);
+        print_node_info(dht.getNodeInfo());
         std::cout << "  type 'c {hash}' to join a channel" << std::endl << std::endl;
 
         bool connected {false};
diff --git a/tools/dhtnode.cpp b/tools/dhtnode.cpp
index 0318b1510e8b909da5de0798e17e7e14b18be437..a3d7c4d2ad3a89301cc18263e2c1640f7723a896 100644
--- a/tools/dhtnode.cpp
+++ b/tools/dhtnode.cpp
@@ -114,7 +114,7 @@ void cmd_loop(std::shared_ptr<DhtRunner>& node, dht_params& params
 #endif
 )
 {
-    print_node_info(node->getNodeInfo(), params);
+    print_node_info(node->getNodeInfo());
     std::cout << " (type 'h' or 'help' for a list of possible commands)" << std::endl << std::endl;
 
 #ifndef WIN32_NATIVE
@@ -144,7 +144,7 @@ void cmd_loop(std::shared_ptr<DhtRunner>& node, dht_params& params
             continue;
         } else if (op == "ll") {
             node->getNodeInfo([&](const std::shared_ptr<dht::NodeInfo>& nodeInfo) {
-                print_node_info(*nodeInfo, params);
+                print_node_info(*nodeInfo);
                 std::cout << nodeInfo->ongoing_ops << " ongoing operations" << std::endl;
                 std::cout << "IPv4 stats:" << std::endl;
                 std::cout << nodeInfo->ipv4.toString() << std::endl;
diff --git a/tools/dhtscanner.cpp b/tools/dhtscanner.cpp
index e94f6dbe8bcbfc0340a9c786281e04b09cfebcad..b6dbf27cebfb7d378af8f3260b2480c0c01981e6 100644
--- a/tools/dhtscanner.cpp
+++ b/tools/dhtscanner.cpp
@@ -94,7 +94,7 @@ main(int argc, char **argv)
         if (not params.bootstrap.empty())
             dht.bootstrap(params.bootstrap);
 
-        print_node_info(dht.getNodeInfo(), params);
+        print_node_info(dht.getNodeInfo());
         std::cout << "Scanning network..." << std::endl;
         auto all_nodes = std::make_shared<NodeSet>();
 
diff --git a/tools/tools_common.h b/tools/tools_common.h
index a48d67408a30f2d7287d156689951b1fe5779641..367387a3d3a60120bbfc46e28264f08024ea2b6b 100644
--- a/tools/tools_common.h
+++ b/tools/tools_common.h
@@ -191,13 +191,13 @@ getDhtConfig(dht_params& params)
     return {std::move(config), std::move(context)};
 }
 
-void print_node_info(const dht::NodeInfo& info, const dht_params& params) {
+void print_node_info(const dht::NodeInfo& info) {
     std::cout << "OpenDHT node " << info.node_id << " running on ";
     if (info.bound4 == info.bound6)
         std::cout << "port " << info.bound4 << std::endl;
     else
         std::cout << "IPv4 port " << info.bound4 << ", IPv6 port " << info.bound6 << std::endl;
-    if (params.id.first)
+    if (info.id)
         std::cout << "Public key ID " << info.id << std::endl;
 }