Hello, I have a simple Kamailio server built that acts as a stateless load balancer for incoming SIP calls. All kamailio does here is receive the incoming call and route it round robin to a Freeswitch machine behind it. All configuration in Kamailio is done in local config files including the use of dispatcher.list. I have an external 3rd party partner sending my Kamailio machine SIP options pings. Because my Kamailio sends all incoming calls stateless to a FS machine behind it (round robin) the FS machines behind Kamailio get the incoming ping requests and generate the 200 OK reply back to kamailio. I would like the 3rd party to get a 200 OK for pings directly from my Kamailio and not from freeswitch behing it.
I have the need to scale FS machines on the fly so I don't want FS machines to be responsible for the sip options ping replies. I want Kamailio itself to reply with a static 200 OK to incoming ping requests. I have looked into nathelper and siputils options_reply to see if I could get a simple static config to handle this 200 OK directly from Kamailio. I cant get it to fully work as the incoming sip pings still hit freeswitch. How can I configure this in the kamailio.cfg to get kamailio itself to reply with a 200 OK to SIP Options Pings and NOT forward the ping request to freeswitch?
Here is my current simple stateless LB config in kamailio that works great for what it is and for what I need for loadbalancing incoming call requests.
route{
if ( !mf_process_maxfwd_header("10") )
{
sl_send_reply("483","To Many Hops");
drop();
};
ds_select_dst("1", "4");
forward(); #stateless forward
# t_relay(); #stateful relay
}
Here is a sample of what the incoming pings look like that hit Kamailio.
Using the above info what would a route look like in kamailio.cfg for this?
What specific modules need to be installed/enabled to make your suggested route functional?
Thanks guys