Hi Schneur,

I see at initial INVITE you have the same issue - the contact advertises the 34063 port, but the source IP is 1090; and you do fix_nated_contact(). So, based on the initial contact, you learned that the caller device is behind a NAT (or with a bogus ALG). The idea is to remember this (caller requires help) during the whole dialog (maybe using some dialog flags) and each time you receive a request / reply from it -> do the fix_nated_contact(). This will trigger the fix on the 200 OK and to get a routable URI there.


Regards,

Bogdan-Andrei Iancu

OpenSIPS Founder and Developer
  http://www.opensips-solutions.com
OpenSIPS Summit 2018
  http://www.opensips.org/events/Summit-2018Amsterdam

On 02/13/2018 12:16 PM, Schneur Rosenberg wrote:
Bogdan its only happening when the clients SIP ALG fixes the contact,
when the contact is broken I'm already using fix_nated_contact, do you
think I should use fix_nated_contact even when the contact was already
fixed by the SIP ALG?

The clients router does not support disabling SIP ALG, I can try using
a non standard port, I've sen some routers ALG ignoring the packets
when sent to alternative port.

On Tue, Feb 13, 2018 at 12:04 PM, Bogdan-Andrei Iancu
<bog...@opensips.org> wrote:
Hi Schneur,

The ACK is routed back via the Route set (the Record Route headers from the
initial Invite) and the Contact received in the final reply (in the 200 OK
in your case). This is called in-dialog routing and is exclusively based on
Route set (RR headers + Contact).

The rport as part of via is used only for routing back the replies for a
requests (in transaction routing) and has no impact on the in-dialog
routing.

So, if the RURI in ACK (which should be the Contact in the received 200 OK)
is broken, maybe you should do a fix_nated_contact() for the Contact when
handling the 200 OK reply.

Best regards,

Bogdan-Andrei Iancu

OpenSIPS Founder and Developer
   http://www.opensips-solutions.com
OpenSIPS Summit 2018
   http://www.opensips.org/events/Summit-2018Amsterdam


On 02/12/2018 05:05 PM, Schneur Rosenberg wrote:
I have this interesting scenario, caller sends call to our OpenSIPS
who actsd as a loadbalancer which sends the call to a gateway for
termination and the gateway sets Session-Expires: 1800;refresher=uas,
the caller sends call the call through port 1090 and the rport in the
Via shows rport=1090 and so far everything is ok, but after 15 minutes
the gateway sends a reinvite,  OpenSIPS sends it to the client and the
client sends a OK and OpenSIPS properly sends the OK to the gateway,
the gateway sends a ACK to OpenSIPS, but here the problem starts
OpenSIPS sends the ACK to the port in the Contact header which is not
the same port as the rport, the clients router does not recognize the
packet and blocks it, the client sends multiple OK's to OpenSIPS who
ignores it because he has already moved on, as far as OpenSIPS is
concerned the ACK has already been sent to the next hop, and after
approx 30 seconds the client does not receive the ACK and sends a BYE
and the call terminates.

Why is OpenSIPS changing the port to the Contact port? and what can I
do to fix it?<div id="DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2"><br />
<table style="border-top: 1px solid #D3D4DE;">
         <tr>
          <td style="width: 55px; padding-top: 13px;"><a

href="http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail";
target="_blank"><img

src="https://ipmcdn.avast.com/images/icons/icon-envelope-tick-green-avg-v1.png";
alt="" width="46" height="29" style="width: 46px; height: 29px;"
/></a></td>
                 <td style="width: 470px; padding-top: 12px; color:
#41424e;
font-size: 13px; font-family: Arial, Helvetica, sans-serif;
line-height: 18px;">Virus-free. <a

href="http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail";
target="_blank" style="color: #4453ea;">www.avg.com</a>
                 </td>
         </tr>
</table><a href="#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2" width="1"
height="1"></a></div>

_______________________________________________
Users mailing list
Users@lists.opensips.org
http://lists.opensips.org/cgi-bin/mailman/listinfo/users



_______________________________________________
Users mailing list
Users@lists.opensips.org
http://lists.opensips.org/cgi-bin/mailman/listinfo/users

Reply via email to