Thanks Daniel. Config can be found here: https://gist.github.com/benlangfeld/1b61f41c31129e8f2db3

INVITEs as provided (with a Route with two comma-separated elements) get routed via the Contact header (instead of the second Route element).

When I use loose_route() on the INVITE, it goes into a loop in the edge proxy (https://gist.github.com/benlangfeld/99af9045e70a9bb4eeed), even though the IP it selects to route to (.14) is not the same server.

Ben

On 4 December 2014 at 12:16, Daniel-Constantin Mierla <miconda@gmail.com> wrote:
You should put the config somewhere for review. Note that default kamailio.cfg ignores Route headers for initial requests. You have to handle initial requests with loose_route().

Cheers,
Daniel


On 04/12/14 13:35, Ben Langfeld wrote:
In that case the issue would have to be with the Kamailio-based edge proxy which is not routing based on the second Route in the list. Is that a known issue? I can provide more details if you think I'm on the right track.

On 4 December 2014 at 10:09, Daniel-Constantin Mierla <miconda@gmail.com> wrote:
Hello,

having more record-route addresses in the same header, separated by comma, it is valid. Other headers (Via, Record-Route, Supported, Required ...) can have same format, it is a matter of UAC how it builds them, each with a header name or all under same header name.

Cheers,
Daniel


On 04/12/14 12:24, Ben Langfeld wrote:
I'm facing a problem which I believe may be a bug in the registrar module's lookup. When a registration comes with multiple Path headers, these are recorded in the location table as comma separated. When the lookup is performed and these are used to construct the Route header(s) on an INVITE, this comma-separated list is not split into multiple Route headers, but instead included verbatim in a single header.

Here comes my theory for how this breaks my scenario:

When the INVITE then reaches the first hop (first Path header, also Kamailio), relay() sees that the Route header is itself and/or sees that there is only one Route header.

The observed result is that the first hop then sends the INVITE directly to the Contact, instead of via the second hop.

An example of the situation I'm facing is shown in https://gist.github.com/benlangfeld/b374a0ce0bdb6bdc35e7.

Is there a particular reason the combined path is not split on lookup? Is this a bug / oversight? Am I crazy?

Thanks!
Ben


_______________________________________________
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
sr-users@lists.sip-router.org
http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users

-- 
Daniel-Constantin Mierla
http://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda

_______________________________________________
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
sr-users@lists.sip-router.org
http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users



-- 
Daniel-Constantin Mierla
http://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda