Hi
I am trying to setup SER with nathelper module and portaone proxy. All other messages are sent on the nated IP of both user agents, except final ACK. Which is sent on private IP of called party. Here is the sequence .... I have also pasted my ser.cfg file
My ser is running on public IP and both user agents are behind firewall.
UA1 SER UA2 INVITE ===============> INVITE ===============>
TRYING <=============== Ringing <=============== Ringing <=============== OK <=============== OK <===============
ACK ===============>
ACK (sent on UA2's Private IP) ===============>
debug=7 fork=yes log_stderror=yes listen=some_public_ip port=5060 check_via=no dns=no rev_dns=no server_signature=no sip_warning=no fifo="/tmp/ser_fifo"
# ------------------ module loading ---------------------------------- loadmodule "/usr/local/lib/ser/modules/nathelper.so" loadmodule "/usr/local/lib/ser/modules/sl.so" loadmodule "/usr/local/lib/ser/modules/xlog.so" loadmodule "/usr/local/lib/ser/modules/tm.so" loadmodule "/usr/local/lib/ser/modules/rr.so" loadmodule "/usr/local/lib/ser/modules/maxfwd.so" loadmodule "/usr/local/lib/ser/modules/usrloc.so" loadmodule "/usr/local/lib/ser/modules/registrar.so" loadmodule "/usr/local/lib/ser/modules/auth.so" loadmodule "/usr/local/lib/ser/modules/exec.so" loadmodule "/usr/local/lib/ser/modules/print.so" loadmodule "/usr/local/lib/ser/modules/textops.so" loadmodule "/usr/local/lib/ser/modules/avpops.so" # ----------------- setting module-specific parameters --------------- modparam("usrloc", "db_mode", 0) modparam("rr", "enable_full_lr", 1) modparam("nathelper","rtpproxy_sock", "udp:some_public_ip:port") modparam("registrar", "nat_flag", 6) modparam("nathelper", "natping_interval", 30) modparam("nathelper", "ping_nated_only", 0) modparam("tm", "fr_timer", 12) modparam("tm", "fr_inv_timer", 30) modparam("tm", "fr_inv_timer_avp", "inv_timeout")
# ------------------------- request routing logic ------------------- # main routing logic
route { if(!mf_process_maxfwd_header("10")) { log(1, "too many hops\n"); sl_send_reply("483","Too Many Hops"); break; };
if(msg:len >= max_len ) { log(1, "message too big\n"); sl_send_reply("513", "Message too big"); break; };
if(loose_route()) { t_relay(); break; };
if(uri==myself) { if(method=="REGISTER") { fix_nated_register(); force_rport(); if(!save("location")) { log(1, "* * * * * < < < could not save location > > > * * * * *\n"); sl_reply_error(); }; break; };
if(method=="INVITE") { fix_nated_contact(); record_route(); if(!lookup("location")) { sl_send_reply("404", "subscriber is offline. Pls try later"); break; } force_rport(); force_rtp_proxy("l"); fix_nated_sdp("1"); } };
if(!t_relay()) { log(1, "relay error\n"); sl_reply_error(); break; }; } --------------------------------- Do you Yahoo!? Get on board. You're invited to try the new Yahoo! Mail.
It has been done already.. so why don't you get the example configs and save some time ;-) http://www.iptel.org/ser/doc/gettingstarted g-)
Abdul Qadir wrote:
Hi
I am trying to setup SER with nathelper module and portaone proxy. All other messages are sent on the nated IP of both user agents, except final ACK. Which is sent on private IP of called party. Here is the sequence .... I have also pasted my ser.cfg file
My ser is running on public IP and both user agents are behind firewall.
UA1 SER UA2 INVITE ===============> INVITE ===============>
TRYING <=============== Ringing <=============== Ringing
<=============== OK <=============== OK <===============
ACK
===============>
ACK (sent on UA2's
Private IP) ===============>
debug=7 fork=yes log_stderror=yes listen=some_public_ip port=5060 check_via=no dns=no rev_dns=no server_signature=no sip_warning=no fifo="/tmp/ser_fifo"
# ------------------ module loading ---------------------------------- loadmodule "/usr/local/lib/ser/modules/nathelper.so" loadmodule "/usr/local/lib/ser/modules/sl.so" loadmodule "/usr/local/lib/ser/modules/xlog.so" loadmodule "/usr/local/lib/ser/modules/tm.so" loadmodule "/usr/local/lib/ser/modules/rr.so" loadmodule "/usr/local/lib/ser/modules/maxfwd.so" loadmodule "/usr/local/lib/ser/modules/usrloc.so" loadmodule "/usr/local/lib/ser/modules/registrar.so" loadmodule "/usr/local/lib/ser/modules/auth.so" loadmodule "/usr/local/lib/ser/modules/exec.so" loadmodule "/usr/local/lib/ser/modules/print.so" loadmodule "/usr/local/lib/ser/modules/textops.so" loadmodule "/usr/local/lib/ser/modules/avpops.so" # ----------------- setting module-specific parameters --------------- modparam("usrloc", "db_mode", 0) modparam("rr", "enable_full_lr", 1) modparam("nathelper","rtpproxy_sock", "udp:some_public_ip:port") modparam("registrar", "nat_flag", 6) modparam("nathelper", "natping_interval", 30) modparam("nathelper", "ping_nated_only", 0) modparam("tm", "fr_timer", 12) modparam("tm", "fr_inv_timer", 30) modparam("tm", "fr_inv_timer_avp", "inv_timeout")
# ------------------------- request routing logic ------------------- # main routing logic
route { if(!mf_process_maxfwd_header("10")) { log(1, "too many hops\n"); sl_send_reply("483","Too Many Hops"); break; };
if(msg:len >= max_len ) { log(1, "message too big\n"); sl_send_reply("513", "Message too big"); break; }; if(loose_route()) { t_relay(); break; }; if(uri==myself) { if(method=="REGISTER") { fix_nated_register(); force_rport(); if(!save("location")) { log(1, "* * * * * < < < could not save location > > >
*\n"); sl_reply_error(); }; break; };
if(method=="INVITE") { fix_nated_contact(); record_route(); if(!lookup("location")) { sl_send_reply("404", "subscriber is offline. Pls try
later"); break; } force_rport(); force_rtp_proxy("l"); fix_nated_sdp("1"); } };
if(!t_relay()) { log(1, "relay error\n"); sl_reply_error(); break; };
}
Do you Yahoo!? Get on board. You're invited http://us.rd.yahoo.com/evt=40791/*http://advision.webevents.yahoo.com/mailbeta to try the new Yahoo! Mail.
Serusers mailing list Serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers