On 01/04/2019 09.14, Istvan Mogyorosi wrote:
Dear all,
This is my first post after reading a lot in this mailing-list.
I'm trying to use Kamailio 5.1 with the dispatcher module and
rtpengine acting as SIP + RTP proxy.
I have 6 asterisk servers in a private subnet that should talk with
the peer via a single IP like this:
Asterisk 1..n|---> | GW.PRIVATE.IP -o- GW.PUBLIC.IP |----> PEER.SIP.TRUNK
I'm on Centos 7, with firewalld configured, iptables module is loaded
and the rule is well defined.
Packet forwarding is also enabled.
Chain rtpengine (1 references)
target prot opt source destination
RTPENGINE udp -- anywhere anywhere RTPENGINE id:40
My call flow seems to be fine, Kamailio/rtpengine private IP is the
outboundproxy parameter of Asterisk instances.
My problem is that RTP packets are not present on the public
interface, the rtpengine final log showing
the 2 sessions, but I'm not sure this is what I want or simply the
firewall does not let it out ?
(To be more precise PEER.SIP.TRUNK is the trunk for SIP traffic, I
have multiple IP addresses
for media to connect to, reinvites are allowed)
Closing call due to timeout
Final packet stats:
--- Tag 'as6d12caea', created 1:00 ago for branch '', in dialogue with
'as541b1e61'
------ Media #1 (audio over RTP/AVP) using unknown codec
--------- Port GW.PRIVATE.IP:10000 <> 192.168.30.13:11152, SSRC 0, 0
p, 0 b, 0 e, 60 ts
--------- Port GW.PRIVATE.IP:10001 <> 192.168.30.13:11153 (RTCP),
SSRC 0, 0 p, 0 b, 0 e, 60 ts
--- Tag 'as541b1e61', created 1:00 ago for branch '', in dialogue with
'as6d12caea'
------ Media #1 (audio over RTP/AVP) using unknown codec
--------- Port GW.PUBLIC.IP:10000 <> PEER.SIP.TRUNK:28216, SSRC 0,
0 p, 0 b, 0 e, 60 ts
--------- Port GW.PUBLIC.IP:10001 <> PEER.SIP.TRUNK:28217 (RTCP),
SSRC 0, 0 p, 0 b, 0 e, 60 ts
These are all reception counters, so this is a problem of packets not
being received. Having the iptables RTPENGINE rule installed does not
automatically allow the packets to pass through your firewall. You have
to do that separately.
Cheers