I think I was too fast there.
On Thu, 2008-01-10 at 19:19 +0100, Jerome Martin wrote:
Hi.
My remarks below.
On Thu, 2008-01-10 at 16:06 -0200, Jeferson Prevedello wrote:
Hi !
I´m having problem to running RTPPROXY. Please, someone help me ?
Logs bellow:
Removed the logs from the answer as you IPs are in clear there.
- - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - - - - - - - - - - - -
[openser.cfg]
# ------------- !! Nathelper
modparam("registrar", "nat_flag", 6)
modparam("nathelper", "natping_interval", 30) # Ping interval 30 s
modparam("nathelper", "ping_nated_only", 1) # Ping only clients
behind NAT
modparam("nathelper", "rtpproxy_sock",
"unix:/var/run/rtpproxy.sock") # Nathelper with RTPproxy
modparam("nathelper", "rtpproxy_sock",
"udp:xxx.xxx.xxx.xxx:8899")
I would first try to remove the unix-socket rtpproxy_sock declaration,
even though you log messages tend to let one think openser is using only
the second one (UDP).
> modparam("nathelper", "rtpproxy_disable_tout", 30)
> modparam("nathelper", "rtpproxy_tout", 2)
> modparam("nathelper", "rtpproxy_retr", 10)
>
> # -------------
>
> [root@sip2 run]# rpm -qa | grep rtp
> rtpproxy-0.3-1.fc5
>
>
> [root@sip2 run]# netstat -axep |grep rtpproxy
> unix 2 [ ACC ] STREAM LISTENING 8070094 19061/rtpproxy
/var/run/rtpproxy.sock
Your netstat is the primary reason to make me believe rtpproxy was not
launched with proper parameters. You would not catch the udp socket
rtpproxy uses with the netstat options you provided, but here it seems
your running proxy is waiting for control on a unix socket. And rtpproxy
cannot listen both on udp AND unixsocket. You need to choose udp or
unixsocket both in openser.cfg and in rtpproxy commandline.
[root@sip2 run]# ls -al rtpproxy.sock
srwxr-xr-x 1 root root 0 Jan 10 15:44 rtpproxy.sock
[root@sip2 run]# ps -aux | grep rtp
if you want to use "-" options a la
systemV, use "ps -eaf" to achieve
the same than the BSD-style "ps aux" :-)
> Warning: bad syntax, perhaps a bogus '-'? See
/usr/share/doc/procps-3.2.6/FAQ
> root 19061 0.0 0.0 2532 344 ? Ss 15:44 0:00 /usr/bin/rtpproxy
> root 19080 0.0 0.0 2532 344 ? Ss 15:44 0:00 /usr/bin/rtpproxy -l
xxx.xxx.xxx.xxx -s udp:xxx.xxx.xxx.xxx 8899
Are you sure the ps and the netstat are from the same machine ? What
does cat /proc/19080/cmdline | tr "\0" "\n" gives you ? Would you by
chance have a second -s option after the first one, truncated by ps,
which would be taken into account instead of the udp socket ? That would
explain your netstat result.
There is a missing ":" between the ip and
the port.
Try to use -l xxx.xxx.xxx.xxx -s udp:xxx.xxx.xxx.xxx:8899
In fact, command line syntax for -s option is udp:ip:port. If you omit the ":"
between ip and port, there will be no warning, and rtpproxy will listen (for the original
version, dunno for fedora versions) on port 22222. But the behavior might be different on
your version. Note that I cannot be 100% sure that you got that one wrong here because
indead, even if you use the proper syntax, rtpproxy does not report the ":" in
the commandline"
--
Jérôme Martin | LongPhone
Responsable Architecture Réseau
122, rue la Boetie | 75008 Paris
Tel : +33 (0)1 56 26 28 44
Fax : +33 (0)1 56 26 28 45
Mail : jmartin(a)longphone.fr
Web :
www.longphone.com <http://www.longphone.com>