Not sure how todo this SIP capture. Can you give me an hand and explain how can I get this trace. I can post my configuration if it's necesary. But I'use the default NAT setup that comes with Debian package.
2011/1/19 Alex Balashov abalashov@evaristesys.com
You'd need to post the SIP capture, but it sounds like Kamailio is not
associating the ACK with any known transaction, perhaps because the ACK has an unexpected RURI, Via branch parameter, or CSeq number.
-- Alex Balashov - Principal Evariste Systems LLC 260 Peachtree Street NW Suite 2200 Atlanta, GA 30303 Tel: +1-678-954-0670 Fax: +1-404-961-1892 Web: http://www.evaristesys.com/
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list sr-users@lists.sip-router.org http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
Am 19.01.2011 12:09, schrieb Sébastien Cramatte:
Not sure how todo this SIP capture. Can you give me an hand and explain how can I get this trace.
apt-get install ngrep ngrep -W byline -d any -t -P "" port 5060
regards klaus
I can post my configuration if it's necesary. But I'use the default NAT setup that comes with Debian package.
2011/1/19 Alex Balashov <abalashov@evaristesys.com mailto:abalashov@evaristesys.com>
You'd need to post the SIP capture, but it sounds like Kamailio is not associating the ACK with any known transaction, perhaps because the ACK has an unexpected RURI, Via branch parameter, or CSeq number. -- Alex Balashov - Principal Evariste Systems LLC 260 Peachtree Street NW Suite 2200 Atlanta, GA 30303 Tel: +1-678-954-0670 Fax: +1-404-961-1892 Web: http://www.evaristesys.com/ _______________________________________________ SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list sr-users@lists.sip-router.org <mailto:sr-users@lists.sip-router.org> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list sr-users@lists.sip-router.org http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
Hello
This is trace I've obtained when call through nated wifi device (iPHone 4+ Bria SIP client). I've replaced client address by xx.xx.xx.xx and server address bt yy.yy.yy.yy
I've attached my current configuration
Thank you for your help Bye
-----
# U 2011/01/19 15:11:46.498804 xx.xx.xx.xx:59240 -> yy.yy.yy.yy:5060
# U 2011/01/19 15:11:47.735309 xx.xx.xx.xx:59240 -> yy.yy.yy.yy:5060 REGISTER sip:sip.mydomain.com SIP/2.0 Via: SIP/2.0/UDP xx.xx.xx.xx:59240;rport;branch=z9hG4bKPj5nQlnpOAF3aeP2db4XDMX7lXklIMEBq9 Max-Forwards: 70 From: "868973396" sip:868973396@sip.mydomain.com;tag=b8lChOc4K4maceQRSrsMgOLy-OGO.FKe To: "868973396" sip:868973396@sip.mydomain.com Call-ID: xFmpKcSPhqITQTbCXdfvNe5D-Gkss9rR CSeq: 17448 REGISTER User-Agent: Bria iPhone 1.2.6 Contact: sip:868973396@xx.xx.xx.xx:59240;transport=UDP Expires: 900 Allow: PRACK, INVITE, ACK, BYE, CANCEL, UPDATE, SUBSCRIBE, NOTIFY, REFER, MESSAGE, OPTIONS Content-Length: 0
# U 2011/01/19 15:11:47.735976 yy.yy.yy.yy:5060 -> xx.xx.xx.xx:59240 SIP/2.0 401 Unauthorized Via: SIP/2.0/UDP xx.xx.xx.xx:59240;rport=59240;branch=z9hG4bKPj5nQlnpOAF3aeP2db4XDMX7lXklIMEBq9 From: "868973396" sip:868973396@sip.mydomain.com;tag=b8lChOc4K4maceQRSrsMgOLy-OGO.FKe To: "868973396" sip:868973396@sip.mydomain.com;tag=8835075c631d8d3f40c2f41ff9a205b5.8b69 Call-ID: xFmpKcSPhqITQTbCXdfvNe5D-Gkss9rR CSeq: 17448 REGISTER WWW-Authenticate: Digest realm="sip.mydomain.com", nonce="TTbyTk028SLrerBFAyFR2EylGU058Msj" Server: kamailio (3.1.1 (i386/linux)) Content-Length: 0
# U 2011/01/19 15:11:47.760981 xx.xx.xx.xx:59240 -> yy.yy.yy.yy:5060 REGISTER sip:sip.mydomain.com SIP/2.0 Via: SIP/2.0/UDP xx.xx.xx.xx:59240;rport;branch=z9hG4bKPjBpuaWjJ6XgI.1BsotT1EnTGOkOhp3anf Max-Forwards: 70 From: "868973396" sip:868973396@sip.mydomain.com;tag=b8lChOc4K4maceQRSrsMgOLy-OGO.FKe To: "868973396" sip:868973396@sip.mydomain.com Call-ID: xFmpKcSPhqITQTbCXdfvNe5D-Gkss9rR CSeq: 17449 REGISTER User-Agent: Bria iPhone 1.2.6 Contact: sip:868973396@xx.xx.xx.xx:59240;transport=UDP Expires: 900 Allow: PRACK, INVITE, ACK, BYE, CANCEL, UPDATE, SUBSCRIBE, NOTIFY, REFER, MESSAGE, OPTIONS Authorization: Digest username="868973396", realm="sip.mydomain.com", nonce="TTbyTk028SLrerBFAyFR2EylGU058Msj", uri="sip:sip.mydomain.com", response="842919b2224fd20c24aa5ae69b0d4613" Content-Length: 0
# U 2011/01/19 15:11:47.762107 yy.yy.yy.yy:5060 -> xx.xx.xx.xx:59240 SIP/2.0 200 OK Via: SIP/2.0/UDP xx.xx.xx.xx:59240;rport=59240;branch=z9hG4bKPjBpuaWjJ6XgI.1BsotT1EnTGOkOhp3anf From: "868973396" sip:868973396@sip.mydomain.com;tag=b8lChOc4K4maceQRSrsMgOLy-OGO.FKe To: "868973396" sip:868973396@sip.mydomain.com;tag=8835075c631d8d3f40c2f41ff9a205b5.9fed Call-ID: xFmpKcSPhqITQTbCXdfvNe5D-Gkss9rR CSeq: 17449 REGISTER Contact: sip:868973396@xx.xx.xx.xx:59240;transport=UDP;expires=900 Server: kamailio (3.1.1 (i386/linux)) Content-Length: 0
# U 2011/01/19 15:11:59.238572 xx.xx.xx.xx:59240 -> yy.yy.yy.yy:5060 INVITE sip:968292965@sip.mydomain.com SIP/2.0 Via: SIP/2.0/UDP xx.xx.xx.xx:59240;rport;branch=z9hG4bKPjaa3y8TXTaYJusIt6nlPZjxhYE-jUjF.3 Max-Forwards: 70 From: "868973396" sip:868973396@sip.mydomain.com;tag=-UefKKuveNkOCFE.xB92pX2UnKf5rhjl To: sip:968292965@sip.mydomain.com Contact: sip:868973396@xx.xx.xx.xx:59240;transport=UDP Call-ID: dNwBacVsX7T-FxVNaYojW5-NSCBFa29t CSeq: 332 INVITE Allow: PRACK, INVITE, ACK, BYE, CANCEL, UPDATE, SUBSCRIBE, NOTIFY, REFER, MESSAGE, OPTIONS Supported: replaces, 100rel, timer, norefersub Session-Expires: 1800 Min-SE: 90 User-Agent: Bria iPhone 1.2.6 Content-Type: application/sdp Content-Length: 387
v=0 o=- 3504435157 3504435157 IN IP4 xx.xx.xx.xx s=cpc_med c=IN IP4 xx.xx.xx.xx t=0 0 a=X-nat:0 m=audio 4000 RTP/AVP 9 0 8 18 104 3 96 a=rtpmap:9 G722/8000 a=rtpmap:0 PCMU/8000 a=rtpmap:8 PCMA/8000 a=rtpmap:18 G729/8000 a=fmtp:18 annexb=no a=rtpmap:104 iLBC/8000 a=fmtp:104 mode=30 a=rtpmap:3 GSM/8000 a=sendrecv a=rtpmap:96 telephone-event/8000 a=fmtp:96 0-15
# U 2011/01/19 15:11:59.239056 yy.yy.yy.yy:5060 -> xx.xx.xx.xx:59240 SIP/2.0 400 Content-Length mis-match Via: SIP/2.0/UDP xx.xx.xx.xx:59240;rport=59240;branch=z9hG4bKPjaa3y8TXTaYJusIt6nlPZjxhYE-jUjF.3 From: "868973396" sip:868973396@sip.mydomain.com;tag=-UefKKuveNkOCFE.xB92pX2UnKf5rhjl To: sip:968292965@sip.mydomain.com;tag=8835075c631d8d3f40c2f41ff9a205b5.2206 Call-ID: dNwBacVsX7T-FxVNaYojW5-NSCBFa29t CSeq: 332 INVITE Server: kamailio (3.1.1 (i386/linux)) Content-Length: 0
# U 2011/01/19 15:11:59.279614 xx.xx.xx.xx:59240 -> yy.yy.yy.yy:5060 ACK sip:968292965@sip.mydomain.com SIP/2.0 Via: SIP/2.0/UDP xx.xx.xx.xx:59240;rport;branch=z9hG4bKPjaa3y8TXTaYJusIt6nlPZjxhYE-jUjF.3 Max-Forwards: 70 From: "868973396" sip:868973396@sip.mydomain.com;tag=-UefKKuveNkOCFE.xB92pX2UnKf5rhjl To: sip:968292965@sip.mydomain.com;tag=8835075c631d8d3f40c2f41ff9a205b5.2206 Call-ID: dNwBacVsX7T-FxVNaYojW5-NSCBFa29t CSeq: 332 ACK Content-Length: 0
#!KAMAILIO
#!define WITH_NAT #!define WITH_DEBUG #!define WITH_MYSQL #!define WITH_AUTH #!define WITH_ALIASDB #!define WITH_USRLOCDB #!define WITH_MULTIDOMAIN
# # Kamailio (OpenSER) SIP Server v3.1 - default configuration script # - web: http://www.kamailio.org # - git: http://sip-router.org # # Direct your questions about this file to: sr-users@lists.sip-router.org # # Refer to the Core CookBook at http://www.kamailio.org/dokuwiki/doku.php # for an explanation of possible statements, functions and parameters. # # Several features can be enabled using '#!define WITH_FEATURE' directives: # # *** To run in debug mode: # - define WITH_DEBUG # # *** To enable mysql: # - define WITH_MYSQL # # *** To enable authentication execute: # - enable mysql # - define WITH_AUTH # - add users using 'kamctl' # # *** To enable IP authentication execute: # - enable mysql # - enable authentication # - define WITH_IPAUTH # - add IP addresses with group id '1' to 'address' table # # *** To enable persistent user location execute: # - enable mysql # - define WITH_USRLOCDB # # *** To enable presence server execute: # - enable mysql # - define WITH_PRESENCE # # *** To enable nat traversal execute: # - define WITH_NAT # - install RTPProxy: http://www.rtpproxy.org # - start RTPProxy: # rtpproxy -l _your_public_ip_ -s udp:localhost:7722 # # *** To enable PSTN gateway routing execute: # - define WITH_PSTN # - set the value of pstn.gw_ip # - check route[PSTN] for regexp routing condition # # *** To enable database aliases lookup execute: # - enable mysql # - define WITH_ALIASDB # # *** To enable multi-domain support execute: # - enable mysql # - define WITH_MULTIDOMAIN # # *** To enable TLS support execute: # - adjust CFGDIR/tls.cfg as needed # - define WITH_TLS # # *** To enable XMLRPC support execute: # - define WITH_XMLRPC # - adjust route[XMLRPC] for access policy # # *** To enable anti-flood detection execute: # - adjust pike and htable=>ipban settings as needed (default is # block if more than 16 requests in 2 seconds and ban for 300 seconds) # - define WITH_ANTIFLOOD # # *** To enhance accounting execute: # - enable mysql # - define WITH_ACCDB # - add following columns to database #!ifdef ACCDB_COMMENT ALTER TABLE acc ADD COLUMN src_user VARCHAR(64) NOT NULL DEFAULT ''; ALTER TABLE acc ADD COLUMN src_domain VARCHAR(128) NOT NULL DEFAULT ''; ALTER TABLE acc ADD COLUMN dst_ouser VARCHAR(64) NOT NULL DEFAULT ''; ALTER TABLE acc ADD COLUMN dst_user VARCHAR(64) NOT NULL DEFAULT ''; ALTER TABLE acc ADD COLUMN dst_domain VARCHAR(128) NOT NULL DEFAULT ''; ALTER TABLE missed_calls ADD COLUMN src_user VARCHAR(64) NOT NULL DEFAULT ''; ALTER TABLE missed_calls ADD COLUMN src_domain VARCHAR(128) NOT NULL DEFAULT ''; ALTER TABLE missed_calls ADD COLUMN dst_ouser VARCHAR(64) NOT NULL DEFAULT ''; ALTER TABLE missed_calls ADD COLUMN dst_user VARCHAR(64) NOT NULL DEFAULT ''; ALTER TABLE missed_calls ADD COLUMN dst_domain VARCHAR(128) NOT NULL DEFAULT ''; #!endif
####### Defined Values #########
# *** Value defines - IDs used later in config #!ifdef WITH_MYSQL # - database URL - used to connect to database server by modules such # as: auth_db, acc, usrloc, a.s.o. #!define DBURL "mysql://openser:openserrw@localhost/openser" #!endif #!ifdef WITH_MULTIDOMAIN # - the value for 'use_domain' parameters #!define MULTIDOMAIN 1 #!else #!define MULTIDOMAIN 0 #!endif
# - flags # FLT_ - per transaction (message) flags # FLB_ - per branch flags #!define FLT_ACC 1 #!define FLT_ACCMISSED 2 #!define FLT_ACCFAILED 3 #!define FLT_NATS 5
#!define FLB_NATB 6 #!define FLB_NATSIPPING 7
####### Global Parameters #########
#!ifdef WITH_DEBUG debug=4 log_stderror=yes fork=no #!else debug=2 log_stderror=no fork=no #!endif
memdbg=5 memlog=5
log_facility=LOG_LOCAL0
children=4
/* uncomment the next line to disable TCP (default on) */ #disable_tcp=yes
/* uncomment the next line to disable the auto discovery of local aliases based on reverse DNS on IPs (default on) */ #auto_aliases=no
/* add local domain aliases */ alias="sip.mydomain.com"
/* uncomment and configure the following line if you want Kamailio to bind on a specific interface/port/proto (default bind on all available) */ listen=udp:yy.yy.yy.yy:5060
/* port to listen to * - can be specified more than once if needed to listen on many ports */ port=5060
#!ifdef WITH_TLS enable_tls=yes #!endif
####### Custom Parameters #########
# These parameters can be modified runtime via RPC interface # - see the documentation of 'cfg_rpc' module. # # Format: group.id = value 'desc' description # Access: $sel(cfg_get.group.id) or @cfg_get.group.id #
#!ifdef WITH_PSTN # PSTN GW Routing # # - pstn.gw_ip: valid IP or hostname as string value, example: # pstn.gw_ip = "10.0.0.101" desc "My PSTN GW Address" # # - by default is empty to avoid misrouting # pstn.gw_ip = "85.62.19.18" desc "PSTN GW Address" #!endif
####### Modules Section ########
# set paths to location of modules #!ifdef LOCAL_TEST_RUN mpath="modules_k:modules" #!else mpath="/usr/lib/kamailio/modules_k/:/usr/lib/kamailio/modules/" #!endif
#!ifdef WITH_MYSQL loadmodule "db_mysql.so" #!endif
loadmodule "mi_fifo.so" loadmodule "kex.so" loadmodule "tm.so" loadmodule "tmx.so" loadmodule "sl.so" loadmodule "rr.so" loadmodule "pv.so" loadmodule "maxfwd.so" loadmodule "usrloc.so" loadmodule "registrar.so" loadmodule "textops.so" loadmodule "siputils.so" loadmodule "xlog.so" loadmodule "sanity.so" loadmodule "ctl.so" loadmodule "mi_rpc.so" loadmodule "acc.so"
#!ifdef WITH_AUTH loadmodule "auth.so" loadmodule "auth_db.so" #!ifdef WITH_IPAUTH loadmodule "permissions.so" #!endif #!endif
#!ifdef WITH_ALIASDB loadmodule "alias_db.so" #!endif
#!ifdef WITH_MULTIDOMAIN loadmodule "domain.so" #!endif
#!ifdef WITH_PRESENCE loadmodule "presence.so" loadmodule "presence_xml.so" #!endif
#!ifdef WITH_NAT loadmodule "nathelper.so" loadmodule "rtpproxy.so" #!endif
#!ifdef WITH_TLS loadmodule "tls.so" #!endif
#!ifdef WITH_ANTIFLOOD loadmodule "htable.so" loadmodule "pike.so" #!endif
#!ifdef WITH_XMLRPC loadmodule "xmlrpc.so" #!endif
loadmodule "siptrace.so"
loadmodule "avpops.so" loadmodule "dialplan.so" loadmodule "carrierroute.so" loadmodule "group.so"
# ----------------- setting module-specific parameters --------------- modparam("siptrace", "db_url", DBURL) modparam("siptrace", "table", "sip_trace") modparam("siptrace", "trace_on", 1) modparam("siptrace", "trace_flag", 22)
modparam("avpops", "db_url", DBURL) modparam("avpops", "avp_table", "usr_preferences") modparam("dialplan", "db_url", DBURL); modparam("dialplan", "attrs_pvar", "$avp(s:dest)")
# ----- carrier route ----- modparam("carrierroute", "config_source", "db") modparam("carrierroute", "db_url", DBURL)
# ----- group ----- modparam("group", "db_url", DBURL)
# ----- mi_fifo params ----- modparam("mi_fifo", "fifo_name", "/tmp/kamailio_fifo")
# ----- tm params ----- # auto-discard branches from previous serial forking leg modparam("tm", "failure_reply_mode", 3) # default retransmission timeout: 30sec modparam("tm", "fr_timer", 30000) # default invite retransmission timeout after 1xx: 120sec modparam("tm", "fr_inv_timer", 120000)
# ----- rr params ----- # add value to ;lr param to cope with most of the UAs modparam("rr", "enable_full_lr", 1) # do not append from tag to the RR (no need for this script) modparam("rr", "append_fromtag", 0)
# ----- registrar params ----- modparam("registrar", "method_filtering", 1) /* uncomment the next line to disable parallel forking via location */ # modparam("registrar", "append_branches", 0) /* uncomment the next line not to allow more than 10 contacts per AOR */ #modparam("registrar", "max_contacts", 10)
# ----- acc params ----- /* what special events should be accounted ? */ modparam("acc", "early_media", 0) modparam("acc", "report_ack", 0) modparam("acc", "report_cancels", 0) /* by default ww do not adjust the direct of the sequential requests. if you enable this parameter, be sure the enable "append_fromtag" in "rr" module */ modparam("acc", "detect_direction", 0) /* account triggers (flags) */ modparam("acc", "log_flag", FLT_ACC) modparam("acc", "log_missed_flag", FLT_ACCMISSED) modparam("acc", "log_extra", "src_user=$fU;src_domain=$fd;dst_ouser=$tU;dst_user=$rU;dst_domain=$rd") modparam("acc", "failed_transaction_flag", FLT_ACCFAILED) /* enhanced DB accounting */ #!ifdef WITH_ACCDB modparam("acc", "db_flag", FLT_ACC) modparam("acc", "db_missed_flag", FLT_ACCMISSED) modparam("acc", "db_url", DBURL) modparam("acc", "db_extra", "src_user=$fU;src_domain=$fd;dst_ouser=$tU;dst_user=$rU;dst_domain=$rd") #!endif
# ----- usrloc params ----- /* enable DB persistency for location entries */ #!ifdef WITH_USRLOCDB modparam("usrloc", "db_url", DBURL) modparam("usrloc", "db_mode", 1) modparam("usrloc", "use_domain", MULTIDOMAIN) #!endif
# ----- auth_db params ----- #!ifdef WITH_AUTH modparam("auth_db", "db_url", DBURL) modparam("auth_db", "calculate_ha1", yes) modparam("auth_db", "password_column", "password") modparam("auth_db", "load_credentials", "$avp(s:rpid)=rpid;$avp(s:countrycode)=countrycode;$avp(s:areacode)=areacode") modparam("auth_db", "use_domain", MULTIDOMAIN)
# ----- permissions params ----- #!ifdef WITH_IPAUTH modparam("permissions", "db_url", DBURL) modparam("permissions", "db_mode", 1) #!endif
#!endif
# ----- alias_db params ----- #!ifdef WITH_ALIASDB modparam("alias_db", "db_url", DBURL) modparam("alias_db", "use_domain", MULTIDOMAIN) #!endif
# ----- domain params ----- #!ifdef WITH_MULTIDOMAIN modparam("domain", "db_url", DBURL) # use caching modparam("domain", "db_mode", 1) # register callback to match myself condition with domains list modparam("domain", "register_myself", 1) #!endif
#!ifdef WITH_PRESENCE # ----- presence params ----- modparam("presence", "db_url", DBURL)
# ----- presence_xml params ----- modparam("presence_xml", "db_url", DBURL) modparam("presence_xml", "force_active", 1) #!endif
#!ifdef WITH_NAT # ----- rtpproxy params ----- modparam("rtpproxy", "rtpproxy_sock", "udp:127.0.0.1:7890")
# ----- nathelper params ----- modparam("nathelper", "natping_interval", 30) modparam("nathelper", "ping_nated_only", 1) modparam("nathelper", "sipping_bflag", FLB_NATSIPPING) modparam("nathelper", "sipping_from", "sip:pinger@kamailio.org")
# params needed for NAT traversal in other modules modparam("nathelper|registrar", "received_avp", "$avp(RECEIVED)") modparam("usrloc", "nat_bflag", FLB_NATB) #!endif
#!ifdef WITH_TLS # ----- tls params ----- modparam("tls", "config", "/etc/kamailio/tls.cfg") #!endif
#!ifdef WITH_ANTIFLOOD # ----- pike params ----- modparam("pike", "sampling_time_unit", 2) modparam("pike", "reqs_density_per_unit", 16) modparam("pike", "remove_latency", 4)
# ----- htable params ----- # ip ban htable with autoexpire after 5 minutes modparam("htable", "htable", "ipban=>size=8;autoexpire=300;") #!endif
#!ifdef WITH_XMLRPC # ----- xmlrpc params ----- modparam("xmlrpc", "route", "XMLRPC"); modparam("xmlrpc", "url_match", "^/RPC") #!endif
####### Routing Logic ########
# Main SIP request routing logic # - processing of any incoming SIP request starts with this route route {
# per request initial checks route(REQINIT);
# NAT detection route(NAT);
# handle requests within SIP dialogs route(WITHINDLG);
### only initial requests (no To tag)
# CANCEL processing if (is_method("CANCEL")) { if (t_check_trans()) t_relay(); exit; }
t_check_trans();
# authentication route(AUTH);
# record routing for dialog forming requests (in case they are routed) # - remove preloaded route headers remove_hf("Route"); if (is_method("INVITE|SUBSCRIBE")) record_route();
# account only INVITEs if (is_method("INVITE")) { setflag(FLT_ACC); # do accounting }
# dispatch requests to foreign domains #route(SIPOUT);
# handle presence related requests #route(PRESENCE);
# handle registrations route(REGISTRAR);
if ($rU==$null) { # request with no Username in RURI sl_send_reply("484","Address Incomplete"); exit; }
xlog("L_ERR", "From: $fU@$fd <=> To: $rU@$rd\r\n");
# dialplan translate # route(DIALPLAN);
# dispatch destinations to PSTN route(PSTN); route(RELAY); }
route[RELAY] { #!ifdef WITH_NAT if (check_route_param("nat=yes")) { setbflag(FLB_NATB); } if (isflagset(FLT_NATS) || isbflagset(FLB_NATB)) { route(RTPPROXY); } #!endif
/* example how to enable some additional event routes */ if (is_method("INVITE")) { #t_on_branch("BRANCH_ONE"); t_on_reply("REPLY_ONE"); t_on_failure("FAIL_ONE"); }
if (!t_relay()) { sl_reply_error(); } exit; }
# Per SIP request initial checks route[REQINIT] { #!ifdef WITH_ANTIFLOOD # flood dection from same IP and traffic ban for a while # be sure you exclude checking trusted peers, such as pstn gateways # - local host excluded (e.g., loop to self) if(src_ip!=myself) { if($sht(ipban=>$si)!=$null) { # ip is already blocked xdbg("request from blocked IP - $rm from $fu (IP:$si:$sp)\n"); exit; } if (!pike_check_req()) { xlog("L_ALERT","ALERT: pike blocking $rm from $fu (IP:$si:$sp)\n"); $sht(ipban=>$si) = 1; exit; } } #!endif
if (!mf_process_maxfwd_header("10")) { sl_send_reply("483","Too Many Hops"); exit; }
if(!sanity_check("1511", "7")) { xlog("Malformed SIP message from $si:$sp\n"); exit; } }
# Handle requests within SIP dialogs route[WITHINDLG] { if (has_totag()) { # sequential request withing a dialog should # take the path determined by record-routing if (loose_route()) { if (is_method("BYE")) { setflag(FLT_ACC); # do accounting ... setflag(FLT_ACCFAILED); # ... even if the transaction fails } route(RELAY); } else { if (is_method("SUBSCRIBE") && uri == myself) { # in-dialog subscribe requests route(PRESENCE); exit; } if ( is_method("ACK") ) { if ( t_check_trans() ) { # no loose-route, but stateful ACK; # must be an ACK after a 487 # or e.g. 404 from upstream server t_relay(); exit; } else { # ACK without matching transaction ... ignore and discard exit; } } sl_send_reply("404","Not here"); } exit; } }
# Handle SIP registrations route[REGISTRAR] { if (is_method("REGISTER")) { if(isflagset(FLT_NATS)) { setbflag(FLB_NATB); # uncomment next line to do SIP NAT pinging ## setbflag(FLB_NATSIPPING); }
if (!save("location")) { sl_reply_error(); } exit; } }
route[DIALPLAN] { if(!dp_translate("0","$rU/$rU")) { send_reply("420", "Invalid Destination"); exit; }
xlog("$avp(s:dest)");
# media server if ($avp(s:dest)=="media") { rewritehostport("media.mydomain.com:5060"); route(RELAY); }
}
# USER location service route[LOCATION] {
#!ifdef WITH_ALIASDB # search in DB-based aliases alias_db_lookup("dbaliases"); #!endif
if (!lookup("location")) { switch ($rc) { case -1: case -3: t_newtran(); t_reply("404", "Not Found"); exit; case -2: sl_send_reply("405", "Method Not Allowed"); exit; } }
# when routing via usrloc, log the missed calls also if (is_method("INVITE")) { setflag(FLT_ACCMISSED); } }
# Presence server route route[PRESENCE] { if(!is_method("PUBLISH|SUBSCRIBE")) return;
#!ifdef WITH_PRESENCE if (!t_newtran()) { sl_reply_error(); exit; };
if(is_method("PUBLISH")) { handle_publish(); t_release(); } else if( is_method("SUBSCRIBE")) { handle_subscribe(); t_release(); } exit; #!endif # if presence enabled, this part will not be executed if (is_method("PUBLISH") || $rU==$null) { sl_send_reply("404", "Not here"); exit; } return; }
# Authentication route route[AUTH] { #!ifdef WITH_AUTH if (is_method("REGISTER")) { # authenticate the REGISTER requests (uncomment to enable auth) if (!www_authorize("$td", "subscriber")) { www_challenge("$td", "0"); exit; }
if ($au!=$tU) { sl_send_reply("403","Forbidden auth ID"); exit; } } else {
#!ifdef WITH_IPAUTH if(allow_source_address()) { xlog("L_DBG", "permissions: source IP allowed"); return; } #!endif
# authenticate if from local subscriber if (from_uri==myself) { if (!proxy_authorize("$fd", "subscriber")) { proxy_challenge("$fd", "0"); exit; } if (is_method("PUBLISH")) { if ($au!=$tU) { sl_send_reply("403","Forbidden auth ID"); exit; } } else { if ($au!=$fU) { sl_send_reply("403","Forbidden auth ID"); exit; } }
consume_credentials(); # caller authenticated } else { # caller is not local subscriber, then check if it calls # a local destination, otherwise deny, not an open relay here if (!uri==myself) { xlog("L_ERR", "NOT RELAYING"); sl_send_reply("403","Not relaying"); exit; } } } #!endif return; }
# Caller NAT detection route route[NAT] { #!ifdef WITH_NAT force_rport(); if (nat_uac_test("19")) { if (method=="REGISTER") { fix_nated_register(); } else { fix_nated_contact(); } setflag(FLT_NATS); } #!endif return; }
# RTPProxy control route[RTPPROXY] { #!ifdef WITH_NAT if (is_method("BYE")) { unforce_rtp_proxy(); } else if (is_method("INVITE")){ force_rtp_proxy(); } if (!has_totag()) add_rr_param(";nat=yes"); #!endif return; }
# Routing to foreign domains route[SIPOUT] { append_hf("P-hint: outbound\r\n"); route(RELAY); }
# PSTN GW routing route[PSTN] {
if (is_from_local()) { # From an internal domain xlog("L_ERR", "From an internal domain\r\n");
if (is_uri_host_local()) { # Inbound to Inbound xlog("L_ERR", "Inbound to inbound\r\n"); alias_db_lookup("dbaliases");
if (uri=~"^sip:00[0-9]*@") { if (!is_user_in("credentials","international")) { sl_send_reply("403", "No permissions for international calls"); exit; }; };
if (uri=~"^sip:6[0-9]{8}@") { if (!is_user_in("credentials","mobile")) { sl_send_reply("403", "No permissions for national mobile calls"); exit; }; };
cr_user_carrier("$fU", "$fd", "$avp(s:carrier)"); xlog("$avp(s:carrier)\r\n"); xlog("$fU@$fd\r\n");
if(!cr_route("$avp(s:carrier)", "default", "$rU", "$rU", "call_id")) { sl_send_reply("403", "Not allowed"); } else { route(RELAY); #t_on_failure("FAIL_ONE"); #t_relay(); } } else { # Inbound to outbound xlog("L_ERR", "Inbound to outbound\r\n"); route(SIPOUT); }
} else { # From an external domain xlog("L_ERR", "From an external domain\r\n"); alias_db_lookup("dbaliases"); if (is_uri_host_local()) { # Outbound to inbound xlog("L_ERR", "Outbound to inbound\r\n"); route(LOCATION);
} else { # Outbound to outbound xlog("L_ERR", "Outbound to outbound\r\n"); sl_send_reply("403", "Forbidden"); exit; } } }
# XMLRPC routing #!ifdef WITH_XMLRPC route[XMLRPC] { # allow XMLRPC from localhost if ((method=="POST" || method=="GET") && (src_ip==127.0.0.1)) { # close connection only for xmlrpclib user agents (there is a bug in # xmlrpclib: it waits for EOF before interpreting the response). if ($hdr(User-Agent) =~ "xmlrpclib") set_reply_close(); set_reply_no_connect(); dispatch_rpc(); exit; } send_reply("403", "Forbidden"); exit; } #!endif
# Sample branch router branch_route[BRANCH_ONE] { xdbg("new branch at $ru\n"); }
# Sample onreply route onreply_route[REPLY_ONE] { xdbg("incoming reply\n"); #!ifdef WITH_NAT if ((isflagset(FLT_NATS) || isbflagset(FLB_NATB)) && status=~"(183)|(2[0-9][0-9])") { force_rtp_proxy(); } if (isbflagset("6")) { fix_nated_contact(); } #!endif }
# Sample failure route failure_route[FAIL_ONE] { #!ifdef WITH_NAT if (is_method("INVITE") && (isbflagset(FLB_NATB) || isflagset(FLT_NATS))) { unforce_rtp_proxy(); } #!endif
# uncomment the following lines if you want to block client # redirect based on 3xx replies. ##if (t_check_status("3[0-9][0-9]")) { ##t_reply("404","Not found"); ## exit; ##}
# uncomment the following lines if you want to redirect the failed # calls to a different new destination ##if (t_check_status("486|408")) { ## sethostport("192.168.2.100:5060"); ## append_branch(); ## # do not set the missed call flag again ## t_relay(); ##} }
With this trace I do not see a problem regarding your previous post "SL local ACK found -> dropping it! error"
But for sure you have a problem as the incoming INVITE is malformed. Either Bria iPhone is buggy or there is a FW/ALG device which rewrites the SIP packet (IP addresses) and does it in a wrong way (same old story with ALG).
To verify if the problem is due to an buggy ALG you could try to start the SIP proxy on a different port, .e.g 45671 - whatever you like - anc configure Bria to use this port.
regards klaus
Am 19.01.2011 15:20, schrieb Sébastien Cramatte:
Hello
This is trace I've obtained when call through nated wifi device (iPHone 4+ Bria SIP client). I've replaced client address by xx.xx.xx.xx and server address bt yy.yy.yy.yy
I've attached my current configuration
Thank you for your help Bye
# U 2011/01/19 15:11:46.498804 xx.xx.xx.xx:59240 -> yy.yy.yy.yy:5060
# U 2011/01/19 15:11:47.735309 xx.xx.xx.xx:59240 -> yy.yy.yy.yy:5060 REGISTER sip:sip.mydomain.com SIP/2.0 Via: SIP/2.0/UDP xx.xx.xx.xx:59240;rport;branch=z9hG4bKPj5nQlnpOAF3aeP2db4XDMX7lXklIMEBq9 Max-Forwards: 70 From: "868973396" sip:868973396@sip.mydomain.com;tag=b8lChOc4K4maceQRSrsMgOLy-OGO.FKe To: "868973396" sip:868973396@sip.mydomain.com Call-ID: xFmpKcSPhqITQTbCXdfvNe5D-Gkss9rR CSeq: 17448 REGISTER User-Agent: Bria iPhone 1.2.6 Contact: sip:868973396@xx.xx.xx.xx:59240;transport=UDP Expires: 900 Allow: PRACK, INVITE, ACK, BYE, CANCEL, UPDATE, SUBSCRIBE, NOTIFY, REFER, MESSAGE, OPTIONS Content-Length: 0
# U 2011/01/19 15:11:47.735976 yy.yy.yy.yy:5060 -> xx.xx.xx.xx:59240 SIP/2.0 401 Unauthorized Via: SIP/2.0/UDP xx.xx.xx.xx:59240;rport=59240;branch=z9hG4bKPj5nQlnpOAF3aeP2db4XDMX7lXklIMEBq9
From: "868973396" sip:868973396@sip.mydomain.com;tag=b8lChOc4K4maceQRSrsMgOLy-OGO.FKe To: "868973396" sip:868973396@sip.mydomain.com;tag=8835075c631d8d3f40c2f41ff9a205b5.8b69 Call-ID: xFmpKcSPhqITQTbCXdfvNe5D-Gkss9rR CSeq: 17448 REGISTER WWW-Authenticate: Digest realm="sip.mydomain.com", nonce="TTbyTk028SLrerBFAyFR2EylGU058Msj" Server: kamailio (3.1.1 (i386/linux)) Content-Length: 0
# U 2011/01/19 15:11:47.760981 xx.xx.xx.xx:59240 -> yy.yy.yy.yy:5060 REGISTER sip:sip.mydomain.com SIP/2.0 Via: SIP/2.0/UDP xx.xx.xx.xx:59240;rport;branch=z9hG4bKPjBpuaWjJ6XgI.1BsotT1EnTGOkOhp3anf Max-Forwards: 70 From: "868973396" sip:868973396@sip.mydomain.com;tag=b8lChOc4K4maceQRSrsMgOLy-OGO.FKe To: "868973396" sip:868973396@sip.mydomain.com Call-ID: xFmpKcSPhqITQTbCXdfvNe5D-Gkss9rR CSeq: 17449 REGISTER User-Agent: Bria iPhone 1.2.6 Contact: sip:868973396@xx.xx.xx.xx:59240;transport=UDP Expires: 900 Allow: PRACK, INVITE, ACK, BYE, CANCEL, UPDATE, SUBSCRIBE, NOTIFY, REFER, MESSAGE, OPTIONS Authorization: Digest username="868973396", realm="sip.mydomain.com", nonce="TTbyTk028SLrerBFAyFR2EylGU058Msj", uri="sip:sip.mydomain.com", response="842919b2224fd20c24aa5ae69b0d4613" Content-Length: 0
# U 2011/01/19 15:11:47.762107 yy.yy.yy.yy:5060 -> xx.xx.xx.xx:59240 SIP/2.0 200 OK Via: SIP/2.0/UDP xx.xx.xx.xx:59240;rport=59240;branch=z9hG4bKPjBpuaWjJ6XgI.1BsotT1EnTGOkOhp3anf
From: "868973396" sip:868973396@sip.mydomain.com;tag=b8lChOc4K4maceQRSrsMgOLy-OGO.FKe To: "868973396" sip:868973396@sip.mydomain.com;tag=8835075c631d8d3f40c2f41ff9a205b5.9fed Call-ID: xFmpKcSPhqITQTbCXdfvNe5D-Gkss9rR CSeq: 17449 REGISTER Contact: sip:868973396@xx.xx.xx.xx:59240;transport=UDP;expires=900 Server: kamailio (3.1.1 (i386/linux)) Content-Length: 0
# U 2011/01/19 15:11:59.238572 xx.xx.xx.xx:59240 -> yy.yy.yy.yy:5060 INVITE sip:968292965@sip.mydomain.com SIP/2.0 Via: SIP/2.0/UDP xx.xx.xx.xx:59240;rport;branch=z9hG4bKPjaa3y8TXTaYJusIt6nlPZjxhYE-jUjF.3 Max-Forwards: 70 From: "868973396" sip:868973396@sip.mydomain.com;tag=-UefKKuveNkOCFE.xB92pX2UnKf5rhjl To: sip:968292965@sip.mydomain.com Contact: sip:868973396@xx.xx.xx.xx:59240;transport=UDP Call-ID: dNwBacVsX7T-FxVNaYojW5-NSCBFa29t CSeq: 332 INVITE Allow: PRACK, INVITE, ACK, BYE, CANCEL, UPDATE, SUBSCRIBE, NOTIFY, REFER, MESSAGE, OPTIONS Supported: replaces, 100rel, timer, norefersub Session-Expires: 1800 Min-SE: 90 User-Agent: Bria iPhone 1.2.6 Content-Type: application/sdp Content-Length: 387
v=0 o=- 3504435157 3504435157 IN IP4 xx.xx.xx.xx s=cpc_med c=IN IP4 xx.xx.xx.xx t=0 0 a=X-nat:0 m=audio 4000 RTP/AVP 9 0 8 18 104 3 96 a=rtpmap:9 G722/8000 a=rtpmap:0 PCMU/8000 a=rtpmap:8 PCMA/8000 a=rtpmap:18 G729/8000 a=fmtp:18 annexb=no a=rtpmap:104 iLBC/8000 a=fmtp:104 mode=30 a=rtpmap:3 GSM/8000 a=sendrecv a=rtpmap:96 telephone-event/8000 a=fmtp:96 0-15
# U 2011/01/19 15:11:59.239056 yy.yy.yy.yy:5060 -> xx.xx.xx.xx:59240 SIP/2.0 400 Content-Length mis-match Via: SIP/2.0/UDP xx.xx.xx.xx:59240;rport=59240;branch=z9hG4bKPjaa3y8TXTaYJusIt6nlPZjxhYE-jUjF.3
From: "868973396" sip:868973396@sip.mydomain.com;tag=-UefKKuveNkOCFE.xB92pX2UnKf5rhjl To: sip:968292965@sip.mydomain.com;tag=8835075c631d8d3f40c2f41ff9a205b5.2206 Call-ID: dNwBacVsX7T-FxVNaYojW5-NSCBFa29t CSeq: 332 INVITE Server: kamailio (3.1.1 (i386/linux)) Content-Length: 0
# U 2011/01/19 15:11:59.279614 xx.xx.xx.xx:59240 -> yy.yy.yy.yy:5060 ACK sip:968292965@sip.mydomain.com SIP/2.0 Via: SIP/2.0/UDP xx.xx.xx.xx:59240;rport;branch=z9hG4bKPjaa3y8TXTaYJusIt6nlPZjxhYE-jUjF.3 Max-Forwards: 70 From: "868973396" sip:868973396@sip.mydomain.com;tag=-UefKKuveNkOCFE.xB92pX2UnKf5rhjl To: sip:968292965@sip.mydomain.com;tag=8835075c631d8d3f40c2f41ff9a205b5.2206 Call-ID: dNwBacVsX7T-FxVNaYojW5-NSCBFa29t CSeq: 332 ACK Content-Length: 0
Efectively it was an issue with FW. I've setup my kamailio to listen on 5060 and 5062. Now I can call media server and my extensions can receive / make local calls respectively. The issue now is that I've got my SIP PSTN gateway that try to reach our server on port 5060 and this gateway listen on 5060 too. It shouldn't be a problem because Kamailio listen over 5060 and 5062 but unfortunately doesn't work and send me back a 404 error code.
I use the same configuration as before just add two "listen" line
Best regards
2011/1/19 Klaus Darilion klaus.mailinglists@pernau.at
With this trace I do not see a problem regarding your previous post "SL local ACK found -> dropping it! error"
But for sure you have a problem as the incoming INVITE is malformed. Either Bria iPhone is buggy or there is a FW/ALG device which rewrites the SIP packet (IP addresses) and does it in a wrong way (same old story with ALG).
To verify if the problem is due to an buggy ALG you could try to start the SIP proxy on a different port, .e.g 45671 - whatever you like - anc configure Bria to use this port.
regards klaus
Am 19.01.2011 15:20, schrieb Sébastien Cramatte:
Hello
This is trace I've obtained when call through nated wifi device (iPHone 4+ Bria SIP client). I've replaced client address by xx.xx.xx.xx and server address bt yy.yy.yy.yy
I've attached my current configuration
Thank you for your help Bye
# U 2011/01/19 15:11:46.498804 xx.xx.xx.xx:59240 -> yy.yy.yy.yy:5060
# U 2011/01/19 15:11:47.735309 xx.xx.xx.xx:59240 -> yy.yy.yy.yy:5060 REGISTER sip:sip.mydomain.com SIP/2.0 Via: SIP/2.0/UDP xx.xx.xx.xx:59240;rport;branch=z9hG4bKPj5nQlnpOAF3aeP2db4XDMX7lXklIMEBq9 Max-Forwards: 70 From: "868973396" <sip:868973396@sip.mydomain.com sip%3A868973396@sip.mydomain.com
;tag=b8lChOc4K4maceQRSrsMgOLy-OGO.FKe
To: "868973396" <sip:868973396@sip.mydomain.comsip%3A868973396@sip.mydomain.com
Call-ID: xFmpKcSPhqITQTbCXdfvNe5D-Gkss9rR CSeq: 17448 REGISTER User-Agent: Bria iPhone 1.2.6 Contact: sip:868973396@xx.xx.xx.xx:59240;transport=UDP Expires: 900 Allow: PRACK, INVITE, ACK, BYE, CANCEL, UPDATE, SUBSCRIBE, NOTIFY, REFER, MESSAGE, OPTIONS Content-Length: 0
# U 2011/01/19 15:11:47.735976 yy.yy.yy.yy:5060 -> xx.xx.xx.xx:59240 SIP/2.0 401 Unauthorized Via: SIP/2.0/UDP
xx.xx.xx.xx:59240;rport=59240;branch=z9hG4bKPj5nQlnpOAF3aeP2db4XDMX7lXklIMEBq9
From: "868973396" <sip:868973396@sip.mydomain.com sip%3A868973396@sip.mydomain.com
;tag=b8lChOc4K4maceQRSrsMgOLy-OGO.FKe
To: "868973396" <sip:868973396@sip.mydomain.com sip%3A868973396@sip.mydomain.com
;tag=8835075c631d8d3f40c2f41ff9a205b5.8b69
Call-ID: xFmpKcSPhqITQTbCXdfvNe5D-Gkss9rR CSeq: 17448 REGISTER WWW-Authenticate: Digest realm="sip.mydomain.com", nonce="TTbyTk028SLrerBFAyFR2EylGU058Msj" Server: kamailio (3.1.1 (i386/linux)) Content-Length: 0
# U 2011/01/19 15:11:47.760981 xx.xx.xx.xx:59240 -> yy.yy.yy.yy:5060 REGISTER sip:sip.mydomain.com SIP/2.0 Via: SIP/2.0/UDP xx.xx.xx.xx:59240;rport;branch=z9hG4bKPjBpuaWjJ6XgI.1BsotT1EnTGOkOhp3anf Max-Forwards: 70 From: "868973396" <sip:868973396@sip.mydomain.com sip%3A868973396@sip.mydomain.com
;tag=b8lChOc4K4maceQRSrsMgOLy-OGO.FKe
To: "868973396" <sip:868973396@sip.mydomain.comsip%3A868973396@sip.mydomain.com
Call-ID: xFmpKcSPhqITQTbCXdfvNe5D-Gkss9rR CSeq: 17449 REGISTER User-Agent: Bria iPhone 1.2.6 Contact: sip:868973396@xx.xx.xx.xx:59240;transport=UDP Expires: 900 Allow: PRACK, INVITE, ACK, BYE, CANCEL, UPDATE, SUBSCRIBE, NOTIFY, REFER, MESSAGE, OPTIONS Authorization: Digest username="868973396", realm="sip.mydomain.com", nonce="TTbyTk028SLrerBFAyFR2EylGU058Msj", uri="sip:sip.mydomain.com", response="842919b2224fd20c24aa5ae69b0d4613" Content-Length: 0
# U 2011/01/19 15:11:47.762107 yy.yy.yy.yy:5060 -> xx.xx.xx.xx:59240 SIP/2.0 200 OK Via: SIP/2.0/UDP
xx.xx.xx.xx:59240;rport=59240;branch=z9hG4bKPjBpuaWjJ6XgI.1BsotT1EnTGOkOhp3anf
From: "868973396" <sip:868973396@sip.mydomain.com sip%3A868973396@sip.mydomain.com
;tag=b8lChOc4K4maceQRSrsMgOLy-OGO.FKe
To: "868973396" <sip:868973396@sip.mydomain.com sip%3A868973396@sip.mydomain.com
;tag=8835075c631d8d3f40c2f41ff9a205b5.9fed
Call-ID: xFmpKcSPhqITQTbCXdfvNe5D-Gkss9rR CSeq: 17449 REGISTER Contact: sip:868973396@xx.xx.xx.xx:59240;transport=UDP;expires=900 Server: kamailio (3.1.1 (i386/linux)) Content-Length: 0
# U 2011/01/19 15:11:59.238572 xx.xx.xx.xx:59240 -> yy.yy.yy.yy:5060 INVITE sip:968292965@sip.mydomain.com sip%3A968292965@sip.mydomain.comSIP/2.0 Via: SIP/2.0/UDP xx.xx.xx.xx:59240;rport;branch=z9hG4bKPjaa3y8TXTaYJusIt6nlPZjxhYE-jUjF.3 Max-Forwards: 70 From: "868973396" <sip:868973396@sip.mydomain.com sip%3A868973396@sip.mydomain.com
;tag=-UefKKuveNkOCFE.xB92pX2UnKf5rhjl
To: <sip:968292965@sip.mydomain.com sip%3A968292965@sip.mydomain.com> Contact: sip:868973396@xx.xx.xx.xx:59240;transport=UDP Call-ID: dNwBacVsX7T-FxVNaYojW5-NSCBFa29t CSeq: 332 INVITE Allow: PRACK, INVITE, ACK, BYE, CANCEL, UPDATE, SUBSCRIBE, NOTIFY, REFER, MESSAGE, OPTIONS Supported: replaces, 100rel, timer, norefersub Session-Expires: 1800 Min-SE: 90 User-Agent: Bria iPhone 1.2.6 Content-Type: application/sdp Content-Length: 387
v=0 o=- 3504435157 3504435157 IN IP4 xx.xx.xx.xx s=cpc_med c=IN IP4 xx.xx.xx.xx t=0 0 a=X-nat:0 m=audio 4000 RTP/AVP 9 0 8 18 104 3 96 a=rtpmap:9 G722/8000 a=rtpmap:0 PCMU/8000 a=rtpmap:8 PCMA/8000 a=rtpmap:18 G729/8000 a=fmtp:18 annexb=no a=rtpmap:104 iLBC/8000 a=fmtp:104 mode=30 a=rtpmap:3 GSM/8000 a=sendrecv a=rtpmap:96 telephone-event/8000 a=fmtp:96 0-15
# U 2011/01/19 15:11:59.239056 yy.yy.yy.yy:5060 -> xx.xx.xx.xx:59240 SIP/2.0 400 Content-Length mis-match Via: SIP/2.0/UDP
xx.xx.xx.xx:59240;rport=59240;branch=z9hG4bKPjaa3y8TXTaYJusIt6nlPZjxhYE-jUjF.3
From: "868973396" <sip:868973396@sip.mydomain.com sip%3A868973396@sip.mydomain.com
;tag=-UefKKuveNkOCFE.xB92pX2UnKf5rhjl
To: <sip:968292965@sip.mydomain.com sip%3A968292965@sip.mydomain.com
;tag=8835075c631d8d3f40c2f41ff9a205b5.2206
Call-ID: dNwBacVsX7T-FxVNaYojW5-NSCBFa29t CSeq: 332 INVITE Server: kamailio (3.1.1 (i386/linux)) Content-Length: 0
# U 2011/01/19 15:11:59.279614 xx.xx.xx.xx:59240 -> yy.yy.yy.yy:5060 ACK sip:968292965@sip.mydomain.com sip%3A968292965@sip.mydomain.comSIP/2.0 Via: SIP/2.0/UDP xx.xx.xx.xx:59240;rport;branch=z9hG4bKPjaa3y8TXTaYJusIt6nlPZjxhYE-jUjF.3 Max-Forwards: 70 From: "868973396" <sip:868973396@sip.mydomain.com sip%3A868973396@sip.mydomain.com
;tag=-UefKKuveNkOCFE.xB92pX2UnKf5rhjl
To: <sip:968292965@sip.mydomain.com sip%3A968292965@sip.mydomain.com
;tag=8835075c631d8d3f40c2f41ff9a205b5.2206
Call-ID: dNwBacVsX7T-FxVNaYojW5-NSCBFa29t CSeq: 332 ACK Content-Length: 0
Am 19.01.2011 19:14, schrieb Sébastien Cramatte:
Efectively it was an issue with FW. I've setup my kamailio to listen on 5060 and 5062. Now I can call media server and my extensions can receive / make local calls respectively. The issue now is that I've got my SIP PSTN gateway that try to reach our server on port 5060 and this gateway listen on 5060 too.
configure the gatway to send to port 5062
It shouldn't be a problem because Kamailio listen over 5060 and 5062 but unfortunately doesn't work and send me back a 404 error code.
for sure the 4040 is not cause by using a different port. Seems like your config is not complete yet.
regards klaus
I use the same configuration as before just add two "listen" line
Best regards
2011/1/19 Klaus Darilion <klaus.mailinglists@pernau.at mailto:klaus.mailinglists@pernau.at>
With this trace I do not see a problem regarding your previous post "SL local ACK found -> dropping it! error" But for sure you have a problem as the incoming INVITE is malformed. Either Bria iPhone is buggy or there is a FW/ALG device which rewrites the SIP packet (IP addresses) and does it in a wrong way (same old story with ALG). To verify if the problem is due to an buggy ALG you could try to start the SIP proxy on a different port, .e.g 45671 - whatever you like - anc configure Bria to use this port. regards klaus Am 19.01.2011 15:20, schrieb Sébastien Cramatte: Hello This is trace I've obtained when call through nated wifi device (iPHone 4+ Bria SIP client). I've replaced client address by xx.xx.xx.xx and server address bt yy.yy.yy.yy I've attached my current configuration Thank you for your help Bye ----- # U 2011/01/19 15:11:46.498804 xx.xx.xx.xx:59240 -> yy.yy.yy.yy:5060 # U 2011/01/19 15:11:47.735309 xx.xx.xx.xx:59240 -> yy.yy.yy.yy:5060 REGISTER sip:sip.mydomain.com <http://sip.mydomain.com> SIP/2.0 Via: SIP/2.0/UDP xx.xx.xx.xx:59240;rport;branch=z9hG4bKPj5nQlnpOAF3aeP2db4XDMX7lXklIMEBq9 Max-Forwards: 70 From: "868973396" <sip:868973396@sip.mydomain.com <mailto:sip%3A868973396@sip.mydomain.com>>;tag=b8lChOc4K4maceQRSrsMgOLy-OGO.FKe To: "868973396" <sip:868973396@sip.mydomain.com <mailto:sip%3A868973396@sip.mydomain.com>> Call-ID: xFmpKcSPhqITQTbCXdfvNe5D-Gkss9rR CSeq: 17448 REGISTER User-Agent: Bria iPhone 1.2.6 Contact: <sip:868973396@xx.xx.xx.xx:59240;transport=UDP> Expires: 900 Allow: PRACK, INVITE, ACK, BYE, CANCEL, UPDATE, SUBSCRIBE, NOTIFY, REFER, MESSAGE, OPTIONS Content-Length: 0 # U 2011/01/19 15:11:47.735976 yy.yy.yy.yy:5060 -> xx.xx.xx.xx:59240 SIP/2.0 401 Unauthorized Via: SIP/2.0/UDP xx.xx.xx.xx:59240;rport=59240;branch=z9hG4bKPj5nQlnpOAF3aeP2db4XDMX7lXklIMEBq9 From: "868973396" <sip:868973396@sip.mydomain.com <mailto:sip%3A868973396@sip.mydomain.com>>;tag=b8lChOc4K4maceQRSrsMgOLy-OGO.FKe To: "868973396" <sip:868973396@sip.mydomain.com <mailto:sip%3A868973396@sip.mydomain.com>>;tag=8835075c631d8d3f40c2f41ff9a205b5.8b69 Call-ID: xFmpKcSPhqITQTbCXdfvNe5D-Gkss9rR CSeq: 17448 REGISTER WWW-Authenticate: Digest realm="sip.mydomain.com <http://sip.mydomain.com>", nonce="TTbyTk028SLrerBFAyFR2EylGU058Msj" Server: kamailio (3.1.1 (i386/linux)) Content-Length: 0 # U 2011/01/19 15:11:47.760981 xx.xx.xx.xx:59240 -> yy.yy.yy.yy:5060 REGISTER sip:sip.mydomain.com <http://sip.mydomain.com> SIP/2.0 Via: SIP/2.0/UDP xx.xx.xx.xx:59240;rport;branch=z9hG4bKPjBpuaWjJ6XgI.1BsotT1EnTGOkOhp3anf Max-Forwards: 70 From: "868973396" <sip:868973396@sip.mydomain.com <mailto:sip%3A868973396@sip.mydomain.com>>;tag=b8lChOc4K4maceQRSrsMgOLy-OGO.FKe To: "868973396" <sip:868973396@sip.mydomain.com <mailto:sip%3A868973396@sip.mydomain.com>> Call-ID: xFmpKcSPhqITQTbCXdfvNe5D-Gkss9rR CSeq: 17449 REGISTER User-Agent: Bria iPhone 1.2.6 Contact: <sip:868973396@xx.xx.xx.xx:59240;transport=UDP> Expires: 900 Allow: PRACK, INVITE, ACK, BYE, CANCEL, UPDATE, SUBSCRIBE, NOTIFY, REFER, MESSAGE, OPTIONS Authorization: Digest username="868973396", realm="sip.mydomain.com <http://sip.mydomain.com>", nonce="TTbyTk028SLrerBFAyFR2EylGU058Msj", uri="sip:sip.mydomain.com <http://sip.mydomain.com>", response="842919b2224fd20c24aa5ae69b0d4613" Content-Length: 0 # U 2011/01/19 15:11:47.762107 yy.yy.yy.yy:5060 -> xx.xx.xx.xx:59240 SIP/2.0 200 OK Via: SIP/2.0/UDP xx.xx.xx.xx:59240;rport=59240;branch=z9hG4bKPjBpuaWjJ6XgI.1BsotT1EnTGOkOhp3anf From: "868973396" <sip:868973396@sip.mydomain.com <mailto:sip%3A868973396@sip.mydomain.com>>;tag=b8lChOc4K4maceQRSrsMgOLy-OGO.FKe To: "868973396" <sip:868973396@sip.mydomain.com <mailto:sip%3A868973396@sip.mydomain.com>>;tag=8835075c631d8d3f40c2f41ff9a205b5.9fed Call-ID: xFmpKcSPhqITQTbCXdfvNe5D-Gkss9rR CSeq: 17449 REGISTER Contact: <sip:868973396@xx.xx.xx.xx:59240;transport=UDP>;expires=900 Server: kamailio (3.1.1 (i386/linux)) Content-Length: 0 # U 2011/01/19 15:11:59.238572 xx.xx.xx.xx:59240 -> yy.yy.yy.yy:5060 INVITE sip:968292965@sip.mydomain.com <mailto:sip%3A968292965@sip.mydomain.com> SIP/2.0 Via: SIP/2.0/UDP xx.xx.xx.xx:59240;rport;branch=z9hG4bKPjaa3y8TXTaYJusIt6nlPZjxhYE-jUjF.3 Max-Forwards: 70 From: "868973396" <sip:868973396@sip.mydomain.com <mailto:sip%3A868973396@sip.mydomain.com>>;tag=-UefKKuveNkOCFE.xB92pX2UnKf5rhjl To: <sip:968292965@sip.mydomain.com <mailto:sip%3A968292965@sip.mydomain.com>> Contact: <sip:868973396@xx.xx.xx.xx:59240;transport=UDP> Call-ID: dNwBacVsX7T-FxVNaYojW5-NSCBFa29t CSeq: 332 INVITE Allow: PRACK, INVITE, ACK, BYE, CANCEL, UPDATE, SUBSCRIBE, NOTIFY, REFER, MESSAGE, OPTIONS Supported: replaces, 100rel, timer, norefersub Session-Expires: 1800 Min-SE: 90 User-Agent: Bria iPhone 1.2.6 Content-Type: application/sdp Content-Length: 387 v=0 o=- 3504435157 3504435157 IN IP4 xx.xx.xx.xx s=cpc_med c=IN IP4 xx.xx.xx.xx t=0 0 a=X-nat:0 m=audio 4000 RTP/AVP 9 0 8 18 104 3 96 a=rtpmap:9 G722/8000 a=rtpmap:0 PCMU/8000 a=rtpmap:8 PCMA/8000 a=rtpmap:18 G729/8000 a=fmtp:18 annexb=no a=rtpmap:104 iLBC/8000 a=fmtp:104 mode=30 a=rtpmap:3 GSM/8000 a=sendrecv a=rtpmap:96 telephone-event/8000 a=fmtp:96 0-15 # U 2011/01/19 15:11:59.239056 yy.yy.yy.yy:5060 -> xx.xx.xx.xx:59240 SIP/2.0 400 Content-Length mis-match Via: SIP/2.0/UDP xx.xx.xx.xx:59240;rport=59240;branch=z9hG4bKPjaa3y8TXTaYJusIt6nlPZjxhYE-jUjF.3 From: "868973396" <sip:868973396@sip.mydomain.com <mailto:sip%3A868973396@sip.mydomain.com>>;tag=-UefKKuveNkOCFE.xB92pX2UnKf5rhjl To: <sip:968292965@sip.mydomain.com <mailto:sip%3A968292965@sip.mydomain.com>>;tag=8835075c631d8d3f40c2f41ff9a205b5.2206 Call-ID: dNwBacVsX7T-FxVNaYojW5-NSCBFa29t CSeq: 332 INVITE Server: kamailio (3.1.1 (i386/linux)) Content-Length: 0 # U 2011/01/19 15:11:59.279614 xx.xx.xx.xx:59240 -> yy.yy.yy.yy:5060 ACK sip:968292965@sip.mydomain.com <mailto:sip%3A968292965@sip.mydomain.com> SIP/2.0 Via: SIP/2.0/UDP xx.xx.xx.xx:59240;rport;branch=z9hG4bKPjaa3y8TXTaYJusIt6nlPZjxhYE-jUjF.3 Max-Forwards: 70 From: "868973396" <sip:868973396@sip.mydomain.com <mailto:sip%3A868973396@sip.mydomain.com>>;tag=-UefKKuveNkOCFE.xB92pX2UnKf5rhjl To: <sip:968292965@sip.mydomain.com <mailto:sip%3A968292965@sip.mydomain.com>>;tag=8835075c631d8d3f40c2f41ff9a205b5.2206 Call-ID: dNwBacVsX7T-FxVNaYojW5-NSCBFa29t CSeq: 332 ACK Content-Length: 0