diff --git a/src/jamidht/connectionmanager.cpp b/src/jamidht/connectionmanager.cpp
index f5b11a82f33a924a0bfc00dc04be9f491631e0db..001605ad9771c2630844a013fd47fa79d1508222 100644
--- a/src/jamidht/connectionmanager.cpp
+++ b/src/jamidht/connectionmanager.cpp
@@ -868,6 +868,8 @@ ConnectionManager::closeConnectionsWith(const DeviceId& deviceId)
             info->ice_->cancelOperations();
             info->ice_->stop();
         }
+        if (info->socket_)
+            info->socket_->shutdown();
         info->responseCv_.notify_all();
         if (info->ice_) {
             std::unique_lock<std::mutex> lk {info->mutex_};