Dear all<br><br> I have installed SER with multidomain support and it is working fine i have host 2 domain abc.com and example.com now i dont have any NAT between server and client <br><br> But now i have few more client. they are behind NAT so i have find nathelper help and configure with mediaproxy now what happend when i test this configuration in my demo setup <br><br>[192.168.1.2_SIP_Client]------------[SER + Mediaproxy + nathaper]------[192.168.1.3_SIP_Client]<br><br>MY server IP address is 192.168.1.1 <br><br>everyone in same subnet no NAT between them <br><br>ser configuration with NAT + Mediaproxy and mediaproxy running on same machine..<br><br>When i trying to register Xlite on server i got error 483 Too many Hops why is there any domain related problem or
something else when i remove name server in /etc/resolve.conf i got Timeout error <br><br>My --------- ser.cfg<br><br># $Id: nat-mediaproxy.cfg 51 2006-01-31 13:28:04Z /CN=Paul Hazlett/emailAddress=paul@onsip.org $<br>debug=7<br>fork=yes<br>log_stderror=yes<br><br>listen=192.168.104.20 # INSERT YOUR IP ADDRESS HERE<br>port=5060<br>children=4<br><br>dns=yes<br>rev_dns=no<br>fifo="/tmp/ser_fifo"<br>fifo_db_url="mysql://root:tulip@localhost/ser"<br><br>loadmodule "/usr/local/lib/ser/modules/mysql.so"<br>loadmodule "/usr/local/lib/ser/modules/sl.so"<br>loadmodule "/usr/local/lib/ser/modules/tm.so"<br>loadmodule "/usr/local/lib/ser/modules/rr.so"<br>loadmodule "/usr/local/lib/ser/modules/maxfwd.so"<br>loadmodule "/usr/local/lib/ser/modules/usrloc.so"<br>loadmodule "/usr/local/lib/ser/modules/registrar.so"<br>loadmodule "/usr/local/lib/ser/modules/auth.so"<br>loadmodule
"/usr/local/lib/ser/modules/auth_db.so"<br>loadmodule "/usr/local/lib/ser/modules/uri.so"<br>loadmodule "/usr/local/lib/ser/modules/uri_db.so"<br>loadmodule "/usr/local/lib/ser/modules/domain.so"<br>loadmodule "/usr/local/lib/ser/modules/mediaproxy.so"<br>loadmodule "/usr/local/lib/ser/modules/nathelper.so"<br>loadmodule "/usr/local/lib/ser/modules/textops.so"<br><br>modparam("auth_db|domain|uri_db|usrloc", "db_url", "mysql://root:tulip@localhost/ser")<br>modparam("auth_db", "calculate_ha1", 1)<br>modparam("auth_db", "password_column", "password")<br><br>modparam("nathelper", "rtpproxy_disable", 1)<br>modparam("nathelper", "natping_interval", 0)<br><br>modparam("mediaproxy","natping_interval", 30)<br>modparam("mediaproxy","mediaproxy_socket", "/var/run/mediaproxy.sock")<br>modparam("mediaproxy","sip_asymmetrics","/usr/local/etc/ser/sip-clients")<br>modparam("mediaproxy","rtp_asymmetrics","/usr/local/etc/ser/rtp-clients")<br><br>modparam("usrloc", "db_mode",
2)<br>modparam("domain", "domain_table", "domain")<br>modparam("domain", "domain_col", "domain")<br><br>modparam("usrloc|registrar|auth_db|avpops|group", "use_domain", 1)<br><br><br>modparam("registrar", "nat_flag", 6)<br><br>modparam("rr", "enable_full_lr", 1)<br><br>route {<br><br> # -----------------------------------------------------------------<br> # Sanity Check Section<br> # -----------------------------------------------------------------<br> if (!mf_process_maxfwd_header("10")) {<br> sl_send_reply("483", "Too Many Hops");<br> break;<br>
};<br><br> if (msg:len > max_len) {<br> sl_send_reply("513", "Message Overflow");<br> break;<br> };<br><br> # -----------------------------------------------------------------<br> # Record Route Section<br> # -----------------------------------------------------------------<br> if (method=="INVITE" && client_nat_test("3")) {<br> # INSERT YOUR IP ADDRESS HERE<br>
record_route_preset("192.168.104.20:5060;nat=yes");<br> } else if (method!="REGISTER") {<br> record_route();<br> };<br><br> # -----------------------------------------------------------------<br> # Call Tear Down Section<br> # -----------------------------------------------------------------<br> if (method=="BYE" || method=="CANCEL") {<br> end_media_session();<br> };<br><br> #
-----------------------------------------------------------------<br> # Loose Route Section<br> # -----------------------------------------------------------------<br> if (loose_route()) {<br><br> if ((method=="INVITE" || method=="REFER") && !has_totag()) {<br> sl_send_reply("403", "Forbidden");<br> break;<br>
};<br><br> if (method=="INVITE") {<br><br> if (!proxy_authorize("","subscriber")) {<br> proxy_challenge("","0");<br> break;<br> } else if (!check_from())
{<br> sl_send_reply("403", "Use From=ID");<br> break;<br> };<br> consume_credentials();<br><br> if (client_nat_test("3") || search("^Route:.*;nat=yes"))
{<br> setflag(6);<br> use_media_proxy();<br> };<br> };<br><br> route(1);<br> break;<br> };<br><br> #
-----------------------------------------------------------------<br> # Call Type Processing Section<br> # -----------------------------------------------------------------<br> if (uri!=myself) {<br> route(4);<br> route(1);<br> break;<br> };<br><br> if (method=="ACK") {<br> route(1);<br>
break;<br> } else if (method=="CANCEL") {<br> route(1);<br> break;<br> } else if (method=="INVITE") {<br> route(3);<br> break;<br> } else if (is_from_local()) {<br> if (method=="REGISTER") {<br> route(2);<br> break;<br>
};<br> };<br> lookup("aliases");<br> if (uri!=myself) {<br> route(4);<br> route(1);<br> break;<br> };<br><br> if (!lookup("location")) {<br> sl_send_reply("404", "User Not Found");<br> break;<br> };<br><br> route(1);<br>}<br><br>route[1]
{<br><br> # -----------------------------------------------------------------<br> # Default Message Handler<br> # -----------------------------------------------------------------<br><br> t_on_reply("1");<br><br> if (!t_relay()) {<br><br> if (method=="INVITE" || method=="ACK") {<br> end_media_session();<br> };<br><br>
sl_reply_error();<br> };<br>}<br><br># REGISTER Message Handling<br># -------------------------<br>route[2] {<br> sl_send_reply("100", "Trying");<br> if (!search("^Contact:[ ] *\*") && client_nat_test("7")) {<br> setflag(6);<br> fix_nated_register();<br> force_rport();<br> };<br> if (!www_authorize("","subscriber")) {<br>
www_challenge("","0");<br> break;<br> };<br> if (!check_to()) {<br> sl_send_reply("401", "Unauthorized");<br> break;<br> };<br> consume_credentials();<br> if (!save("location")) {<br> sl_reply_error();<br> };<br>}<br><br><br>route[3] {<br><br> #
-----------------------------------------------------------------<br> # INVITE Message Handler<br> # -----------------------------------------------------------------<br><br> if (client_nat_test("3")) {<br> setflag(7);<br> force_rport();<br> fix_nated_contact();<br> };<br><br> if (!proxy_authorize("","subscriber")) {<br>
proxy_challenge("","0");<br> break;<br> } else if (!check_from()) {<br> sl_send_reply("403", "Use From=ID");<br> break;<br> };<br><br> consume_credentials();<br><br> lookup("aliases");<br> if (uri!=myself) {<br> route(4);<br>
route(1);<br> break;<br> };<br><br> if (!lookup("location")) {<br> sl_send_reply("404", "User Not Found");<br> break;<br> };<br><br> route(4);<br> route(1);<br>}<br><br>route[4] {<br><br> # -----------------------------------------------------------------<br> # NAT Traversal Section<br> #
-----------------------------------------------------------------<br><br> if (isflagset(6) || isflagset(7)) {<br> if (!isflagset(8)) {<br> setflag(8);<br> use_media_proxy();<br> };<br> };<br>}<br><br>onreply_route[1] {<br><br> if ((isflagset(6) || isflagset(7)) && (status=~"(180)|(183)|2[0-9][0-9]"))
{<br><br> if (!search("^Content-Length:[ ]*0")) {<br> use_media_proxy();<br> };<br> };<br><br> if (client_nat_test("1")) {<br> fix_nated_contact();<br> };<br>}<br><br><BR><BR>----PGP Signature--<br><br>Satish Patel<br>mobile:- +91-9818875535<br><br>http://www.linuxbug.org<p> 
<hr size=1>Be a better friend, newshound, and
know-it-all with Yahoo! Mobile. <a href="http://us.rd.yahoo.com/evt=51733/*http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ "> Try it now.</a>