diff --git a/channels/chan_sip.c b/channels/chan_sip.c
index bc121b12891d2038f96e94619dadb529a7edb4ee..c9e63ad329cc600f840ceb56ab345c61af6d9834 100644
--- a/channels/chan_sip.c
+++ b/channels/chan_sip.c
@@ -4876,6 +4876,8 @@ static int create_addr(struct sip_pvt *dialog, const char *opeer, struct sockadd
 		return res;
 	}
 
+	do_setnat(dialog, ast_test_flag(&dialog->flags[0], SIP_NAT) & SIP_NAT_ROUTE);
+
 	ast_string_field_set(dialog, tohost, peername);
 
 	/* Get the outbound proxy information */