[OpenSER-Users] OpenSER - a slow starter?

Bogdan-Andrei Iancu bogdan at voice-system.ro
Wed Feb 13 11:47:43 CET 2008


Hi,

by default openser tries to do reverse DNS lookup on the IPs you put in 
"listen" to learn all the aliases (DNS records pointing to this IP).

To disable this, set the global parameter:
    auto_alias=no

Let me know if this makes a difference or not.

Regards,
Bogdan

Klaus Darilion wrote:
> MAybe openser tries t do some DNS lookups which may take long time.
>
> The best would be to set debug=4 and "tail" to the logfile 
> (default=/var/log/syslog (or /var/log/messages on RedHat&co)).
>
> Then start openser and watch the logfile.....
>
> klaus
>
> Lars Skjærlund schrieb:
>   
>> Hi list,
>>
>> I'm struggling to learn OpenSER, but I've come across a weird problem:
>>
>> OpenSER seems to be a slow starter! My initial tests on the internal
>> network worked fine, but now I've moved the server to our hosting and
>> public IPs. I'm testing using OpenSER 1.3.0 and a Twinkle softphone on
>> Linux. The softphone is behind NAT, OpenSER absolutely not.
>>
>> When I start OpenSER, Twinkle cannot register and returns the error
>> "you are not registered". However, looking at the traffic using tcpdump,
>> everything looks normal to me.
>>
>> The weird thing is that if I leave the software running for about an
>> hour or so, everything starts working. After the timeout period (default
>> 3600 seconds), the phone re-registers and succeeds? It's not just a
>> startup problem - if I try to re-register after having both systems
>> running for, say, 15 min., it still doesn't work. But after about an
>> hour, it works.
>>
>> What am I doing wrong here?
>>
>> Actually, it only works sort of: If I use 'openserctl online', it still
>> claims that no users are registered even though the softphone claims to
>> be. If I switch on MySQL support, the database isn't updated.
>>
>> I'm testing with a very basic setup - no authentication at all, as a
>> first measure I simply want the phone to register - and to be able to se
>> it reflected in the database.
>>
>> I must be missing something - but what?
>>
>> My present openser.cfg is here - but I've tried several other tutorial
>> configs:
>>
>> listen=udp:x.x.x.x:5060
>>
>> debug=6
>> fork=no
>> log_stderror=yes
>>
>> check_via=no
>> dns=no
>> rev_dns=no
>>
>> mpath="/lib64/openser/modules"
>>
>> loadmodule "xlog.so"
>> loadmodule "mysql.so"
>> loadmodule "sl.so"
>> loadmodule "tm.so"
>> loadmodule "rr.so"
>> loadmodule "maxfwd.so"
>> loadmodule "usrloc.so"
>> loadmodule "registrar.so"
>> loadmodule "nathelper.so"
>>
>> modparam("usrloc", "db_mode", 3)
>> modparam("usrloc", "db_url",
>> "mysql://openser:xxxxxxxx@mysql.mydomain.org/openser")
>>
>> modparam("rr", "enable_full_lr", 1)
>>
>> modparam("nathelper", "natping_interval", 10)
>>
>>
>>
>> route {
>> 	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;
>> 	}
>>
>> 	if (method!="REGISTER") {
>> 		record_route();
>> 	}
>>
>> 	if (loose_route()) {
>> 		route(1);
>> 		exit;
>> 	}
>>
>> 	if (uri!=myself) {
>> 		route(1);
>> 		exit;
>> 	}
>>
>> 	if (method=="ACK") {
>> 		route(1);
>> 		exit;
>> 	}
>>
>> 	if (method=="REGISTER") {
>> 		route(2);
>> 		exit;
>> 	}
>>
>> 	lookup("aliases");
>>
>> 	if (uri!=myself) {
>> 		route(1);
>> 		exit;
>> 	}
>>
>> 	if (!lookup("location")) {
>> 		sl_send_reply("404", "User not found");
>> 		exit;
>> 	}
>>
>> 	route(1);
>> }
>>
>>
>>
>> route[1] {
>> 	if (!t_relay()) {
>> 		sl_reply_error();
>> 	}
>> }
>>
>>
>>
>> route[2] {
>> 	xdbg("Reached route[2]\n");
>>
>> 	if (!save("location")) {
>> 		xdbg("Error in save(location)\n");
>>
>> 		sl_reply_error();
>> 	}
>> }
>>
>> Regards,
>> Lars
>>     
>
> _______________________________________________
> Users mailing list
> Users at lists.openser.org
> http://lists.openser.org/cgi-bin/mailman/listinfo/users
>
>   





More information about the Users mailing list