Goal (short description)
Goal is to server multiple sip domains in one instance of OpenSer or Ser
Applicability
Consider if you want to serve more domain on one server. Don't mess it with aliasing.
Alias: jan@software.cesnet.cz and jan@hardware.cesnet.cz lead to one identity
Multidomain: jan@software.cesnet.cz and jan@hardware.cesnet.cz can lead to diferent identity.
It also used for completely different domains like sipdomainA adn sipdomainB in one server.
Prerequisites (OS, dependencies on other software)
- installed OpenSER or SER (tested with 0.9.x)
Configuration (OS agnostic)
configuration file changes
- Load the domain module
loadmodule "/usr/local/lib/ser/modules/domain.so"
- Set modules
Set all modules that you use and that have use_domain parameter to 1 i.e.:modparam("usrloc|registrar|auth_db|avpops|group", "use_domain", 1)
- Find all uri==myself tests and change them to (is_uri_host_local() || uri==myself) or
just is_uri_host_local(). It depends whether you want to accept uri with server name, server name aliases or server IPs in domain part in particular test.
- is_from_local() function checks from domain part against domain table
Domain manipulation
- serctl domain add domainname adds a new domain
- serctl domain rm domainname removes domain
Be careful if you set SIP_DOMAIN, rather delete it to avoid confusion. If you forget to use domain part when you manipulate with users SIP_DOMAIN is used. If it is not set you will warned.