<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Consolas;
        panose-1:2 11 6 9 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;
        color:black;
        mso-fareast-language:EN-US;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
pre
        {mso-style-priority:99;
        mso-style-link:"HTML Preformatted Char";
        margin:0in;
        margin-bottom:.0001pt;
        font-size:10.0pt;
        font-family:"Courier New";
        color:black;}
span.HTMLPreformattedChar
        {mso-style-name:"HTML Preformatted Char";
        mso-style-priority:99;
        mso-style-link:"HTML Preformatted";
        font-family:Consolas;
        color:black;
        mso-fareast-language:EN-US;}
span.EmailStyle19
        {mso-style-type:personal;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
span.EmailStyle20
        {mso-style-type:personal;
        font-family:"Calibri",sans-serif;
        color:#1F497D;}
span.EmailStyle21
        {mso-style-type:personal-reply;
        font-family:"Calibri",sans-serif;
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body bgcolor="white" lang="NL" link="#0563C1" vlink="#954F72">
<div class="WordSection1">
<p class="MsoNormal"><span lang="EN-US" style="color:#1F497D">I misunderstood the reason for the domain module. I thought it was used to store (remote) domains the proxy should handle and allow.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color:#1F497D">And by domains I mean remote addresses. For instance, when providing customers with a SIP trunk and the Kamailio being the proxy for those trunks and their domains.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color:#1F497D">Currently the addresses contained in the table are all remote addresses.
<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color:#1F497D">The client (10.0.0.40) was just to simulate a remote sip server sending calls.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color:#1F497D">This logic is perhaps more suited for the permissions and group module am I correct?<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color:#1F497D"><o:p> </o:p></span></p>
<div>
<div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span lang="EN-US" style="color:windowtext;mso-fareast-language:NL">From:</span></b><span lang="EN-US" style="color:windowtext;mso-fareast-language:NL"> Daniel-Constantin Mierla [mailto:miconda@gmail.com]
<br>
<b>Sent:</b> Wednesday, April 8, 2015 2:32 PM<br>
<b>To:</b> Grant Bagdasarian; Kamailio (SER) - Users Mailing List<br>
<b>Subject:</b> Re: [SR-Users] BYE not forwarded<o:p></o:p></span></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal" style="margin-bottom:12.0pt">Hello,<br>
<br>
domain table must contains the hostnames associated with the Kamailio server. Eventually you can add local ip addresses, but they are redundant if you just want to compare with 'myself'. You must not add in the domain table the ip addresses of client devices
 (phones).<br>
<br>
By adding an ip address to domain table you tell kamailio to consider the uri that has that IP as for itself. So, practically instead of forwarding to IP 10.0.0.40, you tell to kamailio to handle locally the requests with uri including 10.0.0.40.<br>
<br>
You should just remove 10.0.0.40 from domain table, I see no reason to have it there, given it is one used by a client device.<br>
<br>
Cheers,<br>
Daniel<span style="font-size:12.0pt;mso-fareast-language:NL"><o:p></o:p></span></p>
<div>
<p class="MsoNormal">On 08/04/15 13:44, Grant Bagdasarian wrote:<o:p></o:p></p>
</div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<p class="MsoNormal"><span lang="EN-US" style="color:#1F497D">Hello Daniel,</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="color:#1F497D"> </span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="color:#1F497D">I’m not sure what you mean by alias or domain.</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="color:#1F497D"> </span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="color:#1F497D">kamcmd domain.dump</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="color:#1F497D">3(15821) DEBUG: ctl [../../io_wait.h:388]: io_watch_add(): DBG: io_watch_add(0x7f803146daa0, 7, 3, 0x2652370), fd_no=1</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="color:#1F497D">3(15821) DEBUG: ctl [io_listener.c:453]: handle_new_connect(): handle_stream read: new connection (1) on /tmp/kamailio_ctl</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="color:#1F497D">{</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="color:#1F497D">        domain: 10.0.0.40</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="color:#1F497D">        did: 10.0.0.40</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="color:#1F497D">}</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="color:#1F497D"> </span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="color:#1F497D">I have some domain checks in my script, which I commented out, but the problem still remains.
</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="color:#1F497D">if(!is_domain_local("$rd")) { }</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="color:#1F497D">if(!is_domain_local("$fd")) { }</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="color:#1F497D"> </span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="color:#1F497D">When I set the register_myself modparam to 0 it works, regardless of the is_domain_local checks! The BYE is sent back to the UAC.</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="color:#1F497D">modparam("domain", "register_myself", 0)</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="color:#1F497D"> </span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="color:#1F497D">Not sure as to why this changes the behavior?
</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="color:#1F497D"> </span><o:p></o:p></p>
<div>
<div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span lang="EN-US" style="color:windowtext;mso-fareast-language:NL">From:</span></b><span lang="EN-US" style="color:windowtext;mso-fareast-language:NL"> sr-users [<a href="mailto:sr-users-bounces@lists.sip-router.org">mailto:sr-users-bounces@lists.sip-router.org</a>]
<b>On Behalf Of </b>Daniel-Constantin Mierla<br>
<b>Sent:</b> Wednesday, April 8, 2015 1:28 PM<br>
<b>To:</b> Kamailio (SER) - Users Mailing List<br>
<b>Subject:</b> Re: [SR-Users] BYE not forwarded</span><o:p></o:p></p>
</div>
</div>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal" style="margin-bottom:12.0pt">Hello,<br>
<br>
is the ip <span lang="EN-US">10.0.0.40 set as alias or domain in domain table? It looks like kamailio considers it to be a local domain.<br>
<br>
Cheers,<br>
Daniel</span><o:p></o:p></p>
<div>
<p class="MsoNormal">On 08/04/15 13:13, Grant Bagdasarian wrote:<o:p></o:p></p>
</div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<p class="MsoNormal"><span lang="EN-US">Hello,</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US"> </span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">I have the following setup: </span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US"> </span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">UAC (Bria)  ------ Kamailio -------- Freeswitch</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US"> </span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">Kamailio is used to authenticate the client using basic authentication.</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">Upon authentication the INVITE is sent to Freeswitch for further handling.
</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">Kamailio stays in the path using record-route.</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US"> </span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">At this point, the authentication and calling FS works fine.</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">For now, FS just answers, plays a file and hangsup the call.</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">Answering the call and playing a file works fine.</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">When FS hangs up the call, the BYE message is sent back to Kamailio.</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US"> </span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">The problem is the BYE message from FS contains a Route header which points to Kamailio again.</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">Which causes Kamailio to send the BYE message back to itself. Kamailio then replies with a 404.</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">The BYE is never sent to the UAC.</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US"> </span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">When I remove the record_route() for INVITEs, the call works fine, but Kamailio isn’t kept in the signaling path.
</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">The BYE is sent directly to the UAC.</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US"> </span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">T 10.0.5.52:54822 -> 10.0.5.50:5060 [AP]</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">BYE <a href="sip:grant@10.0.0.40:5060;transport=tcp">
sip:grant@10.0.0.40:5060;transport=tcp</a> SIP/2.0.</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">Via: SIP/2.0/TCP 10.0.5.52;rport;branch=z9hG4bK99X8a4Q8BFy1a.</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">Route: <a href="sip:10.0.5.50;transport=tcp;lr=on">
<sip:10.0.5.50;transport=tcp;lr=on></a>.</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">Max-Forwards: 70.</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">From: <a href="sip:123456789@10.0.0.40"><sip:123456789@10.0.0.40></a>;tag=aey7rKe7DmQte.</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">To: <a href="sip:grant@10.0.0.40"><sip:grant@10.0.0.40></a>;tag=dbc9c27b.</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">Call-ID: NmQ4YjYyMDFkNmMwZjg0ZmU5NjQ3ODhjYzU0MDBmNGI.</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">CSeq: 73909300 BYE.</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">User-Agent: CM SBC.</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, MESSAGE, INFO, UPDATE, NOTIFY.</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">Supported: timer, path, replaces.</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">Reason: Q.850;cause=16;text="NORMAL_CLEARING".</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">Content-Length: 0.</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US"> </span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">Here is the WITHINDLG route:</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US"> </span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">route[WITHINDLG] {</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">                xlog("L_INFO", "[R-ROUTE-WITHINDLG:$ci] !>" "Route:WITHINDLG;UnixTime:$TV(un);RequestURI:$rU;RequestMethod:$rm;FromTag:$ft;ToTag:$tt;CallID:$ci;From:$fU;To:$rU\r\n");</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">                </span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">                if (!has_totag()) {</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">                               return;</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">                }</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">                </span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">                # Sequential request within a dialog should take the path determined by record-routing</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">                if (loose_route()) {</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">                               route(RELAY);</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">                               exit;</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">                } else {  </span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">                               if (is_method("ACK")) {</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">                                               if (t_check_trans()) {</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">                                                               # No Loose-Route, but stateful ACK. Must be ACK after 487</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">                                                               route(RELAY);</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">                                                               exit;</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">                                               } else {</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">                                                               # ACK without matching transaction</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">                                                               exit;</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">                                               }</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">                               }</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">                               sl_send_reply("404","Not here");</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">                }</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">                exit;</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">}</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US"> </span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">I’m using TCP as the transport.</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">Kamailio: 4.2.3</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">Freeswitch: 1.5.15</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US"> </span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US"> </span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">I’ve attached a SIP trace from the point of view of Kamailio.</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">UAC: 10.0.0.40</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">Kamailio: 10.0.5.50</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">Freeswitch: 10.0.5.52</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US"> </span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">What is going on here?</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">The whole Record-Route thing confuses me a lot.
</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US"> </span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">Regards,</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US"> </span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US">Grant</span><o:p></o:p></p>
<p class="MsoNormal"><span lang="EN-US"> </span><o:p></o:p></p>
<p class="MsoNormal"><span style="font-size:12.0pt"><br>
<br>
<br>
<br>
</span><o:p></o:p></p>
<pre>_______________________________________________<o:p></o:p></pre>
<pre>SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list<o:p></o:p></pre>
<pre><a href="mailto:sr-users@lists.sip-router.org">sr-users@lists.sip-router.org</a><o:p></o:p></pre>
<pre><a href="http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users">http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users</a><o:p></o:p></pre>
</blockquote>
<p class="MsoNormal"><span style="font-size:12.0pt"><br>
<br>
<br>
</span><o:p></o:p></p>
<pre>-- <o:p></o:p></pre>
<pre>Daniel-Constantin Mierla<o:p></o:p></pre>
<pre><a href="http://twitter.com/#%21/miconda">http://twitter.com/#!/miconda</a> - <a href="http://www.linkedin.com/in/miconda">http://www.linkedin.com/in/miconda</a><o:p></o:p></pre>
<pre>Kamailio World Conference, May 27-29, 2015<o:p></o:p></pre>
<pre>Berlin, Germany - <a href="http://www.kamailioworld.com">http://www.kamailioworld.com</a><o:p></o:p></pre>
</blockquote>
<p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Times New Roman",serif;mso-fareast-language:NL"><br>
<br>
<o:p></o:p></span></p>
<pre>-- <o:p></o:p></pre>
<pre>Daniel-Constantin Mierla<o:p></o:p></pre>
<pre><a href="http://twitter.com/#!/miconda">http://twitter.com/#!/miconda</a> - <a href="http://www.linkedin.com/in/miconda">http://www.linkedin.com/in/miconda</a><o:p></o:p></pre>
<pre>Kamailio World Conference, May 27-29, 2015<o:p></o:p></pre>
<pre>Berlin, Germany - <a href="http://www.kamailioworld.com">http://www.kamailioworld.com</a><o:p></o:p></pre>
</div>
</body>
</html>