diff --git a/src/jamidht/namedirectory.cpp b/src/jamidht/namedirectory.cpp
index 7edc9d18557718f12ddf0ca8dacab8b207062f9c..4b16bff5149f21a2231f2974dedb3a01af6cf2e9 100644
--- a/src/jamidht/namedirectory.cpp
+++ b/src/jamidht/namedirectory.cpp
@@ -162,6 +162,9 @@ NameDirectory::lookupAddress(const std::string& addr, LookupCallback cb)
         setHeaderFields(*request);
         request->add_on_done_callback(
             [this, cb = std::move(cb), reqid, addr](const dht::http::Response& response) {
+                if (response.status_code == 0) {
+                    return;
+                }
                 if (response.status_code >= 400 && response.status_code < 500) {
                     cb("", Response::notFound);
                 } else if (response.status_code != 200) {
@@ -248,6 +251,9 @@ NameDirectory::lookupName(const std::string& n, LookupCallback cb)
         setHeaderFields(*request);
         request->add_on_done_callback([this, reqid, name, cb = std::move(cb)](
                                           const dht::http::Response& response) {
+            if (response.status_code == 0) {
+                return;
+            }
             if (response.status_code >= 400 && response.status_code < 500)
                 cb("", Response::notFound);
             else if (response.status_code < 200 || response.status_code > 299)