[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Linphone-users] Linphone and VPN

From: Andrew Timonin
Subject: [Linphone-users] Linphone and VPN
Date: Thu, 3 Sep 2015 14:38:01 +0300
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.2.0

I've hit an old problem with using Linphone over a VPN.

As I can see (from sources) Linphone is doing assumptions about source address for audio (and video) streams only once and it is not a good solution, especially
if I have a number of interfaces and routes (and VPN is such a case).

The root of the problem is that I don't know my counterpart IP address (only proxy address)
until I finish negotiations about audio/video streams (via proxy).

As for me the proper solution would be to assume that counterpart is reachable via the same interface (and route) as proxy (at least it is reachable from proxy). So the source address for audio/video streams should be computed "on the fly",
while constructing SDP message.

Implementation could be simple: getsockname(proxy_socket,....), BUT only if proxy_socket it
connected (connect(proxy_socket,...) then send(proxy_socket)
Unfortunately it's not the case with Linphone.

The other (and harder) possibility is to simulate connect() functionality (regarding source address)
using code like in "ip route get" via RTNETLINK socket:
get route to proxy from kernel, get address from interface, select a proper one if there are many etc...

Is it possible to implement such a functionality?

Andrew Timonin

reply via email to

[Prev in Thread] Current Thread [Next in Thread]