On Thu, Aug 25, 2016 at 01:34:30PM -0400, Mike Patterson wrote:
Thank you. I am reviewing the doc. I am new to Kamailio so it will take some time for me.
Good luck then :)
Here is my slightly redacted config for a setup similar to yours (which is just a loadbalancer/proxy), which uses both contact rewriting (invites) and Path (registers) and dispatcher to contact the backends. It is based on the default config supplied with kamailio (so look there for REQINIT and WITHINDLG and anything not listed here) and has NATting stuff enabled by default (for SIP, RTP is handled elsewhere). I don't pretend to know that it works perfectly, it just works fine for me.
request_route { route(REQINIT); route(NATDETECT); route(WITHINDLG);
if (is_method("INVITE|SUBSCRIBE")) { record_route(); }
if(!is_in_subnet($si, "x.x.x.x/30")) { add_path_received("fromlb"); ds_select_dst(1, 0); t_on_failure("RTF_DISPATCH"); } else { remove_hf("Route"); loose_route(); }
route(RELAY); }
route[NATDETECT] { if(!is_in_subnet($si, "x.x.x.x/30")) { if (!is_method("REGISTER") && is_first_hop()) { set_contact_alias(); } }
return; }
route[NATMANAGE] { if(!is_in_subnet($si, "x.x.x.x/30")) { if (is_reply() && is_first_hop()) { set_contact_alias(); } }
return; }