diff --git a/res/res_rtp_asterisk.c b/res/res_rtp_asterisk.c
index a13725a492db447d761b502667d4fd5a886a6f1e..9e603f2fb5621d59c7461de599fba1ffa27105f7 100644
--- a/res/res_rtp_asterisk.c
+++ b/res/res_rtp_asterisk.c
@@ -7369,6 +7369,10 @@ static void ast_rtp_remote_address_set(struct ast_rtp_instance *instance, struct
 		ast_rtp_instance_set_remote_address(mapping->instance, addr);
 	}
 
+	/* Need to reset the DTMF last sequence number and the timestamp of the last END packet */
+	rtp->last_seqno = 0;
+	rtp->last_end_timestamp = 0;
+
 	if (strictrtp && rtp->strict_rtp_state != STRICT_RTP_OPEN
 		&& !ast_sockaddr_isnull(addr) && ast_sockaddr_cmp(addr, &rtp->strict_rtp_address)) {
 		/* We only need to learn a new strict source address if we've been told the source is