linphone-developers
[Top][All Lists]
Advanced

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

Re: [Linphone-developers] wrong local address and proxies and routes


From: Nomad Arton
Subject: Re: [Linphone-developers] wrong local address and proxies and routes
Date: Mon, 27 Oct 2008 22:59:16 +0100
User-agent: Mozilla-Thunderbird 2.0.0.17 (X11/20081018)

Dear Simon,
> This IP address is determined by retrieving the local address that
can connect to the internet.

I think the method is too simple to match multihomed systems: linphone 2.11 would take the address of whatever interface got used to connect to 217.12.3.11. See Debian bug #500512. I cannot find this address in the current trunk linphone source available from svn.savannah.gnu.org - did the method change? The letter from Jun Yin states that the outcome remained the same in 3.0.0.

I do not understand what you said about double registration. Below again just what occured to me. A small drawing:

Host L, where linphone runs, can reach host R, the registrar, via two different routes: through hosts X, and Y. X is L's default gateway, but its just a dumb nat router, while Y is a smart router, that can take care of mangling sip messages and rtp-proxying! in fact, L takes part in two local networks, with different interfaces and different local addresses (a common VPN scenario).

  ---------- X --------
L                       R
  ---------- Y --------

To find the correct local address, linphone might first try and connect to the host named "route" in preferences (here Y), if none, to the host named "proxy" in the preferences (here R), and only as a last resort should use the system default route (here through X).

Its ok to use the address of the interface that getsockname from a connect to eg. Y returns.

For the second one, I don't understand how linphone could use a different address in registers and in invites. A log file would help.

Also with 2.11: It does not do that. It uses the same IP-address. Yet, in above scenario, registers and invites take different routes. I learned that from looking at wireshark.

When a route is specified in the proxy configuration, INVITEs will go out over the interface the kernel uses to connect to that host (Y), while the REGISTER message on startup will go out over the default interface.

The REGISTER should also go through the proxy, shouldnt it? The proxy then can swap the local address with the public address in the sip messages, and voila, somebody can call me from the info the registrar will provide them;)

Regards! Peter




reply via email to

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