Hi
I have a kamailio 5.7.1 running as TLS gateway for PBXs in private LAN network:
UAC-WAN(sip-tls) <--> kamailio-WAN(sip-tls) - kamailio-LAN(sip) <--> PBX-LAN(sip) 80.0.0.1 <--> 80.0.0.2 - 10.0.0.1 <--> 10.0.0.2
All communications tested works well except for re-INVITE like when UAC put the call on hold .
The re-INVITE packet is managed like a new call and the tm module doesn't match transaction :
matching_3261(): RFC3261 transaction matching failed - via branch [z9hG4bK-524287-1---5e900485d5ad0faf] t_lookup_request(): no transaction found build_cell(): created new cell t_relay_to(): new INVITE
I try to send the interesting logs and config
call logs and pcap : https://filebin.net/vdezuhyn7wdy3lqc
kamailio config :
... request_route {
if (is_method("CANCEL")) { if (t_check_trans()) { route(RELAY); } exit; }
if (!is_method("ACK")) { if(t_precheck_trans()) { t_check_trans(); exit; } t_check_trans(); }
route(WITHINDLG);
if ($si=="PBXIP0" || $si=="PBXIP1" || $si=="PBXIP2" || $si=="PBXIP3" ) {
if (!loose_route()) { switch($rc) { case -2: sl_send_reply("403", "Forbidden"); exit; } }
remove_hf("Route"); force_rport(); record_route(); $fs = "tls:WANIP:5061";
}
if (is_method("INVITE|SUBSCRIBE")){ record_route(); }
t_on_failure("MANAGE_FAILURE"); $fs = "udp:LANIP:5060"; }
route(RELAY); exit;
}
route[WITHINDLG] { if (!has_totag()) return;
if ($si=="PBXIP0" || $si=="PBXIP1" || $si=="PBXIP2" || $si=="PBXIP3") { route(RTPMANAGE); route(RELAY); exit; }
if (loose_route()) { if ( is_method("NOTIFY") ) { record_route(); }
route(RTPMANAGE); route(RELAY); exit; }
if ( is_method("ACK|BYE") ) { route(RTPMANAGE); route(RELAY); }
sl_send_reply("404","Not here"); exit; }
How can I solve this ?
Best Regards
Leo