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) 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@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@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/ >> -- >> 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/ -- 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@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