<div dir="ltr"><div dir="ltr"><div dir="ltr">Hi Daniel,<div><br></div><div>Certainly, below find the initial INVITE and the subsequent UPDATE, as received by Kamailio@65.xx.xx.167. If those aren't sufficient, let me know and if it's ok with you, I'll send the full pcap in private.</div><div><br></div><div>The dilemma in my mind is whether the UPDATE should have a pre-set Route header, similar to how the INVITE has. </div><div><br></div><div><div>2018/10/11 12:34:57.339306 65.xx.xx.172:5060 -> 65.xx.xx.167:5060 </div><div>INVITE sip:238@65.xx.xx.161:64877;rinstance=8a315091627cc10b SIP/2.0 </div><div>Via: SIP/2.0/UDP 65.xx.xx.172:5060;branch=z9hG4bK694382a1 </div><div>Max-Forwards: 70 </div><div>Route: <sip:65.xx.xx.167;lr;received=sip:65.xx.xx.161:64877;r2=on>,<sip:xx.xx.xx.167:5070;lr;received=sip:65.xx.xx.161:64877;r2=on> </div><div>From: "Robert" <<a href="mailto:sip%3A226@mypbx.net">sip:226@mypbx.net</a>>;tag=as0ecef1c4 </div><div>To: <sip:238@65.xx.xx.161:64877;rinstance=8a315091627cc10b> </div><div>Contact: <sip:226@65.xx.xx.172:5060> </div><div>Call-ID: <a href="mailto:1e82197b42f0173b25e70759753d4210@mypbx.net">1e82197b42f0173b25e70759753d4210@mypbx.net</a> </div><div>CSeq: 102 INVITE Supported: replaces, timer, path </div><div>Content-Type: application/sdp </div><div>Content-Length: 386</div></div><div><br></div><div><br></div><div><div>2018/10/11 12:35:06.096457 65.xx.xx.172:5060 -> 65.xx.xx.167:5060 </div><div>UPDATE sip:238@10.17.0.35:64877;alias=65.xx.xx.161~64877~1 SIP/2.0 </div><div>Via: SIP/2.0/UDP 65.xx.xx.172:5060;branch=z9hG4bK34fab05c </div><div>Max-Forwards: 70 </div><div>From: "Robert" <<a href="mailto:sip%3A226@mypbx.net">sip:226@mypbx.net</a>>;tag=as0ecef1c4 </div><div>To: <sip:238@65.xx.xx.161:64877;rinstance=8a315091627cc10b>;tag=6467b07f </div><div>Contact: <sip:226@65.xx.xx.172:5060> </div><div>Call-ID: <a href="mailto:1e82197b42f0173b25e70759753d4210@mypbx.net">1e82197b42f0173b25e70759753d4210@mypbx.net</a> </div><div>CSeq: 103 UPDATE </div><div>Content-Length: 0 </div></div><div><br></div><div>Much obliged.</div></div></div></div><br><div class="gmail_quote"><div dir="ltr">On Fri, Oct 12, 2018 at 9:38 AM Daniel-Constantin Mierla <<a href="mailto:miconda@gmail.com">miconda@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div text="#000000" bgcolor="#FFFFFF">
<p>Hello,</p>
<p>you hve to provide the sip traffic for this case, the screenshot
doesn't show the sip headers used for routing in this case,
therefore grab the sip traffic for all sip messages in such
scenarion, either ngrep output or pcap file, and send it over to
see if some headers are missing or not set properly.<br>
</p>
Cheers,<br>
Daniel<br>
<br>
<div class="m_-6344597451958701792moz-cite-prefix">On 11.10.18 21:03, Sergiu Pojoga wrote:<br>
</div>
<blockquote type="cite">
<div dir="ltr">
<div dir="ltr">
<div dir="ltr">Hi ppl,
<div><br>
</div>
<div>I have this problem with call transfer, may be someone
can help.</div>
<div><br>
</div>
<div>The phone to the far right is registered with the
Registrar to the far left using two PATH headers
(trespassing two proxy ports, 5070 then 5060).</div>
<div><br>
</div>
<div>As you can see in the graph below, after receiving the
UPDATE request, Kamailio relays it further from port 5060,
I expect it to be from 5070 just like the dialog forming
INVITE and the CANCEL afterwards.</div>
<div><br>
</div>
<div>
<div><img src="cid:part1.239CD849.A17147BC@gmail.com" alt="image.png" width="542" height="239"><br>
</div>
</div>
<div><br>
</div>
<div>The UPDATE has a to-tag, but unlike the original INVITE
- it has no Route header!???</div>
<div><br>
</div>
<div>route[<b>WITHINDLG</b>] {<br>
</div>
<div>
<div><span style="white-space:pre-wrap"> </span>if
(!has_totag()) return;</div>
<div><span style="white-space:pre-wrap"> </span></div>
<div><span style="white-space:pre-wrap"> </span>if
(loose_route()) {<br>
</div>
<div><span style="white-space:pre-wrap"> </span>route(DLGURI);</div>
<div><span style="white-space:pre-wrap"> </span></div>
<div><span style="white-space:pre-wrap"> </span>if
(is_method("BYE")) {</div>
</div>
</div>
</div>
<blockquote style="margin:0 0 0 40px;border:none;padding:0px">
<blockquote style="margin:0 0 0 40px;border:none;padding:0px">
<div dir="ltr">
<div dir="ltr">
<div>
<div>...</div>
</div>
</div>
</div>
</blockquote>
</blockquote>
<div dir="ltr">
<div dir="ltr">
<div><span style="white-space:pre-wrap"> </span>}<br>
</div>
<div><span style="white-space:pre-wrap"> </span>else if (
is_method("ACK") ) {</div>
<div><span style="white-space:pre-wrap"> </span>route(NATMANAGE);</div>
<div><span style="white-space:pre-wrap"> </span>}</div>
<div><span style="white-space:pre-wrap"> </span>else if (
is_method("NOTIFY") ) {</div>
<div><span style="white-space:pre-wrap"> </span>record_route();</div>
<div><span style="white-space:pre-wrap"> </span>} </div>
<div><br>
</div>
<div><span style="white-space:pre-wrap"> </span>route(RELAY);</div>
<div><span style="white-space:pre-wrap"> </span>exit;</div>
<div><span style="white-space:pre-wrap"> </span>}</div>
<div><br>
</div>
<div><span style="white-space:pre-wrap"> </span>if (
is_method("ACK") ) {</div>
</div>
</div>
<blockquote style="margin:0 0 0 40px;border:none;padding:0px">
<div dir="ltr">
<div dir="ltr">
<div>
<div>...</div>
</div>
</div>
</div>
</blockquote>
<div dir="ltr">
<div dir="ltr">
<div>
<div><span style="white-space:pre-wrap"> </span>}<br>
</div>
<div><br>
</div>
<div><span style="white-space:pre-wrap"> </span># handle UPDATE
method for in-dialog requests</div>
<div><span style="white-space:pre-wrap"> </span>if (is_method("<b>UPDATE</b>"))
{</div>
<div><span style="white-space:pre-wrap"> </span>route(DLGURI);</div>
<div><span style="white-space:pre-wrap"> </span>record_route();</div>
<div><span style="white-space:pre-wrap"> </span>route(RELAY);<span style="white-space:pre-wrap"> </span></div>
<div><span style="white-space:pre-wrap"> </span>}</div>
<div>}</div>
</div>
<div><br>
</div>
<div>Thanks in advance.</div>
<div><br>
</div>
</div>
</div>
</div>
<br>
<fieldset class="m_-6344597451958701792mimeAttachmentHeader"></fieldset>
<br>
<pre>_______________________________________________
Kamailio (SER) - Users Mailing List
<a class="m_-6344597451958701792moz-txt-link-abbreviated" href="mailto:sr-users@lists.kamailio.org" target="_blank">sr-users@lists.kamailio.org</a>
<a class="m_-6344597451958701792moz-txt-link-freetext" href="https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users" target="_blank">https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users</a>
</pre>
</blockquote>
<br>
<pre class="m_-6344597451958701792moz-signature" cols="72">--
Daniel-Constantin Mierla -- <a class="m_-6344597451958701792moz-txt-link-abbreviated" href="http://www.asipto.com" target="_blank">www.asipto.com</a>
<a class="m_-6344597451958701792moz-txt-link-abbreviated" href="http://www.twitter.com/miconda" target="_blank">www.twitter.com/miconda</a> -- <a class="m_-6344597451958701792moz-txt-link-abbreviated" href="http://www.linkedin.com/in/miconda" target="_blank">www.linkedin.com/in/miconda</a>
Kamailio World Conference -- <a class="m_-6344597451958701792moz-txt-link-abbreviated" href="http://www.kamailioworld.com" target="_blank">www.kamailioworld.com</a>
Kamailio Advanced Training, Nov 12-14, 2018, in Berlin -- <a class="m_-6344597451958701792moz-txt-link-abbreviated" href="http://www.asipto.com" target="_blank">www.asipto.com</a></pre>
</div>
</blockquote></div>