Discussion:
[SR-Users] Send socket and sequential requests
Alex Balashov
2014-08-13 14:28:29 UTC
Permalink
Hi,

My proxy is bound to a.b.c.d:5060 and secondarily to e.f.g.h:5060.

Most traffic comes into a.b.c.d:5060 and is relayed out that interface.
Some initial INVITEs are routed out of e.f.g.h:5060, forced via $fs. The
problem is that the Record-Route header still reflects a.b.c.d:5060 and
that sequential messages from both ends end up entering and exiting
a.b.c.d:5060. Many endpoints don't like that; for instance, e2e ACKs
from the caller that come from a.b.c.d:5060 while the initial INVITE
came from e.f.g.h:5060 can be a problem in that they are not matched by
some UASs.

What is the best way to approach this? Is this something covered by
Kamailio's 'mhomed' core param?

Thanks,
--
Alex Balashov - Principal
Evariste Systems LLC
Tel: +1-678-954-0670
Web: http://www.evaristesys.com/, http://www.alexbalashov.com/

Please be kind to the English language:

http://www.entrepreneur.com/article/232906
Daniel-Constantin Mierla
2014-08-13 15:03:20 UTC
Permalink
Hello,
Post by Alex Balashov
Hi,
My proxy is bound to a.b.c.d:5060 and secondarily to e.f.g.h:5060.
Most traffic comes into a.b.c.d:5060 and is relayed out that
interface. Some initial INVITEs are routed out of e.f.g.h:5060, forced
via $fs. The problem is that the Record-Route header still reflects
a.b.c.d:5060 and that sequential messages from both ends end up
entering and exiting a.b.c.d:5060. Many endpoints don't like that; for
instance, e2e ACKs from the caller that come from a.b.c.d:5060 while
the initial INVITE came from e.f.g.h:5060 can be a problem in that
they are not matched by some UASs.
What is the best way to approach this? Is this something covered by
Kamailio's 'mhomed' core param?
if you force a different outbound socket than inbound, then the
record_route() should add two headers -- doesn't happen like that? If
yes, can you provide a trace?

Btw, is any of these sockets bound to a virtual network interface?

Cheers,
Daniel
--
Daniel-Constantin Mierla
http://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda
Next Kamailio Advanced Trainings 2014 - http://www.asipto.com
Sep 22-25, Berlin, Germany ::: Oct 15-17, San Francisco, USA
Daniel-Constantin Mierla
2014-08-13 15:28:05 UTC
Permalink
Post by Daniel-Constantin Mierla
Btw, is any of these sockets bound to a virtual network interface?
Yes; it's eth0 and eth0:1. Is that a factor?
Could be. Is record_route() adding two headers?

Daniel
--
Daniel-Constantin Mierla
http://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda
Next Kamailio Advanced Trainings 2014 - http://www.asipto.com
Sep 22-25, Berlin, Germany ::: Oct 15-17, San Francisco, USA
Alex Balashov
2014-08-14 10:14:25 UTC
Permalink
Post by Daniel-Constantin Mierla
Post by Daniel-Constantin Mierla
Btw, is any of these sockets bound to a virtual network interface?
Yes; it's eth0 and eth0:1. Is that a factor?
Could be. Is record_route() adding two headers?
No, it is not.
--
Alex Balashov - Principal
Evariste Systems LLC
Tel: +1-678-954-0670
Web: http://www.evaristesys.com/, http://www.alexbalashov.com/

Please be kind to the English language:

http://www.entrepreneur.com/article/232906
Daniel-Constantin Mierla
2014-08-14 10:41:31 UTC
Permalink
Post by Alex Balashov
Post by Daniel-Constantin Mierla
Post by Daniel-Constantin Mierla
Btw, is any of these sockets bound to a virtual network interface?
Yes; it's eth0 and eth0:1. Is that a factor?
Could be. Is record_route() adding two headers?
No, it is not.
Can you send the ngrep to see how it appears on the network?

Cheers,
Daniel
--
Daniel-Constantin Mierla
http://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda
Next Kamailio Advanced Trainings 2014 - http://www.asipto.com
Sep 22-25, Berlin, Germany ::: Oct 15-17, San Francisco, USA
Alex Balashov
2014-08-14 10:47:49 UTC
Permalink
Post by Daniel-Constantin Mierla
Post by Alex Balashov
Post by Daniel-Constantin Mierla
Post by Daniel-Constantin Mierla
Btw, is any of these sockets bound to a virtual network interface?
Yes; it's eth0 and eth0:1. Is that a factor?
Could be. Is record_route() adding two headers?
No, it is not.
Can you send the ngrep to see how it appears on the network?
Sure thing. I sent it to you privately to avoid masking IP addresses.
--
Alex Balashov - Principal
Evariste Systems LLC
Tel: +1-678-954-0670
Web: http://www.evaristesys.com/, http://www.alexbalashov.com/

Please be kind to the English language:

http://www.entrepreneur.com/article/232906
Daniel-Constantin Mierla
2014-08-14 11:13:36 UTC
Permalink
Post by Alex Balashov
Post by Daniel-Constantin Mierla
Post by Alex Balashov
Post by Daniel-Constantin Mierla
Post by Daniel-Constantin Mierla
Btw, is any of these sockets bound to a virtual network interface?
Yes; it's eth0 and eth0:1. Is that a factor?
Could be. Is record_route() adding two headers?
No, it is not.
Can you send the ngrep to see how it appears on the network?
Sure thing. I sent it to you privately to avoid masking IP addresses.
Just double checking -- you haven't disable the double rr via module, isn't?

Do you have explicit listen= or it is left to listen on all interfaces?

Can you give the output of:

kamcmd corex.list_sockets ?

Daniel
--
Daniel-Constantin Mierla
http://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda
Next Kamailio Advanced Trainings 2014 - http://www.asipto.com
Sep 22-25, Berlin, Germany ::: Oct 15-17, San Francisco, USA
Alex Balashov
2014-08-14 11:18:04 UTC
Permalink
You know what? I do have double RR disabled. I thought about that, and was so sure I wouldn't have turned it off that I didn't even check. But it's disabled. I feel quite stupid. Let me retest and let you know what happens.
Post by Daniel-Constantin Mierla
Post by Alex Balashov
Post by Daniel-Constantin Mierla
Post by Alex Balashov
Post by Daniel-Constantin Mierla
Post by Daniel-Constantin Mierla
Btw, is any of these sockets bound to a virtual network
interface?
Post by Alex Balashov
Post by Daniel-Constantin Mierla
Post by Alex Balashov
Post by Daniel-Constantin Mierla
Yes; it's eth0 and eth0:1. Is that a factor?
Could be. Is record_route() adding two headers?
No, it is not.
Can you send the ngrep to see how it appears on the network?
Sure thing. I sent it to you privately to avoid masking IP addresses.
Just double checking -- you haven't disable the double rr via module,
isn't?
Do you have explicit listen= or it is left to listen on all interfaces?
kamcmd corex.list_sockets ?
Daniel
--
Sent from my mobile, and thus lacking in the refinement one might expect from a fully fledged keyboard.

Alex Balashov - Principal
Evariste Systems LLC
235 E Ponce de Leon Ave
Suite 106
Decatur, GA 30030
United States
Tel: +1-678-954-0671
Web: http://www.evaristesys.com/, http://www.alexbalashov.com

Continue reading on narkive:
Loading...