Daniel-Constantin Mierla wrote:
I found a part of my problem, but I cannot explain it. The phone (hard phone as well as a softphone) have been set to connect to port 5062, but I see the registration still on 5060, where Asterisk is running (on the same machine). The user 800000 has no account on Asterisk, therefore the login fails there.
Any idea where this could come from?
maybe there is a special field to set for registrar address in phone's configuration, or the phone is broken. What kind of phones have you tried?
That was exactly my first thought too. I use a noname SIP phone, and than I used firefly. The exaclty same behaviour.
never used firefly.
Is there any command line utility to test that?
if you want tot test if the registration works, then you can use sipsak, from http://sipsak.org, it is a tiny command line utility. Otherwise, you can try some free sip soft phones: kphone, minisip, xten xlite.
I tried Xlite and it is exactly the same, ... I set the sip registration port to 5062 and it still registers in Asterisk, ... I tried to use instead of the domain name the IP address, but it is the same. I thought already on the possibility that the DNS SRV entry redirects all to 5060, but that would not be anymore true, when I used the IP address, ....
grep -v ^[#,$] openser.cfg
check_via=no # (cmd. line: -v) dns=no # (cmd. line: -r) rev_dns=no # (cmd. line: -R) port=5062 fifo="/tmp/openser_fifo" fifo_mode=0666
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/textops.so" loadmodule "/usr/local/lib/openser/modules/auth.so" loadmodule "/usr/local/lib/openser/modules/auth_db.so"
modparam("usrloc", "db_mode", 0) modparam("usrloc", "db_mode", 2) modparam("auth_db", "calculate_ha1", yes) modparam("rr", "enable_full_lr", 1)
route{
# initial sanity checks -- messages with # max_forwards==0, or excessively long requests if (!mf_process_maxfwd_header("10")) { sl_send_reply("483","Too Many Hops"); return; }; if (msg:len >= 2048 ) { sl_send_reply("513", "Message too big"); return; };
# we record-route all messages -- to make sure that # subsequent messages will go through our proxy; that's # particularly good if upstream and downstream entities # use different transport protocol if (!method=="REGISTER") record_route();
# subsequent messages withing a dialog should take the # path determined by record-routing if (loose_route()) { # mark routing logic in request append_hf("P-hint: rr-enforced\r\n"); route(1); return; };
if (!uri==myself) { # mark routing logic in request append_hf("P-hint: outbound\r\n"); route(1); return; };
# if the request is for other domain use UsrLoc # (in case, it does not work, use the following command # with proper names and addresses in it) if (uri==myself) {
if (method=="REGISTER") {
if (!www_authorize("vpbx.mydomain.com", "subscriber")) { www_challenge("vpbx.mydomain.com", "0"); return; };
save("location"); return; };
lookup("aliases"); if (!uri==myself) { append_hf("P-hint: outbound alias\r\n"); route(1); return; };
# native SIP destinations are handled using our USRLOC DB if (!lookup("location")) { sl_send_reply("404", "Not Found"); return; }; }; append_hf("P-hint: usrloc applied\r\n"); route(1); }
route[1] { # send it out now; use stateful forwarding as it works reliably # even for UDP2TCP if (!t_relay()) { sl_reply_error(); }; }