Dear List,<div><br></div><div>I have Kamailio 3.1 installed in Amazon EC 2 server.</div><div>Everything is working fine except that every REGISTER / MESSAGE was looped for twice or 3 times.</div><div>And I am sure this is not caused by UA.</div>
<div><br></div><div>I have attached the ngrep log in this message.</div><div>And also, my main modification to the kamailio.cfg is like below:</div><div><br></div><div>Your help will be great great appreciated.</div><div>
<br></div><div>Thank you!!</div><div><br></div><div>Coca</div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div>----------------------------------</div><div><br></div><div><div>#!define WITH_MYSQL</div>
<div>#!define WITH_NAT</div><div><br></div></div><div><br></div><div><div>alias="<a href="http://mydomain.org">mydomain.org</a>"</div><div>alias="xx.xx.xx.xx"</div><div><br></div><div>advertised_address="xx.xx.xx.xx"</div>
<div><br></div><div>...</div><div>...</div><div><br></div><div><div>route {</div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre">        </span># per request initial checks</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>route(REQINIT);</div>
<div><br></div><div><span class="Apple-tab-span" style="white-space:pre">        </span># NAT detection</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>route(NAT);</div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre">        </span># handle requests within SIP dialogs</div>
<div><span class="Apple-tab-span" style="white-space:pre">        </span>route(WITHINDLG);</div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre">        </span>### only initial requests (no To tag)</div><div><br>
</div><div><span class="Apple-tab-span" style="white-space:pre">        </span># CANCEL processing</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>if (is_method("CANCEL"))</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>{</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>if (t_check_trans())</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span>t_relay();</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>exit;</div>
<div><span class="Apple-tab-span" style="white-space:pre">        </span>}</div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre">        </span>t_check_trans();</div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre">        </span># authentication</div>
<div><span class="Apple-tab-span" style="white-space:pre">        </span>route(AUTH);</div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre">        </span># record routing for dialog forming requests (in case they are routed)</div>
<div><span class="Apple-tab-span" style="white-space:pre">        </span># - remove preloaded route headers</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>remove_hf("Route");</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>if (is_method("INVITE|SUBSCRIBE"))</div>
<div><span class="Apple-tab-span" style="white-space:pre">        </span>{<span class="Apple-tab-span" style="white-space:pre">        </span></div><div><span class="Apple-tab-span" style="white-space:pre">                </span>#record_route();</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>/* for NAT support */</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>record_route_preset("xx.xx.xx.xx");</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>}</div>
<div><br></div><div><span class="Apple-tab-span" style="white-space:pre">        </span># account only INVITEs</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>if (is_method("INVITE"))</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>{</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>setflag(FLT_ACC); # do accounting</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>}</div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre">        </span># dispatch requests to foreign domains</div>
<div><span class="Apple-tab-span" style="white-space:pre">        </span>route(SIPOUT);</div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre">        </span>### requests for my local domains</div><div><br></div>
<div><span class="Apple-tab-span" style="white-space:pre">        </span># handle presence related requests</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>route(PRESENCE);</div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre">        </span># handle registrations</div>
<div><span class="Apple-tab-span" style="white-space:pre">        </span>route(REGISTRAR);</div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre">        </span>if ($rU==$null)</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>{</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span># request with no Username in RURI</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>sl_send_reply("484","Address Incomplete");</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>exit;</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>}</div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre">        </span># dispatch destinations to PSTN</div>
<div><span class="Apple-tab-span" style="white-space:pre">        </span>route(PSTN);</div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre">        </span># user location service</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>route(LOCATION);</div>
<div><br></div><div><span class="Apple-tab-span" style="white-space:pre">        </span>route(RELAY);</div><div>}</div></div><div><br></div><div><br></div><div><br></div><div><div># Handle SIP registrations</div><div>route[REGISTRAR] {</div>
<div><span class="Apple-tab-span" style="white-space:pre">        </span>if (is_method("REGISTER"))</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>{</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>if(isflagset(FLT_NATS))</div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>{</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span>setbflag(FLB_NATB);</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span># uncomment next line to do SIP NAT pingingĀ </div>
<div><span class="Apple-tab-span" style="white-space:pre">                        </span>setbflag(FLB_NATSIPPING);</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>}</div><div><span class="Apple-tab-span" style="white-space:pre">                </span></div>
<div><span class="Apple-tab-span" style="white-space:pre">                </span>if (!save("location"))</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span>sl_reply_error();</div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre">                </span>exit;</div>
<div><span class="Apple-tab-span" style="white-space:pre">        </span>}</div><div>}</div></div><div><br></div><meta charset="utf-8"></div>