[OpenSIPS-Users] Port changes
Schneur Rosenberg
rosenberg11219 at gmail.com
Wed Feb 14 06:45:40 EST 2018
You're right, I noticed that the port was wrong at the first invite,
but I didn't realize that it was fixed, I thought it left it
untouched, I just checked again and you're correct it did fix it.
Is there any downside (besides for obvious performance reasons) to
call fix_nated_contact() on each packet? 99% of our customers are
behind NAT anyway, I assume it cant hurt, I assume it uses the
received IP and port to rewrite the contact, so even if the correct
IP and port was sent with the initial invite it wont do any harm, is
my assumption correct?<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>
On Wed, Feb 14, 2018 at 11:24 AM, Bogdan-Andrei Iancu
<bogdan at opensips.org> wrote:
> 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
>> <bogdan at 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 at lists.opensips.org
>>>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>>
>>>
>
More information about the Users
mailing list