Did you add the handle_ruri_alias()
as suggested by
Daniel? I had something like this where I would get
“unable to resolve blah blah blah" and it’s because the
RURI is the actual wss “address” which is unresolvable,
so executing the function forces kamailio to take the
alias instead.
On Fri, 7 May 2021 at 13:48, Igor Olhovskiy
<igorolhovskiy(a)gmail.com
<mailto:igorolhovskiy@gmail.com>> wrote:
Daniel,
Seems to be it's really the case, but with other
function
With FQDN in RR
|is_first_hop()|
is not acting correctly for reply.
For incoming SIP replies, it
means that top
Record-Route URI is 'myself' and source address is
not matching it
But in Record-Route we have
"myself", but
*is_first_hop()* returning 0.
Thanks!
Regards,
Igor
On 07.05.2021 14:22, Daniel-Constantin Mierla wrote:
OK, because looping was something that should not
have happened in this case.
Then the problem is that you do not do
nat-traversal-like processing for websocket/webrtc
traffic. You have to use set_contact_alias() +
handle_ruri_alias() because the webrtc endpoints do
not set "valid" contact addresses.
Cheers,
Daniel
On 07.05.21 14:13, Igor Olhovskiy wrote:
>
> Ah, no, sorry, I was wrong at this one,
>
> This just is not sent with "unable to resolve
> address toleivu2gdbh.invalid".
>
> Sorry. Looping were something else during my
> tests, this just with *advertise* added
>
> Regards,
> Igor
> On 07.05.2021 14:02, Daniel-Constantin Mierla wrote:
>>
>> This looks like incoming ACK, because there is
>> only one Via header, so it is not what proxy
>> forwards -- that one is relevant to see what
>> headers were consumed and added.
>>
>> Cheers,
>> Daniel
>>
>> On 07.05.21 13:51, Igor Olhovskiy wrote:
>>> Sure.
>>>
>>> ACK sip:88290@toleivu2gdbh.invalid;transport=wss
>>> SIP/2.0
>>> Via: SIP/2.0/UDP
>>>
A_IP_ADDRESS:5060;rport;branch=z9hG4bKPj8d05548a-91ef-4332-8617-32f8eeebf8f2
>>> From:
>>>
<sip:88881@A_IP_ADDRESS>;tag=0a3e31a6-96ad-42d0-9310-81b35cedbd3d
>>> To: <sip:88290@KAMAILIO_FQDN>;tag=hvra7mj3q0
>>> Call-ID: 46f44741-d155-4dd5-8fd8-78e540fc1acb
>>> CSeq: 18326 ACK
>>> Route:
>>>
<sip:KAMAILIO_FQDN;lr;r2=on;ftag=0a3e31a6-96ad-42d0-9310-81b35cedbd3d;nat=wss>
>>> Route:
>>>
<sip:KAMAILIO_FQDN:8089;transport=ws;lr;r2=on;ftag=0a3e31a6-96ad-42d0-9310-81b35cedbd3d;nat=wss>
>>> Max-Forwards: 70
>>> User-Agent: Asterisk PBX 13.33.0
>>> Content-Length: 0
>>>
>>>
>>> By loop I meant, Kamailio just relaying it back
>>> to self and discard.
>>>
>>> Regards,
>>> Igor
>>> On 07.05.2021 13:48, Daniel-Constantin Mierla wrote:
>>>>
>>>> Can you paste the ACK that loops, after being
>>>> handled once by Kamailio?
>>>>
>>>> Cheers,
>>>> Daniel
>>>>
>>>> On 07.05.21 13:25, Igor Olhovskiy wrote:
>>>>>
>>>>> Daniel,
>>>>>
>>>>> Yes, it is.
>>>>>
>>>>> alias=...
>>>>>
>>>>> Also tried with
>>>>>
>>>>> listen = IP advertise FQDN
>>>>>
>>>>> same behavior, loose_route() stops acting
>>>>> correctly.
>>>>>
>>>>> PS: Forgot to add, Kamailio 5.4.3 / 5.4.4
>>>>>
>>>>> Regards,
>>>>> Igor
>>>>> On 07.05.2021 13:21, Daniel-Constantin Mierla
>>>>> wrote:
>>>>>>
>>>>>> Hello,
>>>>>>
>>>>>> is the KAMAILIO_FQDN set as local domain for
>>>>>> Kamailio (via alias parameter or domain
>>>>>> module+register myself)?
>>>>>>
>>>>>> Cheers,
>>>>>> Daniel
>>>>>>
>>>>>> On 07.05.21 11:17, Igor Olhovskiy wrote:
>>>>>>>
>>>>>>> Hello,
>>>>>>>
>>>>>>> I saw there are some topics on this already
>>>>>>> and carefully walked through all of them,
>>>>>>> but can't solve following issue.
>>>>>>>
>>>>>>> For a reason I do need that in Record-Route
>>>>>>> header sent to endpoint would present FQDN.
>>>>>>> If it matters, it's UDP/WSS conversion
done
>>>>>>> on Kamailio.
>>>>>>>
>>>>>>> So, scheme is quite simple
>>>>>>>
>>>>>>> Enpoint A ->UDP-> Kamailio
->WSS-> Endpoint
>>>>>>> B (NAT)
>>>>>>>
>>>>>>> Main issue here, that if in Record-Route
>>>>>>> headers it's FQDN, but not IP addresses,
on
>>>>>>> a new transactions with a dialog (ACK on
>>>>>>> 200, PRACK, BYE), Kamailio*loose_route()*
>>>>>>> function resolves address of destination not
>>>>>>> current dialog, but actual R-URI (or itself,
>>>>>>> if R-URI is something from WebRTC world)
>>>>>>> that is not correct due to NAT.
>>>>>>>
>>>>>>> If in RR headers IP addresses are present -
>>>>>>> all is working as expected.
>>>>>>>
>>>>>>> As an example (RR with FQDN)
>>>>>>>
>>>>>>> B answers 200
>>>>>>>
>>>>>>> SIP/2.0 200 OK
>>>>>>> Record-Route:
>>>>>>>
<sip:KAMAILIO_FQDN:8089;transport=ws;r2=on;lr=on;ftag=0a3e31a6-96ad-42d0-9310-81b35cedbd3d;nat=wss>
>>>>>>> Record-Route:
>>>>>>>
<sip:KAMAILIO_FQDN;r2=on;lr=on;ftag=0a3e31a6-96ad-42d0-9310-81b35cedbd3d;nat=wss>
>>>>>>> Via: SIP/2.0/UDP
>>>>>>> <A_IP_ADDRESS>:5060;received=A IP
>>>>>>>
ADDRESS;rport=5060;branch=z9hG4bKPj67fb6d86-97d7-4231-995b-e54b0f62881e
>>>>>>> To:
<sip:88290@<KAMAILIO_FQDN>>;tag=hvra7mj3q0
>>>>>>> From:
>>>>>>>
<sip:+XXXX7688881@<KAMAILIO_FQDN>>;tag=0a3e31a6-96ad-42d0-9310-81b35cedbd3d
>>>>>>> Call-ID:
46f44741-d155-4dd5-8fd8-78e540fc1acb
>>>>>>> CSeq: 18326 INVITE
>>>>>>> Contact:
>>>>>>>
<sip:88290@toleivu2gdbh.invalid;transport=wss>
>>>>>>> Allow:
>>>>>>>
ACK,CANCEL,INVITE,MESSAGE,BYE,OPTIONS,INFO,NOTIFY,REFER
>>>>>>> Supported: outbound
>>>>>>> Content-Type: application/sdp
>>>>>>> Content-Length: 817
>>>>>>>
>>>>>>>
>>>>>>> ACK looks like
>>>>>>>
>>>>>>> ACK
>>>>>>> sip:88290@toleivu2gdbh.invalid;transport=wss
>>>>>>> SIP/2.0
>>>>>>> Via: SIP/2.0/UDP
>>>>>>>
A_IP_ADDRESS:5060;rport;branch=z9hG4bKPj8d05548a-91ef-4332-8617-32f8eeebf8f2
>>>>>>> From:
>>>>>>>
<sip:88881@A_IP_ADDRESS>;tag=0a3e31a6-96ad-42d0-9310-81b35cedbd3d
>>>>>>> To:
<sip:88290@KAMAILIO_FQDN>;tag=hvra7mj3q0
>>>>>>> Call-ID:
46f44741-d155-4dd5-8fd8-78e540fc1acb
>>>>>>> CSeq: 18326 ACK
>>>>>>> Route:
>>>>>>>
<sip:FQDN;lr;r2=on;ftag=0a3e31a6-96ad-42d0-9310-81b35cedbd3d;nat=wss>
>>>>>>> Route:
>>>>>>>
<sip:FQDN:8089;transport=ws;lr;r2=on;ftag=0a3e31a6-96ad-42d0-9310-81b35cedbd3d;nat=wss>
>>>>>>> Max-Forwards: 70
>>>>>>> User-Agent: Asterisk PBX 13.33.0
>>>>>>> Content-Length: 0
>>>>>>>
>>>>>>> And Kamailio on *loose_route()* loops ACK to
>>>>>>> itself. (with result of function == 1)
>>>>>>>
>>>>>>> In a case if in Record-Route/Route headers
>>>>>>> just IP address of Kamailio present, all
>>>>>>> works as expected, but it's not really
>>>>>>> behavior I want to achieve.
>>>>>>>
>>>>>>> I've tried to play with
>>>>>>> *record_route_preset("...")*
specifying only
>>>>>>> WSS part (as suggested in
>>>>>>>
https://skalatan.de/de/blog/kamailio-sbc-teams
>>>>>>>
<https://skalatan.de/de/blog/kamailio-sbc-teams>)
>>>>>>> with FQDN, but no luck.
>>>>>>>
>>>>>>> Also wanted to try approach using
>>>>>>> record_route_preset() function in branch
>>>>>>> route, but it was working only with first
>>>>>>> branch, not affecting others (but I assume
>>>>>>> having different RR headers across branches
>>>>>>> is not a good idea)
>>>>>>>
>>>>>>> --
>>>>>>> Regards,
>>>>>>> Igor
>>>>>>>
>>>>>>>
__________________________________________________________
>>>>>>> Kamailio - Users Mailing List - Non
Commercial Discussions
>>>>>>> *sr-users(a)lists.kamailio.org
<mailto:sr-users@lists.kamailio.org>
>>>>>>> Important: keep the mailing list in the
recipients, do not reply only to the sender!
>>>>>>> Edit mailing list options or unsubscribe:
>>>>>>>
*https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
<https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users>
>>>>>> --
>>>>>> Daniel-Constantin Mierla --www.asipto.com
<http://www.asipto.com>
>>>>>>
www.twitter.com/miconda
<http://www.twitter.com/miconda> --www.linkedin.com/in/miconda
<http://www.linkedin.com/in/miconda>
>>>>>> Kamailio Advanced Training - Online
>>>>>> May 17-20, 2021 (Europe Timezone) - June 7-10,
2021 (America Timezone)
>>>>>>
*https://www.asipto.com/sw/kamailio-advanced-training-online/
<https://www.asipto.com/sw/kamailio-advanced-training-online/>
>>>>>
>>>>>
__________________________________________________________
>>>>> Kamailio - Users Mailing List - Non Commercial
Discussions
>>>>> *sr-users(a)lists.kamailio.org
<mailto:sr-users@lists.kamailio.org>
>>>>> Important: keep the mailing list in the recipients,
do not reply only to the sender!
>>>>> Edit mailing list options or unsubscribe:
>>>>>
*https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
<https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users>
>>>> --
>>>> Daniel-Constantin Mierla --www.asipto.com
<http://www.asipto.com>
>>>>
www.twitter.com/miconda
<http://www.twitter.com/miconda> --www.linkedin.com/in/miconda
<http://www.linkedin.com/in/miconda>
>>>> Kamailio Advanced Training - Online
>>>> May 17-20, 2021 (Europe Timezone) - June 7-10, 2021
(America Timezone)
>>>>
*https://www.asipto.com/sw/kamailio-advanced-training-online/
<https://www.asipto.com/sw/kamailio-advanced-training-online/>
>> --
>> Daniel-Constantin Mierla --www.asipto.com
<http://www.asipto.com>
>>
www.twitter.com/miconda <http://www.twitter.com/miconda>
--www.linkedin.com/in/miconda <http://www.linkedin.com/in/miconda>
>> Kamailio Advanced Training - Online
>> May 17-20, 2021 (Europe Timezone) - June 7-10, 2021 (America
Timezone)
>> *https://www.asipto.com/sw/kamailio-advanced-training-online/
<https://www.asipto.com/sw/kamailio-advanced-training-online/>
--
Daniel-Constantin Mierla --www.asipto.com <http://www.asipto.com>
www.twitter.com/miconda <http://www.twitter.com/miconda>
--www.linkedin.com/in/miconda <http://www.linkedin.com/in/miconda>
Kamailio Advanced Training - Online
May 17-20, 2021 (Europe Timezone) - June 7-10, 2021 (America Timezone)
*https://www.asipto.com/sw/kamailio-advanced-training-online/
<https://www.asipto.com/sw/kamailio-advanced-training-online/>
__________________________________________________________
Kamailio - Users Mailing List - Non Commercial
Discussions
* sr-users(a)lists.kamailio.org
<mailto:sr-users@lists.kamailio.org>
Important: keep the mailing list in the recipients,
do not reply only to the sender!
Edit mailing list options or unsubscribe:
*
<https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users>
--
Regards,
David Villasmil
email: david.villasmil.work(a)gmail.com
<mailto:david.villasmil.work@gmail.com>
phone: +34669448337
__________________________________________________________
Kamailio - Users Mailing List - Non Commercial Discussions
*sr-users(a)lists.kamailio.org <mailto:sr-users@lists.kamailio.org>
Important: keep the mailing list in the recipients, do not reply only to the
sender!
Edit mailing list options or unsubscribe:
*https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
<https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users>