Hi all
I want to use madiaproxy module to do nat transversal. But it not work for me. I run the media proxy server (proxy server) in the same host than openser on a host with public IP and i set the openser configuration file to above:
# # $Id: openser.cfg,v 1.5 2005/10/28 19:45:33 bogdan_iancu Exp $ # # simple quick-start config script #
# ----------- global configuration parameters ------------------------
debug=3 # debug level (cmd line: -dddddddddd) fork=yes log_stderror=no # (cmd line: -E)
#Uncomment these lines to enter debugging mode fork=no log_stderror=yes
check_via=no # (cmd. line: -v) dns=no # (cmd. line: -r) rev_dns=no # (cmd. line: -R) port=5060 children=4 fifo="/tmp/openser_fifo"
#loadmodule "/usr/local/lib/openser/modules/mysql.so" loadmodule "/usr/local/lib/openser/modules/sl.so" loadmodule "/usr/local/lib/openser/modules/tm.so" loadmodule "/usr/local/lib/openser/modules/rr.so" loadmodule "/usr/local/lib/openser/modules/maxfwd.so" loadmodule "/usr/local/lib/openser/modules/usrloc.so" loadmodule "/usr/local/lib/openser/modules/registrar.so" #loadmodule "/usr/local/lib/openser/modules/auth.so" #loadmodule "/usr/local/lib/openser/modules/auth_radius.so" #loadmodule "/usr/local/lib/openser/modules/auth_db.so"
loadmodule "/usr/local/lib/openser/modules/uri.so" #loadmodule "/usr/local/lib/openser/modules/domain.so" loadmodule "/usr/local/lib/openser/modules/nathelper.so" loadmodule "/usr/local/lib/openser/modules/textops.so" #loadmodule "/usr/local/lib/openser/modules/uri_db.so" #loadmodule "/usr/local/lib/openser/modules/uri_radius.so"
#modparam("auth_db|usrloc|uri_db", "db_url","mysql://ser:heslo@localhost/ser") #modparam("auth_db", "calculate_ha1", 1) #modparam("auth_db", "password_column", "password")
modparam("nathelper", "natping_interval", 30) modparam("nathelper", "ping_nated_only", 1) modparam("nathelper", "rtpproxy_disable", 1) modparam("nathelper", "rtpproxy_sock","unix:/var/run/rtpproxy.sock") modparam("usrloc", "db_mode", 0) modparam("registrar", "nat_flag", 6) modparam("rr", "enable_full_lr", 1)
route {
#---------------------------------------------------------------- # Sanity Check Section #-----------------------------------------------------------------
if (!mf_process_maxfwd_header("10")) { sl_send_reply("483", "Too Many Hops"); exit; };
if (msg:len > max_len) { sl_send_reply("513", "Message Overflow"); exit; };
#----------------------------------------------------------------- # Record Route Section #-----------------------------------------------------------------
if (method!="REGISTER") { record_route(); };
if (method=="BYE" || method=="CANCEL") { unforce_rtp_proxy(); };
#----------------------------------------------------------------- # Loose Route Section #-----------------------------------------------------------------
if (loose_route()) {
if (has_totag() && method=="INVITE") { if (nat_uac_test("19")) { setflag(6); force_rport(); fix_nated_contact(); };
force_rtp_proxy("l"); }; route(1); exit; }; #----------------------------------------------------------------- # Call Type Processing Section #----------------------------------------------------------------- if (uri==myself) { if (method=="INVITE") { route(3); exit; } else if (method=="REGISTER") { route(2); exit; };
if (!lookup("location")) { sl_send_reply("404", "User Not Found"); exit; }; route(1); }; }
route[1] { #----------------------------------------------------------------- # Default Message Handler #----------------------------------------------------------------- t_on_reply("1"); if (!t_relay()) { if (method=="INVITE" && isflagset(6)) { unforce_rtp_proxy(); }; sl_reply_error(); }; }
route[2] { #----------------------------------------------------------------- # REGISTER Message Handler #---------------------------------------------------------------- if (!search("^Contact: *") && nat_uac_test("19")) { setflag(6); fix_nated_register(); # fix_nated_contact(); force_rport(); }; sl_send_reply("100", "Trying");
# if (!www_authorize("","subscriber")) { # www_challenge("","0"); # exit; # };
# if (!check_to()) { # sl_send_reply("401", "Unauthorized"); # exit; # };
# consume_credentials();
if (!save("location")) { sl_reply_error(); }; }
route[3] { #----------------------------------------------------------------- # INVITE Message Handler #----------------------------------------------------------------- if (nat_uac_test("19")) { setflag(6); }; if (!lookup("location")) { sl_send_reply("404", "User Not Found"); exit; }; # if (!proxy_authorize("","subscriber")) { # proxy_challenge("","0"); # break; # } else if (!check_from()) { # if(!check_from()) { # sl_send_reply("403", "Use From=ID"); # exit; # };
# consume_credentials();
if (isflagset(6)) { force_rport(); fix_nated_contact(); force_rtp_proxy(); };
t_on_reply("1");
if (!t_relay()) {
if(isflagset(6)) { unforce_rtp_proxy(); };
sl_reply_error(); }; }
onreply_route[1] { if (isflagset(6) && (status=~"(180)|(183)|2[0-9][0-9]")) { if (!search("^Content-Length:\ 0")) { force_rtp_proxy(); }; } else if (nat_uac_test("1")) { fix_nated_contact(); }; }
What's wrong?
your comments are welcome.
Thanks
Serge MESSA
Greetings Serg,
You should start by reading the README and INSTALL files found in the mediaproxy package. Then you will need to load the mediaproxy.so module with all your modules listed at the top of your ser.cfg. You'll also need make your specific config changes in mediaproxy.ini. I would also suggest looking at the onsip.org mediaproxy ser.cfg example. Hope this helps.
- Daryl
On 11/12/05, messa@innsof.com messa@innsof.com wrote:
Hi all
I want to use madiaproxy module to do nat transversal. But it not work for me. I run the media proxy server (proxy server) in the same host than openser on a host with public IP and i set the openser configuration file to above:
# # $Id: openser.cfg,v 1.5 2005/10/28 19:45:33 bogdan_iancu Exp $ # # simple quick-start config script #
# ----------- global configuration parameters ------------------------
debug=3 # debug level (cmd line: -dddddddddd) fork=yes log_stderror=no # (cmd line: -E)
#Uncomment these lines to enter debugging mode fork=no log_stderror=yes
check_via=no # (cmd. line: -v) dns=no # (cmd. line: -r) rev_dns=no # (cmd. line: -R) port=5060 children=4 fifo="/tmp/openser_fifo"
#loadmodule "/usr/local/lib/openser/modules/mysql.so" loadmodule "/usr/local/lib/openser/modules/sl.so" loadmodule "/usr/local/lib/openser/modules/tm.so" loadmodule "/usr/local/lib/openser/modules/rr.so" loadmodule "/usr/local/lib/openser/modules/maxfwd.so" loadmodule "/usr/local/lib/openser/modules/usrloc.so" loadmodule "/usr/local/lib/openser/modules/registrar.so" #loadmodule "/usr/local/lib/openser/modules/auth.so" #loadmodule "/usr/local/lib/openser/modules/auth_radius.so" #loadmodule "/usr/local/lib/openser/modules/auth_db.so"
loadmodule "/usr/local/lib/openser/modules/uri.so" #loadmodule "/usr/local/lib/openser/modules/domain.so" loadmodule "/usr/local/lib/openser/modules/nathelper.so" loadmodule "/usr/local/lib/openser/modules/textops.so" #loadmodule "/usr/local/lib/openser/modules/uri_db.so" #loadmodule "/usr/local/lib/openser/modules/uri_radius.so"
#modparam("auth_db|usrloc|uri_db", "db_url","mysql://ser:heslo@localhost/ser") #modparam("auth_db", "calculate_ha1", 1) #modparam("auth_db", "password_column", "password")
modparam("nathelper", "natping_interval", 30) modparam("nathelper", "ping_nated_only", 1) modparam("nathelper", "rtpproxy_disable", 1) modparam("nathelper", "rtpproxy_sock","unix:/var/run/rtpproxy.sock") modparam("usrloc", "db_mode", 0) modparam("registrar", "nat_flag", 6) modparam("rr", "enable_full_lr", 1)
route {
#---------------------------------------------------------------- # Sanity Check Section #----------------------------------------------------------------- if (!mf_process_maxfwd_header("10")) { sl_send_reply("483", "Too Many Hops"); exit; }; if (msg:len > max_len) { sl_send_reply("513", "Message Overflow"); exit; }; #----------------------------------------------------------------- # Record Route Section #----------------------------------------------------------------- if (method!="REGISTER") { record_route(); }; if (method=="BYE" || method=="CANCEL") { unforce_rtp_proxy(); }; #----------------------------------------------------------------- # Loose Route Section #----------------------------------------------------------------- if (loose_route()) { if (has_totag() && method=="INVITE") { if (nat_uac_test("19")) { setflag(6); force_rport(); fix_nated_contact(); }; force_rtp_proxy("l"); }; route(1); exit;
}; #----------------------------------------------------------------- # Call Type Processing Section #----------------------------------------------------------------- if (uri==myself) { if (method=="INVITE") { route(3); exit; } else if (method=="REGISTER") { route(2); exit; };
if (!lookup("location")) { sl_send_reply("404", "User Not
Found"); exit; }; route(1); }; }
route[1] { #----------------------------------------------------------------- # Default Message Handler #----------------------------------------------------------------- t_on_reply("1"); if (!t_relay()) { if (method=="INVITE" && isflagset(6)) { unforce_rtp_proxy(); }; sl_reply_error(); }; }
route[2] { #----------------------------------------------------------------- # REGISTER Message Handler #---------------------------------------------------------------- if (!search("^Contact: *") && nat_uac_test("19")) { setflag(6); fix_nated_register(); # fix_nated_contact(); force_rport(); }; sl_send_reply("100", "Trying");
# if (!www_authorize("","subscriber")) { # www_challenge("","0"); # exit; # };
# if (!check_to()) { # sl_send_reply("401", "Unauthorized"); # exit; # };
# consume_credentials();
if (!save("location")) { sl_reply_error(); };
}
route[3] { #----------------------------------------------------------------- # INVITE Message Handler #----------------------------------------------------------------- if (nat_uac_test("19")) { setflag(6); }; if (!lookup("location")) { sl_send_reply("404", "User Not Found"); exit; }; # if (!proxy_authorize("","subscriber")) { # proxy_challenge("","0"); # break; # } else if (!check_from()) { # if(!check_from()) { # sl_send_reply("403", "Use From=ID"); # exit; # };
# consume_credentials();
if (isflagset(6)) { force_rport(); fix_nated_contact(); force_rtp_proxy(); }; t_on_reply("1"); if (!t_relay()) { if(isflagset(6)) { unforce_rtp_proxy(); }; sl_reply_error(); };
}
onreply_route[1] { if (isflagset(6) && (status=~"(180)|(183)|2[0-9][0-9]")) { if (!search("^Content-Length:\ 0")) { force_rtp_proxy(); }; } else if (nat_uac_test("1")) { fix_nated_contact(); }; }
What's wrong?
your comments are welcome.
Thanks
Serge MESSA
Users mailing list Users@openser.org http://openser.org/cgi-bin/mailman/listinfo/users