Kamailio не срабатывает фэйловер (dispatcher)

Kamailio/OpenSIPS и другие производные от SER.

Модераторы: Admins, Модераторы

Ответить
jpvis
Сообщения: 56
Зарегистрирован: 14 сен 2010, 14:18

Kamailio не срабатывает фэйловер (dispatcher)

Сообщение jpvis » 17 сен 2014, 08:01

Всем привет,

Попытался запустить фэйловер на камаилио 4 версии на Астериски 1.8.X версии

roundrobin работает корректно (ds_select_dst("1", "4")) при dispatcher.list :

1 sip:192.168.1.1:5060
1 sip:192.168.1.2:5060

Но мне нужен фэйловер (ds_select_dst("1", "8")) я меняю dispatcher.list на

1 sip:192.168.1.1:5060
2 sip:192.168.1.2:5060

И это не работает.

Вот части конфига диспатчера :

modparam("dispatcher", "list_file", "/var/run/kamailio/dispatcher.list")
modparam("dispatcher", "force_dst", 1)
modparam("dispatcher", "flags", 2)
modparam("dispatcher", "dst_avp", "$avp(AVP_DST)")
modparam("dispatcher", "grp_avp", "$avp(AVP_GRP)")
modparam("dispatcher", "cnt_avp", "$avp(AVP_CNT)")
modparam("dispatcher", "ds_ping_from", "sip:proxy@192.168.1.3")
modparam("dispatcher", "ds_ping_interval",15)
modparam("dispatcher", "ds_probing_threshhold", 3)
modparam("dispatcher", "ds_ping_method", "INFO")
modparam("dispatcher", "ds_probing_mode", 1)
modparam("dispatcher", "ds_ping_reply_codes", "class=2;code=403;code=404;code=484;class=3")


route {

route(DISPATCH);


# Dispatch requests
route[DISPATCH] {
# round robin dispatching on gateways group '1'
if(!ds_select_dst("1", "8"))
{
send_reply("404", "No destination");
exit;
}
xlog("L_DBG", "--- SCRIPT: going to <$ru> via <$du>\n");
t_on_failure("RTF_DISPATCH");
route(RELAY);
exit;
}

route[RELAY] {
if (!t_relay()) {
sl_reply_error();
}
exit;
}


# Sample failure route
failure_route[RTF_DISPATCH] {
if (t_is_canceled()) {
exit;
}
# next DST - only for 500 or local timeout
if (t_check_status("500")
or (t_branch_timeout() and !t_branch_replied()))
{
ds_mark_dst("ip");
xlog("L_INFO", "Marking GW as failed...\n");
if(ds_next_dst())
{
t_on_failure("RTF_DISPATCH");
route(RELAY);
exit;
}
}

У Астерисков сип конфиг такой

[Kam-SBC]
type=friend
host=192.168.1.3
port=5060
disallow=all
allow=alaw
allow=ulaw
context=SBC-Incoming
canreinvite=no
insecure=port,invite
dtmfmode=rfc2833
nat=yes
qualify=yes

По сути это конфиг взятый с оффициально документации.

Может есть идея в чем проблема и куда копать ?

Игорь
Сообщения: 232
Зарегистрирован: 10 авг 2009, 13:36
Откуда: НН
Контактная информация:

Сообщение Игорь » 19 сен 2014, 20:10

1 sip:192.168.1.1:5060
2 sip:192.168.1.2:5060


так а нет тут failover'a, для dst-id 1 это разные группы.

сделайте:

1 sip:192.168.1.1:5060
1 sip:192.168.1.2:5060

и алгоритм оставьте 8
рву шаблоны. дорого.

Ответить