diff --git a/contrib/src/pjproject/disable_local_resolution.patch b/contrib/src/pjproject/disable_local_resolution.patch
new file mode 100644
index 0000000000000000000000000000000000000000..0f06cbaaa2e00063b9095156e34941a1ada64e9c
--- /dev/null
+++ b/contrib/src/pjproject/disable_local_resolution.patch
@@ -0,0 +1,17 @@
+ pjlib/include/pj/config.h | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/pjlib/include/pj/config.h b/pjlib/include/pj/config.h
+index ad0abbb5..6bba5a55 100644
+--- a/pjlib/include/pj/config.h
++++ b/pjlib/include/pj/config.h
+@@ -1003,6 +1003,9 @@
+ #endif
+ 
+ 
++#ifndef PJ_GETHOSTIP_DISABLE_LOCAL_RESOLUTION
++#   define PJ_GETHOSTIP_DISABLE_LOCAL_RESOLUTION	    1
++#endif
+ 
+ /** @} */
+ 
diff --git a/contrib/src/pjproject/fetch_and_patch.bat b/contrib/src/pjproject/fetch_and_patch.bat
index 2082821e819531e5327a7add20fe09f4fa5c1be0..fafb48d9aa4d872ac24fd56f74d683518e9a4055 100644
--- a/contrib/src/pjproject/fetch_and_patch.bat
+++ b/contrib/src/pjproject/fetch_and_patch.bat
@@ -39,6 +39,8 @@ bash -c "%PATCH_CMD% %UNIXPATH%pjproject/ice_config.patch"
 bash -c "%PATCH_CMD% %UNIXPATH%pjproject/fix_first_packet_turn_tcp.patch"
 bash -c "%PATCH_CMD% %UNIXPATH%pjproject/fix_ebusy_turn.patch"
 bash -c "%PATCH_CMD% %UNIXPATH%pjproject/ignore_ipv6_on_transport_check.patch"
+bash -c "%PATCH_CMD% %UNIXPATH%pjproject/fix_turn_connection_failure.patch"
+bash -c "%PATCH_CMD% %UNIXPATH%pjproject/disable_local_resolution.patch"
 
 %APPLY_CMD% %SRC%\pjproject\win32_vs_gnutls.patch
 %APPLY_CMD% %SRC%\pjproject\win_config.patch
diff --git a/contrib/src/pjproject/fix_turn_connection_failure.patch b/contrib/src/pjproject/fix_turn_connection_failure.patch
new file mode 100644
index 0000000000000000000000000000000000000000..f42a15bd72348b9dd1f710e76f378183afea4ae6
--- /dev/null
+++ b/contrib/src/pjproject/fix_turn_connection_failure.patch
@@ -0,0 +1,16 @@
+ pjnath/src/pjnath/ice_strans.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/pjnath/src/pjnath/ice_strans.c b/pjnath/src/pjnath/ice_strans.c
+index 72f12700..d4790049 100644
+--- a/pjnath/src/pjnath/ice_strans.c
++++ b/pjnath/src/pjnath/ice_strans.c
+@@ -2854,7 +2854,7 @@ static void turn_on_state(pj_turn_sock *turn_sock, pj_turn_state_t old_state,
+ 
+ 	sess_init_update(comp->ice_st);
+ 
+-    } else if ((old_state == PJ_TURN_STATE_RESOLVING || old_state == PJ_TURN_STATE_ALLOCATING) &&
++    } else if (old_state >= PJ_TURN_STATE_RESOLVING && old_state <= PJ_TURN_STATE_ALLOCATING &&
+                new_state >= PJ_TURN_STATE_DEALLOCATING)
+     {
+         pj_ice_sess_cand *cand = NULL;
diff --git a/contrib/src/pjproject/rules.mak b/contrib/src/pjproject/rules.mak
index 42d037d22ed8fa2af35d3f8697809ce18de43983..0463f54a6aba4b55ca1d782c28e9bee149f0898b 100644
--- a/contrib/src/pjproject/rules.mak
+++ b/contrib/src/pjproject/rules.mak
@@ -68,6 +68,8 @@ endif
 	$(APPLY) $(SRC)/pjproject/fix_first_packet_turn_tcp.patch
 	$(APPLY) $(SRC)/pjproject/fix_ebusy_turn.patch
 	$(APPLY) $(SRC)/pjproject/ignore_ipv6_on_transport_check.patch
+	$(APPLY) $(SRC)/pjproject/fix_turn_connection_failure.patch
+	$(APPLY) $(SRC)/pjproject/disable_local_resolution.patch
 	$(UPDATE_AUTOCONFIG)
 	$(MOVE)