diff --git a/contrib/src/dhtnet/package.json b/contrib/src/dhtnet/package.json
index f16f821e6f39e8c490b9ca8c728a61237da7a091..a1c2a86b0e823d2b0f07f485781e466dafba5222 100644
--- a/contrib/src/dhtnet/package.json
+++ b/contrib/src/dhtnet/package.json
@@ -1,33 +1,33 @@
-{
-    "name": "dhtnet",
-    "version": "648907ca8239f12444abc6538705cf4366d9014f",
-    "url": "https://review.jami.net/plugins/gitiles/dhtnet/+archive/__VERSION__.tar.gz",
-    "deps": [
-        "opendht",
-        "pjproject",
-        "msgpack",
-        "asio",
-        "upnp",
-        "natpmp"
-    ],
-    "use_cmake" : true,
-    "defines": [
-        "BUILD_SHARED_LIBS=0",
-        "BUILD_TESTING=0",
-        "BUILD_BENCHMARKS=0"
-    ],
-    "patches": [],
-    "win_patches": [],
-    "project_paths": [],
-    "with_env" : "",
-    "custom_scripts": {
-        "pre_build": [
-            "IF exist \"%DAEMON_DIR%\\contrib\\msvc\\include\\dhtnet\" ( rmdir /S /Q \"%DAEMON_DIR%\\contrib\\msvc\\include\\dhtnet\" )"
-        ],
-        "build": [],
-        "post_build": [
-            "mkdir \"%DAEMON_DIR%\\contrib\\msvc\\include\\dhtnet\"",
-            "xcopy /S /Y \"include\" \"%DAEMON_DIR%\\contrib\\msvc\\include\\dhtnet\""
-        ]
-    }
-}
+{
+    "name": "dhtnet",
+    "version": "738aedb0860d098f6ba7260a70a0d9dc8667d735",
+    "url": "https://review.jami.net/plugins/gitiles/dhtnet/+archive/__VERSION__.tar.gz",
+    "deps": [
+        "opendht",
+        "pjproject",
+        "msgpack",
+        "asio",
+        "upnp",
+        "natpmp"
+    ],
+    "use_cmake" : true,
+    "defines": [
+        "BUILD_SHARED_LIBS=0",
+        "BUILD_TESTING=0",
+        "BUILD_BENCHMARKS=0"
+    ],
+    "patches": [],
+    "win_patches": [],
+    "project_paths": [],
+    "with_env" : "",
+    "custom_scripts": {
+        "pre_build": [
+            "IF exist \"%DAEMON_DIR%\\contrib\\msvc\\include\\dhtnet\" ( rmdir /S /Q \"%DAEMON_DIR%\\contrib\\msvc\\include\\dhtnet\" )"
+        ],
+        "build": [],
+        "post_build": [
+            "mkdir \"%DAEMON_DIR%\\contrib\\msvc\\include\\dhtnet\"",
+            "xcopy /S /Y \"include\" \"%DAEMON_DIR%\\contrib\\msvc\\include\\dhtnet\""
+        ]
+    }
+}
diff --git a/contrib/src/dhtnet/rules.mak b/contrib/src/dhtnet/rules.mak
index 6cee7830ec26b110b33c221bfd698af0c0c0ab2f..0d72ad0cee43d7458fee433a9275436c956bd731 100644
--- a/contrib/src/dhtnet/rules.mak
+++ b/contrib/src/dhtnet/rules.mak
@@ -1,5 +1,5 @@
 # DHTNET
-DHTNET_VERSION := 648907ca8239f12444abc6538705cf4366d9014f
+DHTNET_VERSION := 738aedb0860d098f6ba7260a70a0d9dc8667d735
 DHTNET_URL := https://review.jami.net/plugins/gitiles/dhtnet/+archive/$(DHTNET_VERSION).tar.gz
 
 PKGS += dhtnet
diff --git a/src/sip/sipcall.cpp b/src/sip/sipcall.cpp
index 990d9ef035576818641a6bdbf53dc8132e4caa56..5edca6b9ec16ee7ce1b630033ea0242faff4df5d 100644
--- a/src/sip/sipcall.cpp
+++ b/src/sip/sipcall.cpp
@@ -3473,6 +3473,13 @@ SIPCall::initIceMediaTransport(bool master, std::optional<dhtnet::IceTransportOp
     iceOptions.streamsCount = static_cast<unsigned>(rtpStreams_.size());
     // Each RTP stream requires a pair of ICE components (RTP + RTCP).
     iceOptions.compCountPerStream = ICE_COMP_COUNT_PER_STREAM;
+    iceOptions.qosType.reserve(rtpStreams_.size() * ICE_COMP_COUNT_PER_STREAM);
+    for (const auto& stream : rtpStreams_) {
+        iceOptions.qosType.push_back(stream.mediaAttribute_->type_ == MediaType::MEDIA_AUDIO
+                                        ? dhtnet::QosType::VOICE
+                                        : dhtnet::QosType::VIDEO);
+        iceOptions.qosType.push_back(dhtnet::QosType::CONTROL);
+    }
 
     // Init ICE.
     iceMedia->initIceInstance(iceOptions);