Hi, all
We're trying to build a system that consists of pbx,
kamailio and asterisk in the following configuration.
pbx (sip trunk) --- kamailio --- asterisk
The kamailio and asterisk are integrated with same
database. The outgoing calls to pbx works. But there is a
problem with incoming calls from pbx.
If we make a consecutive calls from the same pbx user to
the same user registered with kamailio. The first would go
through, but the second call would be rejected by asterisk. We
have insecure=invite set on the trunk/peer, so asterisk is not
supposed to auth the invite from kamailio. But the pbx user
(from in this case) is not in the database.
The asterisk log says:
[Jan 21 23:13:19] VERBOSE[20785] chan_sip.c: --- (16
headers 13 lines) ---
[Jan 21 23:13:19] VERBOSE[20785] chan_sip.c: Sending to
10.0.1.30:5061
(no NAT)
[Jan 21 23:13:19] VERBOSE[20785][C-00000001] chan_sip.c:
Sending to
10.0.1.30:5061 (no NAT)
[Jan 21 23:13:20] NOTICE[20785][C-00000001] acl.c: SIP
Peer ACL: Rejecting '10.0.1.30' due to a failure to pass ACL
'(BASELINE)'
[Jan 21 23:13:20] NOTICE[20785][C-00000001] chan_sip.c:
Failed to authenticate device <
sip:95678@10.0.1.35>;tag=as4028dabf
[Jan 21 23:13:20] VERBOSE[20785][C-00000001] chan_sip.c:
SIP/2.0 403 Forbidden^M
Via: SIP/2.0/TLS
10.0.1.30:5061;branch=z9hG4bK9c8e.5cd2c05f6a572312c7793abf5fe1183c.0;i=2;received=10.0.1.30^M
Via: SIP/2.0/TLS
10.0.1.35:5061;received=10.0.1.35;branch=z9hG4bK249855c1;rport=59929^M
CSeq: 102 INVITE^M
Server: Asterisk PBX 13.6.0^M
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER,
SUBSCRIBE, NOTIFY, INFO, PUBLISH, MESSAGE^M
Supported: replaces, timer^M
Content-Length: 0^M
Comparing the two invites from kamailio to asterisk, it
seems the only difference is that the second invite has an
"i=2" in the Via header while the first one has "i=1". Not
sure what the "i=1" is for. Would appreciate some insights on
how kamailio is adding/handling the "i=#" in Via header.
Thanks.
Ding Ma
SPG, Motorola Solutions