[OpenSIPS-Users] Strange behavior on ipv4 / ipv6 dual stack server with/without mhomed

Răzvan Crainea razvan at opensips.org
Mon Oct 23 09:11:36 EDT 2017

Hi, Daniel!

My assumption is that have double Record Routing[1] disaabled. That's 
why it seems OpenSIPS is not figuring out corrrectly the outbound 
interface for sequential messages. Could you send a SIP trace done on 
the OpenSIPS server (privately if posting here is an issue)?

This also explains the 30 seconds timeout - if asterisk is not receiving 
the ACK within 30 seconds, it closes the call.

[1] http://www.opensips.org/html/docs/modules/2.3.x/rr.html#idp5519008

Best regards,

Răzvan Crainea
OpenSIPS Developer

On 10/23/2017 09:44 AM, Daniel Lakeland wrote:
> Further thoughts here on ipv4/v6 dual stacked servers.
> Once I solved the pinging problem, I still didn't solve the problem 
> that calls wouldn't go through when they had to be relayed around 
> through paths that crossed IP families.
> For example IPv4 phone calls to proxy
> proxy forwards to dual-stack PBX via IPv6
> pbx sends new call back to proxy via IPV6 heading to SIP trunk on ipv4
> proxy sends call via ipv4 to sip trunk...
> eventually in all this stuff, you're going to get a situation where 
> opensips tries to reuse a socket and can't send because it's got the 
> wrong kind of socket (wrong address family). The result is an error like:
> Oct 22 23:03:15 orbit2 /usr/sbin/opensips[15818]: 
> ERROR:core:proto_udp_send: 
> sendto(sock,0x7f99be07f380,737,0,0x7ffc04b0f3c0,16): Network is 
> unreachable(101) [x.x.x.x:5060]
> Oct 22 23:03:15 orbit2 /usr/sbin/opensips[15818]: ERROR:core:msg_send: 
> send() to x.x.x.x:5060 for proto udp/1 failed
> I personally think that "mhomed" should do this right, but my testing 
> indicated it didn't in 2.3.1 deb packages from opensips APT repository.
> Instead what I have is a special "fixup" type route on request and 
> reply which tries to figure out what address we're about to send to, 
> and then forces the right socket. It seems bug prone, and I've had to 
> debug it a lot the last day or so. I still don't know what happens 
> when I try to do several transformations and one of them fails... like
> $var(thefam) = $(ru{uri.host}{ip.resolve}{ip.pton}{ip.family})
> sometimes gives:
> Oct 22 23:21:40 orbit2 /usr/sbin/opensips[15971]: 
> WARNING:core:do_assign: no value in right expression at 
> /etc/opensips/opensips.cfg:621
> I'm not sure why
> Things maybe are working now, but I REALLY think mhomed should be 
> looked at in the context of dual stack.
> _______________________________________________
> Users mailing list
> Users at lists.opensips.org
> http://lists.opensips.org/cgi-bin/mailman/listinfo/users

More information about the Users mailing list