Jump to content

register to carriers in cluster mode


80tech

Recommended Posts

Hi all,

I am using kazoo 4.3.

The carrier I am using needs registration for each client. I implemented it by setting the config of FreeSWITCH. It works well when I use a FreeSWITCH server.

The problem appears in cluster mode. If there are over 2 FreeSWITCH servers, for redundancy, I need to have each FreeSwitch registered with the same configuration. Each FreeSwitch server will register with the same accounts. But the carrier only allows one terminal to register at the same time.

Is there any better solution for this case in cluster mode?

Thanks

Tommy

Link to comment
Share on other sites

This is why registration is not part of default Kazoo---it breaks the scalability and redundancy.

Although some providers do require registration before allowing outbound calls, registration is generally a thing for incoming calls, which come in to Kamailio, not Freeswitch, so registering from Freeswitch will likely break incoming calls for you.

A better solution is to register with Kamailio. You can do this with the UAC Kamailio module (not enabled by default). Then Kamailio will register to your provider for incoming calls, and outbound calls will just use the user/password auth from all Freeswitch servers you have. 

But IF your provider requires registration before allowing outbound calls, as well as inbound, then you can still make it work. What you'll need to do is in addition to using UAC, append ;fs_path=sip:KAMAILIO_IP_ADDR to your gateway server in your Kazoo carrier resource (whether offnet or account level).

Example:

sip.ruhnet.co;fs_path=sip:111.222.123.123

 where sip.ruhnet.co is your carrier sip server and 111.222.123.123 is the IP of your Kamailio server.

This will force Freeswitch to send outbound calls to that carrier through your Kamailio server. If you have more than one Kamailio server, you'll have to pick which one you want to use for this carrier. 

In theory, it's possible to still have redundancy for this situation, but it would require two additional external Kamailio servers sharing a floating IP (your own intermediate "carrier" just to connect to this one limited registration-only carrier.) But if you must do something like that then it's probably a lot smarter just to change carriers to one that supports IP auth. 😀

Edited by RuhNet (see edit history)
Link to comment
Share on other sites

×
×
  • Create New...