On 20 March 2013 03:05, David Thomson <jdavidthom...@hotmail.com> wrote:
> hi, > > I have two kamailio 3.3.4 servers sharing one database. usrloc module is > loaded on both machines. The DNS name for the machines is shared (i.e > siptest.testdomain.com with 2 public ip's - one for Server1 and one for > Server2) and setup in round robin mode. > > The scenario is as follows: > User 1 registers to Server1 > User 2 registers to Server2 > > User1 tries to call User2 but Server1 throws an error and the call doesn't > ever connect to User2: > > WARNING: usrloc [udomain.c:321]: non-local socket > <udp:xxx.xxx.xxx.xxx:5060>...ignoring. > > Hi I think you can use the t_replicate function within your register route so that each server will replicate the registration request to the other. I did this many years ago on OpenSER using the following just before the consume_credentials() line. On each of the servers you want to check that the src_ip is not that of the OTHER sever so they don't keep sending back and forth forever :-) So in the example below 10.0.1.1 is the IP of the other server. --------8<----------------------------------------- if (!src_ip==10.0.1.1) { t_replicate("udp:10.0.1.1:5060"); xlog("L_INFO", "Replicating $ct, URI = $ru"); }; consume_credentials(); --------8<----------------------------------------- Have a look at http://www.kamailio.org/docs/modules/3.3.x/modules/tm.html#t_replicate Hope this helps. -Barry
_______________________________________________ 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