Alex Balashov wrote:
Alex Balashov wrote:
> Daniel-Constantin Mierla wrote:
>
>> IIRC, I use:
>>
>> if(dst_ip==private_ip)
>> force_rtp_proxy("ocfaei");
>> else
>> force_rtp_proxy("ocfaie");
>>
>> rtpproxy started with: -l external_ip/private_ip
>>
>> Probably is rtpproxy 1.1 -- cannot check right now.
>
> I just tried this and it works, from the point of view of SDP. We
> were already able to obtain this result.
>
> The problem is that the actual rtpproxy does not seem to forward
> the packets that come into one interface toward the other, so no
> media is exchanged.
>
An additional note: if I turn OFF /proc/sys/net/ipv4/ip_forward and
then start the proxy in bridging mode, the following happens when it
is invoked:
DBUG:handle_command: received command "8725_4 UAIEc0,101
5f1690462d84b3814915b05f65c626bd(a)208.52.173.7 208.52.173.7 11832
as214288b6;1"
INFO:handle_command: new session
5f1690462d84b3814915b05f65c626bd(a)208.52.173.7, tag as214288b6;1
requested, type strong
Segmentation fault
In other words, it seems to require ip_forward to be on in order to
not crash, but when it is on, no packets are exchanged between the
interfaces.
To be more precise:
Program received signal SIGSEGV, Segmentation fault.
create_listener (cf=0x7fff90524230, ia=0x0, port=0x7fff905241ac,
fds=0x7fff90524190) at rtpp_command.c:89
89 fds[i] = socket(ia->sa_family, SOCK_DGRAM, 0);
(gdb) where
#0 create_listener (cf=0x7fff90524230, ia=0x0, port=0x7fff905241ac,
fds=0x7fff90524190) at rtpp_command.c:89
#1 0x0000000000408e09 in handle_command (cf=0x7fff90524230,
controlfd=6,
dtime=1255611428.2989011) at rtpp_command.c:789
#2 0x000000000040324b in main (argc=<value optimized out>,
argv=<value optimized out>) at main.c:742
Is rtpproxy even usable? Or is it too buggy due to lack of
substantial evolution and maintenance since OpenSER 1.1/1.2 days?
Never mind, I was invoking it improperly:
-l one.ip other.ip
not:
-l one.ip/other.ip
this is because I copy/pasted it straight from the process list, where
its argv exposure does not match the actual invocation.
It does not crash anymore, but it does continues to not bridge packets.