diff --git a/res/res_pjsip_session.c b/res/res_pjsip_session.c
index 6af6b8a8dcb2d9af807fa559d538c3618c974634..8f5449cb591a7324e7a9a56cdbbb54cdee0a21ca 100644
--- a/res/res_pjsip_session.c
+++ b/res/res_pjsip_session.c
@@ -1075,7 +1075,7 @@ static int handle_negotiated_sdp(struct ast_sip_session *session, const pjmedia_
 	SCOPE_ENTER(1, "%s\n", ast_sip_session_get_name(session));
 
 	if (session && session->channel)
-		ast_channel_farEndIPAddress_set(session->channel, pj_strbuf(&remote->origin.addr), pj_strlen(&remote->origin.addr));
+		ast_channel_farEndIPAddress_set(session->channel, pj_strbuf(&remote->conn->addr), pj_strlen(&remote->conn->addr));
 
 	if (!session->pending_media_state->topology) {
 		if (session->active_media_state->topology) {