Hello,
it is not very clear -- is that the INVITE is replied with 4017 by one server (A) and them the client is resending the INVITE with credentials, but it gets to the other server (B)?
You say that the 407 is getting to the other server, which is rather confusing how it may happen.
Cheers, Daniel
On 25/03/16 05:19, Rex Lin (林昱頡) wrote:
Hi admins,
I'm kinda new in this group and I'm not quite sure if I'm posting in a correct way, advise if I'm wrong.
below is my post.
I would like to activate Dispatcher module for apply Load Balance functionality purpose.
but it's been hard to complete so far, I wonder if you can give me some advise in below situation.
we have 2 Kamailios, the version is 4.3.3 ; we use domain for the SIP registration.
we want to make Kamailios work in double active mode for SIP load balancing,
we have a F5 to do the domain name round robin to make two UAC regitering under two UAS.
I have put the "route(DISPATCH) b4 PSTN in request_route.
when I try to make UAC-A call to UAC-B, it appears 407 proxy authentication required.
we wiresharked, UAS has sent INVITE to UAS-B, but UAS-B sent the error code 407 to UAS-A
Is the configuration has to be set to "UAS-B accepting INVITE of UAS-A" ?
or the UAS-A should carrying the auth info into UAS-B ?
detail configuration as below.
dispatcher params
modparam("dispatcher", "list_file", "/usr/local/etc/kamailio/dispatcher.list")
modparam("dispatcher", "flags", 1)
modparam("dispatcher", "dst_avp", "$avp(AVP_DST)")
modparam("dispatcher", "grp_avp", "$avp(AVP_GRP)")
modparam("dispatcher", "cnt_avp", "$avp(AVP_CNT)")
modparam("dispatcher", "sock_avp", "$avp(AVP_SOCK)")
modparam("dispatcher", "ds_ping_interval", 30)
modparam("dispatcher", "ds_ping_from", "sip:kamailio1@awesomedomain.com")
modparam("dispatcher", "ds_ping_method", "OPTIONS")
modparam("dispatcher", "ds_probing_mode", 1)
modparam("dispatcher", "ds_probing_threshold", 1)
DISPATCHER Routing
route[DISPATCH] {
# round robin dispatching on gateways group '1'
if(!ds_select_dst("1", "4")) { send_reply("404", "No destination"); exit; } xdbg("--- SCRIPT: going to <$ru> via <$du>\n"); t_on_failure("RTF_DISPATCH"); route(RELAY); exit; }
# Re-route in case of failure
failure_route[RTF_DISPATCH] {
if (t_is_canceled()) { exit; }
# next node - only for 500 or local timeout
if (t_check_status("500") || (t_branch_timeout() &&
!t_branch_replied())) {
if(ds_next_dst()) { t_on_failure("RTF_DISPATCH"); route(RELAY); exit; } }
}
Best Regards,
Rex Lin
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list sr-users@lists.sip-router.org http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users