Hello everybody,
I am currently using Kamailio in order to separate traffic based on dialed
number.
Some traffic goes to several Asterisk in a load balance strategy and other
traffic goes to other SIP devices.
I use carrierroute module in order to route traffic based on destination. I
use scan_prefix to classify traffic and rewrite_host to route the traffic.
A destination number usually go to one of 4 asterisk server. I do this in
order to load balance the traffic. In order to distribute traffic I use
prob (0.25 for each destination).
Using this configuration, I have to include on carrieroute table a row for
each destination node. Since the amount of destination is huge, I have to
repeat configuration in tables. It also complicates maintenance.
I was thinking of using a combination of carrierroute and dispatcher
module. Carrierroute for classify traffic, strip numbers, and rewrite
destination host and dispatcher to distribute the traffic over asterisk.
Using this configuration I have to indicate asterisk nodes once in
dispatcher table once. Also in carrierroute table I have to indicate each
prefix once.
I was thinking in something like this.
if(!cr_route("carrier", "domain", "$rU", "$rU",
"call_id")){
sl_send_reply("403", "Not allowed");
drop;
}
if(!ds_select_dst("1", "4")) {
sl_send_reply("403", "Not allowed");
drop;
}
t_relay;
Does it make sense, or am I complicating everything and there is a magic
way to achieve this.
Thank you.