[OpenSIPS-Users] Strange behavior on ipv4 / ipv6 dual stack server with/without mhomed
Daniel Lakeland
dlakelan at street-artists.org
Sat Oct 21 00:49:00 EDT 2017
I have a situation where my "internal" phones can call each other, even
when one is registered via ipv4 and one via ipv6 (thanks to some
rewriting of the SDP and Asterisk as a media server)
However, when I do the following, I get lines like the following in the
syslogs:
Oct 20 20:52:50 orbit2 /usr/sbin/opensips[14070]:
ERROR:core:proto_udp_send:
sendto(sock,0x7fc96010bb90,455,0,0x7fc9600cb570,16): Network is
unreachable(101) [xxx.xxx.xxx.xxx:5070]
Oct 20 20:52:50 orbit2 /usr/sbin/opensips[14070]: ERROR:tm:msg_send:
send() to xxx.xxx.xxx.xxx:5070 for proto udp/1 failed
Oct 20 20:52:50 orbit2 /usr/sbin/opensips[14070]: ERROR:tm:t_uac:
attempt to send to 'sip:1xxxxxxxxxx at xxx.xxx.xxx.xxx:5070' failed
Oct 20 20:52:51 orbit2 /usr/sbin/opensips[14070]:
ERROR:core:proto_udp_send:
sendto(sock,0x7fc96010bb90,455,0,0x7fc9600cb570,16): Network is
unreachable(101) [104
.237.158.242:5070]
Oct 20 20:52:51 orbit2 /usr/sbin/opensips[14070]: ERROR:tm:msg_send:
send() to xxx.xxx.xxx.xxx:5070 for proto udp/1 failed
Oct 20 20:52:52 orbit2 /usr/sbin/opensips[14070]:
ERROR:core:proto_udp_send:
sendto(sock,0x7fc96010bb90,455,0,0x7fc9600cb570,16): Network is
unreachable(101) [104
.237.158.242:5070]
Oct 20 20:52:52 orbit2 /usr/sbin/opensips[14070]: ERROR:tm:msg_send:
send() to xxx.xxx.xxx.xxx:5070 for proto udp/1 failed
Oct 20 20:52:54 orbit2 /usr/sbin/opensips[14070]:
ERROR:core:proto_udp_send:
sendto(sock,0x7fc96010bb90,455,0,0x7fc9600cb570,16): Network is
unreachable(101) [104
.237.158.242:5070]
Oct 20 20:52:54 orbit2 /usr/sbin/opensips[14070]: ERROR:tm:msg_send:
send() to xxx.xxx.xxx.xxx:5070 for proto udp/1 failed
Oct 20 20:52:58 orbit2 /usr/sbin/opensips[14070]:
INFO:dialog:reply_from_caller: terminating dialog ( due to timeout )
with callid = [23bddf6f5c321df91760ff3614340d7d at mydomain.org]
heres how the call flows:
Phone 1 ----ipv4 TLS -----> Proxy <---ipv4 UDP----> Asterisk on port
5070 same server as proxy <---ipv6 UDP ---> Proxy <-- ipv4 UDP---> provider
I get a call with audio for about 30 seconds and then OpenSips sends
errors and the call aborts. The provider's sip trace just shows a "Bye"
from asterisk, so I guess the call is aborting on the "phone" leg
I just discovered the "mhomed" variable, but when I tried this, it still
aborts.
I've tried manually forcing the socket... but I think maybe I'm not
doing it in all the appropriate places. It may also be that this is a
Red Herring, as it seems like the messages *do* get delivered?
What I see in a sip_trace is that the only things being sent to the
xxx.xxx.xxx.xxx:5070 port are messages from the proxy to asterisk on the
Phone1 side of the call. Though since the sending blocks and aborts in
the logs, I'm not sure if the stuck messages hit the sip trace.
I'm running the "firehol" firewall and it's a VPS server, I can't seem
to figure out how to remove the nf_conntrack_nat module as this vps has
no knowledge of the kernel modules. (?? I am not that familiar with the
VPS kernel environment) the proxy should be able to talk to Asterisk,
and in fact, it seems like doing an asterisk sip trace that asterisk is
getting the messages...
On the Phone 1 leg I see:
INVITE
Session Progress from asterisk
OK from asterisk
Ack from phone1
etc both are hitting the proxy and the asterisk server I believe
Please note that *when I call direct to another local sip phone I have
no problems*
I'm tearing my hair out a bit here
Can anyone think why opensips would have trouble sending like this? Is
this something specific to VPS virtual networking stuff?
THanks !
More information about the Users
mailing list