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) 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
>>>> 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
>>> --
>>> Daniel-Constantin Mierla --www.asipto.com
>>>
www.twitter.com/miconda --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/
>>
>> __________________________________________________________
>> Kamailio - Users Mailing List - Non Commercial Discussions
>> *sr-users(a)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
> --
> Daniel-Constantin Mierla --www.asipto.com
>
www.twitter.com/miconda --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/
--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/