diff --git a/src/upnp/protocol/natpmp/nat_pmp.cpp b/src/upnp/protocol/natpmp/nat_pmp.cpp
index 0032b4e6081ae610aa9597922f56e10a155cba8f..20c93280e80ca152f2e1a5df461e12b0a52786f1 100644
--- a/src/upnp/protocol/natpmp/nat_pmp.cpp
+++ b/src/upnp/protocol/natpmp/nat_pmp.cpp
@@ -44,6 +44,8 @@ NatPmp::NatPmp()
                 }
                 if (err < 0) {
                     JAMI_ERR("NAT-PMP: Can't initialize libnatpmp -> %s", getNatPmpErrorStr(err).c_str());
+                    // Retry to init nat pmp in 10 seconds
+                    std::this_thread::sleep_for(std::chrono::seconds(10));
                 } else {
                     char addrbuf[INET_ADDRSTRLEN];
                     inet_ntop(AF_INET, &natpmpHdl_.gateway, addrbuf, sizeof(addrbuf));