To your failure_route used for dispatcher rollover, add:

   if(t_check_status(“407|401”)) 
      exit;
   
This will allow the 401/407 challenge to be fed back to the original caller.

— Alex

> On Mar 13, 2023, at 8:27 PM, Jawaid Bazyar <[email protected]> wrote:
> 
> Hi Alex,
> 
> I did try round-robin, but it has a different issue, which is that calls from 
> a handset through the Kamailio to say asterisk1, trigger authentication 
> challenge, then when the auth comes back from the client, Kam decides that's 
> a failure, goes into the failover logic, and it round robins the client's 
> auth to the -other- asterisk asterisk2, which then rejects the auth attempt 
> as having a stale nonce (which is right, since it came from the other 
> asterisk).
> 
> I haven't yet figured out how to keep affinity for the same asterisk except 
> by routing based on CallID.
> 
> I guess the other option would be to tell Dispatcher that 401 Auth is not a 
> 'failure'. If I can figure that out, then I can try with round robin.
> 
> Jawaid
> 
> --
> 
> 
> On 3/13/23, 6:09 PM, "Alex Balashov" <[email protected] 
> <mailto:[email protected]>> wrote:
> 
> 
> I wonder if the distribution algorithm you have chosen behaves differently in 
> this regard. Have you tried plain round-robin (i.e. #4)?
> 
> 
>> On Mar 13, 2023, at 6:59 PM, Jawaid Bazyar <[email protected] 
>> <mailto:[email protected]>> wrote:
>> 
>> Hi,
>> 
>> Maybe it would be easier to explain my expectations on how it's supposed to 
>> work, and then you can tell me where I'm making a wrong assumption __
>> 
>> So, load balancers like haproxy etc perform "health checks" on the service 
>> being balanced. In this case, I have it setup for Kamailio to send OPTIONS 
>> and I do in fact see those packets and 200 OK responses. And if haproxy sees 
>> a host is down, it immediately stops trying to send client requests to that 
>> host.
>> 
>> In this case, after 10 successful OPTIONS pings, Kamailio marks the 
>> destination as AP and everything is fine, Kamailio correctly returns the 
>> destination in ds_select_dst.
>> 
>> I have the settings below, so that if the service misses 5 OPTIONS checks, 
>> Kamailio should mark that destination as "inactive".
>> But, it should keep probing it, so Kamailio can detect when the destination 
>> comes back up. So as I understand it, that's the status "IP".
>> 
>> And, Kamailio should stop including that destination in the responses from 
>> ds_select_dst().
>> 
>> And all of that is behaving as expected, EXCEPT that last bit - 
>> ds_select_dst continues to include the IP (inactive) destination in 
>> responses.
>> 
>> I added
>> 
>> ds_mark_dst("ip"); 
>> 
>> in the event of a 500 or branch failure response, but I don't understand why 
>> this is needed, because the destination is already in "IP" mode.
>> 
>> So seemingly Kamailio knows the destination is inactive, but ds_select_dst 
>> isn't acting on it unless I manually mark the target also.
>> 
>> Perhaps I am overlooking an option?
>> 
>> Regards,
>> 
>> Jawaid
>> 
>> 
>> On 3/13/23, 9:51 AM, "Henning Westerholt" <[email protected] 
>> <mailto:[email protected]> <mailto:[email protected] <mailto:[email protected]>>> 
>> wrote:
>> 
>> 
>> Hello,
>> 
>> 
>> probing means in this context sending OPTIONS pings, yes.
>> 
>> 
>> In mode 1 you can disable the probing by setting flag 4 to the destination 
>> in the dispatcher file, according to the docs.
>> 
>> 
>> Cheers,
>> 
>> 
>> Henning
>> 
>> 
>> -----Original Message-----
>> From: Henning Westerholt <[email protected] <mailto:[email protected]> 
>> <mailto:[email protected] <mailto:[email protected]>>> 
>> Sent: Montag, 13. März 2023 15:55
>> To: Kamailio (SER) - Users Mailing List <[email protected] 
>> <mailto:[email protected]> <mailto:[email protected] 
>> <mailto:[email protected]>>>
>> Subject: [SR-Users] Re: Dispatcher behavior
>> 
>> 
>> Hello,
>> 
>> 
>> not sure what the "auto-probing" mode is, but you can configure the 
>> dispatcher OPTIONS ping behaviour with that parameter:
>> 
>> 
>> https://kamailio.org/docs/modules/5.5.x/modules/dispatcher.html#dispatcher.p.ds_probing_mode
>>  
>> <https://kamailio.org/docs/modules/5.5.x/modules/dispatcher.html#dispatcher.p.ds_probing_mode>
>>  
>> <https://kamailio.org/docs/modules/5.5.x/modules/dispatcher.html#dispatcher.p.ds_probing_mode>
>>  
>> <https://kamailio.org/docs/modules/5.5.x/modules/dispatcher.html#dispatcher.p.ds_probing_mode&gt;>
>> 
>> 
>> Cheers,
>> 
>> 
>> Henning
>> 
>> 
>> -----Original Message-----
>> From: Jawaid Bazyar <[email protected] <mailto:[email protected]> 
>> <mailto:[email protected] <mailto:[email protected]>>>
>> Sent: Montag, 13. März 2023 14:33
>> To: Kamailio (SER) - Users Mailing List <[email protected] 
>> <mailto:[email protected]> <mailto:[email protected] 
>> <mailto:[email protected]>>>
>> Subject: [SR-Users] Re: Dispatcher behavior
>> 
>> 
>> Hi Alex,
>> 
>> 
>> I don't see "auto-probing" in the documentation.. here is my dispatcher 
>> config that I snatched from somewhere on the Internet.
>> 
>> 
>> modparam("dispatcher", "db_url", "mysql://xxxxxxx/kamailio") #Use DBURL 
>> variable for database parameters
>> modparam("dispatcher", "flags", 2) # If flag 2 is set, then the failover 
>> support is enabled.
>> modparam("dispatcher", "table_name", "dispatcher")
>> modparam("dispatcher", "ds_ping_interval", 5) #How often to ping 
>> destinations to check status
>> modparam("dispatcher", "ds_ping_method", "OPTIONS") #Send SIP Options ping
>> modparam("dispatcher", "ds_probing_threshold", 5) #How many failed pings in 
>> a row do we need before we consider it down
>> modparam("dispatcher", "ds_inactive_threshold", 10) #How many sucessful 
>> pings in a row do we need before considering it up
>> modparam("dispatcher", "ds_ping_latency_stats", 1) #Enables stats on latency
>> modparam("dispatcher", "ds_probing_mode", 1) #Keeps pinging gateways when 
>> state is known (to detect change in state)
>> 
>> 
>> 
>> 
>> 
>> 
>> On 3/12/23, 8:28 PM, "Alex Balashov" <[email protected] 
>> <mailto:[email protected]> <mailto:[email protected] 
>> <mailto:[email protected]>> <mailto:[email protected] 
>> <mailto:[email protected]> <mailto:[email protected] 
>> <mailto:[email protected]>>>> wrote:
>> 
>> 
>> 
>> 
>> Unless you have auto-probing enabled, yes.
>> 
>> 
>> 
>> 
>>> On Mar 12, 2023, at 9:14 PM, Jawaid Bazyar <[email protected] 
>>> <mailto:[email protected]> <mailto:[email protected] 
>>> <mailto:[email protected]>> <mailto:[email protected] 
>>> <mailto:[email protected]> <mailto:[email protected] 
>>> <mailto:[email protected]>>>> wrote:
>>> 
>>> Hi, is this expected behavior?
>>> I have two target hosts in a dispatcher set, 10.20.20.118 (prio 5) and 
>>> 10.20.20.252 (prio 10).
>>> When I have 10.20.20.252 turned off, dispatcher still tries to send packets 
>>> to that host, even when the status flags are IP.
>>> root@vs-rs01:/etc/kamailio# kamcmd dispatcher.list {
>>> NRSETS: 1
>>> RECORDS: {
>>> SET: {
>>> ID: 1
>>> TARGETS: {
>>> DEST: {
>>> URI: sip:10.20.20.252:5060
>>> FLAGS: IP
>>> PRIORITY: 10
>>> LATENCY: {
>>> AVG: 0.000000
>>> STD: 0.000000
>>> EST: 0.000000
>>> MAX: 0
>>> TIMEOUT: 62
>>> }
>>> }
>>> DEST: {
>>> URI: sip:10.20.20.118:5060
>>> FLAGS: AP
>>> PRIORITY: 5
>>> LATENCY: {
>>> AVG: 3.876000
>>> STD: 2.965000
>>> EST: 5.058000
>>> MAX: 14
>>> TIMEOUT: 0
>>> }
>>> }
>>> }
>>> }
>>> }
>>> }
>>> __________________________________________________________
>>> Kamailio - Users Mailing List - Non Commercial Discussions To 
>>> unsubscribe send an email to [email protected] 
>>> <mailto:[email protected]> 
>>> <mailto:[email protected] 
>>> <mailto:[email protected]>> 
>>> <mailto:[email protected] 
>>> <mailto:[email protected]> 
>>> <mailto:[email protected] 
>>> <mailto:[email protected]>>>
>>> Important: keep the mailing list in the recipients, do not reply only to 
>>> the sender!
>>> Edit mailing list options or unsubscribe:
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> --
>> Alex Balashov
>> Principal Consultant
>> Evariste Systems LLC
>> Web: https://evaristesys.com <https://evaristesys.com> 
>> <https://evaristesys.com> <https://evaristesys.com&gt;> 
>> <https://evaristesys.com> <https://evaristesys.com&gt;> 
>> <https://evaristesys.com&gt;> <https://evaristesys.com&amp;gt;&gt;>
>> Tel: +1-706-510-6800
>> 
>> 
>> 
>> 
>> __________________________________________________________
>> Kamailio - Users Mailing List - Non Commercial Discussions To unsubscribe 
>> send an email to [email protected] 
>> <mailto:[email protected]> 
>> <mailto:[email protected] 
>> <mailto:[email protected]>> 
>> <mailto:[email protected] 
>> <mailto:[email protected]> 
>> <mailto:[email protected] 
>> <mailto:[email protected]>>>
>> Important: keep the mailing list in the recipients, do not reply only to the 
>> sender!
>> Edit mailing list options or unsubscribe:
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> __________________________________________________________
>> Kamailio - Users Mailing List - Non Commercial Discussions To unsubscribe 
>> send an email to [email protected] 
>> <mailto:[email protected]> 
>> <mailto:[email protected] 
>> <mailto:[email protected]>>
>> Important: keep the mailing list in the recipients, do not reply only to the 
>> sender!
>> Edit mailing list options or unsubscribe:
>> __________________________________________________________
>> Kamailio - Users Mailing List - Non Commercial Discussions To unsubscribe 
>> send an email to [email protected] 
>> <mailto:[email protected]> 
>> <mailto:[email protected] 
>> <mailto:[email protected]>>
>> Important: keep the mailing list in the recipients, do not reply only to the 
>> sender!
>> Edit mailing list options or unsubscribe:
>> 
>> 
>> 
>> 
>> __________________________________________________________
>> Kamailio - Users Mailing List - Non Commercial Discussions
>> To unsubscribe send an email to [email protected] 
>> <mailto:[email protected]>
>> Important: keep the mailing list in the recipients, do not reply only to the 
>> sender!
>> Edit mailing list options or unsubscribe:
> 
> 
> -- 
> Alex Balashov
> Principal Consultant
> Evariste Systems LLC
> Web: https://evaristesys.com <https://evaristesys.com>
> Tel: +1-706-510-6800
> 
> 
> __________________________________________________________
> Kamailio - Users Mailing List - Non Commercial Discussions
> To unsubscribe send an email to [email protected] 
> <mailto:[email protected]>
> Important: keep the mailing list in the recipients, do not reply only to the 
> sender!
> Edit mailing list options or unsubscribe:
> 
> 
> 
> 
> __________________________________________________________
> Kamailio - Users Mailing List - Non Commercial Discussions
> To unsubscribe send an email to [email protected]
> Important: keep the mailing list in the recipients, do not reply only to the 
> sender!
> Edit mailing list options or unsubscribe:

-- 
Alex Balashov
Principal Consultant
Evariste Systems LLC
Web: https://evaristesys.com
Tel: +1-706-510-6800

__________________________________________________________
Kamailio - Users Mailing List - Non Commercial Discussions
To unsubscribe send an email to [email protected]
Important: keep the mailing list in the recipients, do not reply only to the 
sender!
Edit mailing list options or unsubscribe:

Reply via email to