Hi,
I am trying to have RTPproxy works with Kamailio behind a NAT. As it
seems RTPproxy cannot handle NAT natively, I installed RTPproxy 1.2.1 by
miconda:
https://github.com/miconda/rtpproxy
Now I am able to make calls, but neither the video nor the audio are
present. Wireshark showed that the RTP packets were sent to wrong IPs
(private IPs). And this was because of the SDP which contained the wrong
IP (fields o= and c=).
Then I tried to play with rtpproxy_manage(), and Kamailio replaced the
IP in o= and c= by its advertising IP (i.e. its public IP), so the
packets from the client behind the NAT were sent to the public address
of Kamailio (and then dropped).
My question here is what should be the addresses in the SDP when
redirected from Kamailio to the client ?
Here is the topology when receiving an ACK with SDP:
Client <--(2)-- Kamailio <--(1)-- Router (NAT) <--(1)-- Public Internet
<--(1)-- Third party router (21.24.12.24)
(1): SDP o= 21.24.12.24, c= 21.24.12.24
(2): SDP o= ??, c= ?? (Should it be Kamailio public IP (actually Router
IP), or Kamailio private IP, or third party SIP server public IP ?)
Cheer,
--
*Jean-Marie Baran*