Hello Youssef,
before investing a lot of time into this old version, I would suggest that you update:
In the newer kamailio default cfg you find also support for rtpengine, it can be easily enabled with a define.
Cheers,
Henning
From: sr-users <sr-users-bounces@lists.kamailio.org>
On Behalf Of Youssef Boujraf
Sent: Friday, October 1, 2021 1:01 PM
To: sr-users@lists.kamailio.org
Cc: Contacts <yboujraf@gmail.com>
Subject: [SR-Users] Kamailio 4.4 + rtpproxy behind the NAT (debian stretch 9.13)
Dear,
I am testing the kakamilio 4.4 with rtpproxy on Debian stretch 9.13
I have installed the packages
·
apt-get install kamailio and rtpproxy.
·
kamailio 4.4
·
rtpproxy Basic version: 20040107
My version of RTPPROXY doesn't have the -A parameter so that means without advertising there is no way to work behind NAT? That is what I have understood after spending one week on forums.
Thanks if somebody could confirm otherwise, which way I need to go to figure out my issue?
# rtpproxy -v
Basic version: 20040107
Extension 20050322: Support for multiple RTP streams and MOH
Extension 20060704: Support for extra parameter in the V command
Extension 20071116: Support for RTP re-packetization
Extension 20071218: Support for forking (copying) RTP stream
Extension 20080403: Support for RTP statistics querying
Extension 20081102: Support for setting codecs in the update/lookup command
Extension 20081224: Support for session timeout notifications
# rtpproxy -help
rtpproxy: invalid option -- 'h'
usage: rtpproxy [-2fvFiPa] [-l addr1[/addr2]] [-6 addr1[/addr2]] [-s path]
[-t tos] [-r rdir [-S sdir]] [-T ttl] [-L nfiles] [-m port_min]
[-M port_max] [-u uname[:gname]] [-n timeout_socket] [-d log_level[:log_facility]]
#
/etc/hosts
127.0.0.1 localhost
127.0.1.1 sip.dom.xx sip
192.168.1.19 sip.dom.xx sip
PUBLIC_IP sip.dom.xx sip
# The following lines are desirable for IPv6 capable hosts
::1 localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
/etc/kamailio/kamailio.cfg
kamailio.config
#!define PUBLIC_IP "xxx.xxx.xxx.xxx"
#!define PRIVATE_IP "192.168.1.19"
#!define PRIVATE_NET "192.168.1.0/24“
listen=udp:PRIVATE_IP:5060 advertise PUBLIC_IP:5060
#!ifdef WITH_NAT
# ----- rtpproxy params -----
modparam("rtpproxy", "rtpproxy_sock", "udp:PRIVATE_IP:7722")
# ----- nathelper params -----modparam("nathelper", "natping_interval", 30)
modparam("nathelper", "ping_nated_only", 1)
modparam("nathelper", "sipping_bflag", FLB_NATSIPPING)
modparam("nathelper", "sipping_from", "sip:pinger@kamailio.org")
Etc/default/rtpproxy
PRIVATE_IP=192.168.1.19
PUBLIC_IP=xxx.xxx.xxx.xxx
rtpport_min= 10000
rtpport_max=20000
syslog=DBUG:LOG_LOCAL5
#Defaults for rtpproxy
#The control socket.
#CONTROL_SOCK="unix:/var/run/rtpproxy/rtpproxy.sock"
#To listen on an UDP socket, uncomment this line:
#CONTROL_SOCK=udp:127.0.0.1:7722
#Additional options that are passed to the daemon.
EXTRA_OPTS="-l $PRIVATE_IP/$PUBLIC_IP ="-s $PRIVATE_IP:7222 -m $rtpport_min -M $rtpport_max -d $syslog"`
Thanks if you could route me to the right way.
Best regards
Yboujraf
Email: yboujraf@gmail.com