I am working with v5.0.3 and the IMS extensions.
When I attempt to send a SIP MESSAGE from the application server towards the
UE, the I-CSCF used to determine the S-CSCF for the subscriber by sending a
Location-Info request to the HSS. I found that this request was failing
because the IMPU (IMS Public User Identity) was being mangled by the I-CSCF,
prefixing the user part with a + symbol.
The example configuration file for the I-CSCF does in-fact does cause the
r-uri to be prefixed with a + …
[View More]symbol if one is not already present. I'm
wondering why since it breaks the LIR/LIA lookup.
AS I-CSCF HSS
| MESSAGE | |
| ---------------------> | |
| sip:ron@provider1.test | |
| | |
| | |
| | LIR |
| | ----------------------> |
| | sip:+ron@provider1.test |
| | |
| | |
| | DIAMETER_UNKNOWN_USER |
| | <---------------------- |
| | |
| | |
| 403 | |
| <--------------------- | |
| FORBIDDEN | |
route{
#!ifdef WITH_DEBUG
xlog("I-CSCF >>>>>>>>>>>>>>>>>>>> $rm $ru ($fu => $tu ($si:$sp) to $tu,
$ci)\n");
#!endif
if !($rU =~ "\+.*") {
prefix("+");
}
...
Thanks,
Ron
[View Less]
Hello,
In my script I've had to test for the user=phone parameter in URIs. I
thought uri_param() from siputils would be handy for this operation on the
RURI, so I did:
if ( !uri_param("user","phone") ) {
add_uri_param("user=phone");
}
Unfortunately this wouldn't work (uri_param returns -1), and I end up with
double user=phone params in the RURI.
I was able to work around this by changing the test to:
if ( !($(ru{uri.uparam}) == "phone") ) {
add_uri_param("user=…
[View More]phone");
}
But I wanted to ask if this is intentional or if I should file a bug or
something. Thanks.
George
[View Less]
Hello,
I am considering to release Kamailio v5.0.4 later this week, likely on
Wednesday or Tuesday. If you are aware of any issue in branch 5.0 which
is not yet reported on github.com/kamailio/kamailio issues tracker, then
do it as soon as possible to have a chance to look at it.
Cheers,
Daniel
--
Daniel-Constantin Mierla
www.twitter.com/miconda -- www.linkedin.com/in/miconda
Kamailio Advanced Training, Nov 13-15, 2017, in Berlin - www.asipto.com
Kamailio World Conference - www.kamailioworld.com
Hi,
I started using db_cluster module.
DB are master-slave replication both ways.
#!define DBURL "cluster://kamailio"
when i stop the primary mysql server, all subscribers fails to register
again.
seems like the usrloc module does not work with the cluster.
modparam("usrloc", "db_mode", 1)
modparam("db_cluster", "cluster", "kamailio=>primary=9s9s;secondary=8s8s")
it works OK for modules like dispatcher and htable to reload from DB.
it shows the sql driver errors, but reloads from …
[View More]the secondary server.
I need auto expire, so, p_usrloc is not a good option.
working with version 4.2
any ideas ?
Uri
[View Less]
Hello,
I'm trying to replace two old Audiocodes gateways (used to interconnect our Skype for Business infrastructure to the PSTN) with a new Kamailio cluster.
I am having some trouble to get the TLS mutual authentication working with Kamailio. For the moment, I'm just trying to receive the incoming OPTIONS from SfB, but I get all the time certificate verification errors:
ERROR: tls [tls_util.h:42]: tls_err_ret(): TLS accept:error:14089086:SSL routines:ssl3_get_client_certificate:certificate …
[View More]verify failed
ERROR: <core> [tcp_read.c:1330]: tcp_read_req(): ERROR: tcp_read_req: error reading
My tls.cfg is quite simple, with the same config for client and server (and one single listen=tls:<my IP>:5061 in the Kamailio.cfg file)
[server:default]
method = TLSv1+
verify_certificate = yes
require_certificate = yes
private_key = /usr/local/etc/kamailio/tls/key_gw_sfb.pem
certificate = /usr/local/etc/kamailio/tls/cert_gw_sfb.pem # => This certificate's Subject is the DNS alias for the cluster, with all the kamailios in the cluster as Subject Alternative Names
ca_list = /usr/local/etc/kamailio/tls/myca_and_sfbca.pem # => Kamailio and Skype for Business are signed by different CAs, so here I concatenated all intermediate and root CAs
[client:default]
method = TLSv1+
verify_certificate = yes
require_certificate = yes
private_key = /usr/local/etc/kamailio/tls/key_gw_sfb.pem
certificate = /usr/local/etc/kamailio/tls/cert_gw_sfb.pem
ca_list = /usr/local/etc/kamailio/tls/myca_and_sfbca.pem
When I run Kamailio, I can see incoming OPTIONS from Microsoft Exchange Unified Messaging (UM), whose certificate I verify without any issues. UM presents a certificate issued for a single machine, so no Subject Alternative Names (SANs) are involved.
The problem comes with the TLS handshake for the Skype Mediation pool. They have a certificate with Subject = DNS alias and all the physical machines that are behind the alias appear listed as Subject Alternative Names (SANs) in the certificate.
As the only difference between UM and Skype's Mediation is the certificate's Subject, I think I am missing something on my configuration to validate the SANs instead of the subject. Is the TLS module doing any reverse DNS lookup to verify this?
Thanks,
Francisco.
[View Less]
Hello there,
I'm writing here in order to get your experiences about a Presence & IM
server.
I would like to know what is the best solution to follow:
- SIP Simple or XMPP?
I've more knowledge about SIP Simple with kamailio but i did some
researches and i found several open sources unified communications software
that's implement Presence and IM using an XMPP server.
So what is your opinion about which is the best solution to choose, taking
in considerations the following aspects:
…
[View More] 1. scalability
2. interopeability
3. permornace
4. features(like: Personal assistance, voicemail integration, chat
group, integration with social media)
Should i choose Kamailio SIP Simple with xcap or an XMPP server(Prosody or
ejabberd, etc)
I will appreciate a lot your opinion.
Thank you
Regards
José
--
Cumprimentos
José Seabra
[View Less]
Hi All,
I have a strange issue, I have set the module parameter for nathelper's
force_socket to a specfic ip/port, however, when I perform a sip trace I
can see that all locally generated options messages are not sent from
the socket defined in the modules parameters.
I am not setting $fs anywhere in the script, so I am not over-writing
it. Do any of the other module parameters have a bearing on if nathelper
uses the force_socket parameter?
My current nathelper settings are:
modparam("…
[View More]nathelper", "received_avp", "$avp(RECEIVED)")
modparam("nathelper", "natping_interval", 20)
modparam("nathelper", "natping_processes", 4)
modparam("nathelper", "ping_nated_only", 1)
modparam("nathelper", "sipping_from", "sip:keepalive@domain.com")
modparam("nathelper", "sipping_method", "OPTIONS")
modparam("nathelper", "sipping_bflag", NAT_BFLAG)
modparam("nathelper", "force_socket", "1.2.3.4:5060")
I am using kamailio v4.3.1:
# kamailio -V
version: kamailio 4.3.1 (x86_64/linux) f38e67
flags: STATS: Off, USE_TCP, USE_TLS, USE_SCTP, TLS_HOOKS, USE_RAW_SOCKS,
DISABLE_NAGLE, USE_MCAST, DNS_IP_HACK, SHM_MEM, SHM_MMAP, PKG_MALLOC,
F_MALLOC, DBG_F_MALLOC, USE_FUTEX, FAST_LOCK-ADAPTIVE_WAIT,
USE_DNS_CACHE, USE_DNS_FAILOVER, USE_NAPTR, USE_DST_BLACKLIST,
HAVE_RESOLV_RES
ADAPTIVE_WAIT_LOOPS=1024, MAX_RECV_BUFFER_SIZE 262144, MAX_LISTEN 16,
MAX_URI_SIZE 1024, BUF_SIZE 65535, DEFAULT PKG_SIZE 8MB
poll method support: poll, epoll_lt, epoll_et, sigio_rt, select.
id: f38e67
compiled on 18:15:23 Jul 20 2015 with gcc 4.4.7
Thanks
[View Less]