Hola,
Estás usando un fichero con configuración que no soporta tu versión de openser. Por
ejemplo el parametro nat_flag del modulo registrar ya no existe.
¿Porqué no empiezas con un fichero de configuración más sencillo?
G:
On Wed, 2008-01-16 at 17:27 -0600, Ronmel Jiron wrote:
gracias por responder...al hacer
# pidof openser ó
# nmap -sU 127.0.0.1 -p 5060
no sale nada, o sea que no esta funcionando. Pero ahora he modificado
mi openser.cfg y manda 23 errores..( no soy muy bueno en esto).
Mi archivo openser.cfg es el siguiente:
#
# $Id: openser.cfg 1676 2007-02-21 13:16:34Z bogdan_iancu $
#
# simple quick-start config script
# Please refer to the Core CookBook at
http://www.openser.org/dokuwiki/doku.php
# for a explanation of possible statements, functions and parameters.
#
# ----------- global configuration parameters ------------------------
debug=3 # debug level (cmd line: -dddddddddd)
fork=yes
log_stderror=yes # (cmd line: -E)
children=4
# Uncomment these lines to enter debugging mode
#fork=no
#log_stderror=yes
#
port=5060
alias=200.30.177.115
dns=no
rev_dns=no
# uncomment the following lines for TLS support
#disable_tls = 0
#listen = tls:your_IP:5061
listen = 200.30.177.115
#tls_verify_server = 1
#tls_verify_client = 1
#tls_require_client_certificate = 0
#tls_method = TLSv1
#tls_certificate = "/usr/local/etc/openser/tls/user/user-cert.pem"
#tls_private_key = "/usr/local/etc/openser/tls/user/user-privkey.pem"
#tls_ca_list = "/usr/local/etc/openser/tls/user/user-calist.pem"
# ------------------ module loading ----------------------------------
#set module path
mpath="/usr/local/lib/openser/modules/"
# Uncomment this if you want to use SQL database
#loadmodule "mysql.so"
#loadmodule "sl.so"
#loadmodule "tm.so"
#loadmodule "rr.so"
#loadmodule "maxfwd.so"
#loadmodule "usrloc.so"
#loadmodule "registrar.so"
#loadmodule "textops.so"
loadmodule "mi_fifo.so"
modparam("mi_fifo", "fifo_name", "/tmp/openser_fifo")
modparam("mi_fifo", "fifo_mode", 0660)
modparam("mi_fifo", "fifo_group", "openser")
modparam("mi_fifo", "fifo_user", "openser")
modparam("mi_fifo", "reply_dir", "/tmp/")
modparam("mi_fifo", "reply_indent", "\t")
#fifo="/tmp/openser_fifo"
#fifo_db_url="mysql://openser:openserrw@localhost/openser"
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_db.so"
loadmodule "/usr/local/lib/openser/modules/uri.so"
loadmodule "/usr/local/lib/openser/modules/uri_db.so"
loadmodule "/usr/local/lib/openser/modules/mediaproxy.so"
loadmodule "/usr/local/lib/openser/modules/nathelper.so"
loadmodule "/usr/local/lib/openser/modules/textops.so"
loadmodule "/usr/local/lib/openser/modules/domain.so"
loadmodule "/usr/local/lib/openser/modules/xlog.so"
loadmodule "/usr/local/lib/openser/modules/uac.so"
loadmodule "/usr/local/lib/openser/modules/speeddial.so"
loadmodule "/usr/local/lib/openser/modules/avpops.so"
# Uncomment this if you want digest authentication
# mysql.so must be loaded !
#loadmodule "auth.so"
#loadmodule "auth_db.so"
# ----------------- setting module-specific parameters ---------------
modparam("usrloc|auth_db|domain|speeddial|acc", "db_url",
"mysql://openser:openserrw@localhost/openser")
modparam("auth_db", "calculate_ha1", 1)
modparam("auth_db", "use_domain", 0)
modparam("domain", "db_mode", 1)
modparam("nathelper", "rtpproxy_disable", 1)
modparam("nathelper", "natping_interval", 60)
modparam("mediaproxy","natping_interval", 30)
modparam("mediaproxy","mediaproxy_socket",
"/var/run/mediaproxy.sock")
modparam("usrloc", "db_mode", 2)
modparam("usrloc", "use_domain", 0)
modparam("registrar", "default_expires", 60)
modparam("registrar", "min_expires", 30)
modparam("registrar", "nat_flag", 6)
modparam("registrar", "use_domain", 0)
modparam("rr", "enable_full_lr", 1)
modparam("auth", "rpid_suffix",
";party=calling;id-type=subscriber;screen=yes")
modparam("auth", "rpid_avp", "s:rpid")
# -- mi_fifo params --
modparam("mi_fifo", "fifo_name", "/tmp/openser_fifo")
# -- usrloc params --
#modparam("usrloc", "db_mode", 0)
# Uncomment this if you want to use SQL database
# for persistent storage and comment the previous line
#modparam("usrloc", "db_mode", 2)
# -- auth params --
# Uncomment if you are using auth module
#
#modparam("auth_db", "calculate_ha1", yes)
#
# If you set "calculate_ha1" parameter to yes (which true in this config),
# uncomment also the following parameter)
#
#modparam("auth_db", "password_column", "password")
# -- rr params --
# add value to ;lr param to make some broken UAs happy
#modparam("rr", "enable_full_lr", 1)
# ------------------------- request routing logic -------------------
# main routing logic
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");
exit;
};
if (msg:len >= 2048 ) {
sl_send_reply("513", "Message too big");
exit;
};
# 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 == "INVITE" && client_nat_test("3")) {
# Must add valid IP address below
record_route_preset("200.30.177.115:5060;nat=yes");
} else if (method != "REGISTER") {
record_route();
};
# subsequent messages withing a dialog should take the
# path determined by record-routing
if (loose_route()) {
if (loose_route()) {
if (has_totag() && (method == "INVITE" || method ==
"ACK")) {
if (client_nat_test("3") ||
search("^Route:.*;nat=yes")) {
setflag(6);
use_media_proxy();
};
};
route(1);
return;
};
# mark routing logic in request
##append_hf("P-hint: rr-enforced\r\n");
##route(1);
if (!uri==myself) {
route(1);
return;
};
# mark routing logic in request
##append_hf("P-hint: outbound\r\n");
# if you have some interdomain connections via TLS
#if(uri=~"(a)tls_domain1.net") {
# t_relay("tls:domain1.net");
# exit;
#} else if(uri=~"(a)tls_domain2.net") {
# t_relay("tls:domain2.net");
# exit;
#}
##route(1);
# 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 == "BYE") {
route(4);
return;
} else if (method == "CANCEL") {
route(4);
return;
} else if (method == "INVITE") {
route(3);
return;
} else if (method == "REGISTER") {
route(2);
return;
} else if (method == "NOTIFY") {
sl_send_reply("200", "Understood");
return;
} else if (method == "OPTIONS") {
sl_send_reply("200", "Got it");
return;
}
};
route(1);
}
##if (method=="REGISTER") {
# Uncomment this if you want to use digest authentication
#if (!www_authorize("openser.org", "subscriber")) {
# www_challenge("openser.org", "0");
# exit;
#};
## save("location");
## exit;
##};
##lookup("aliases");
##if (!uri==myself) {
## append_hf("P-hint: outbound alias\r\n");
route(1);
##};
# native SIP destinations are handled using our USRLOC DB
##if (!lookup("location")) {
## sl_send_reply("404", "Not Found");
## exit;
##};
##append_hf("P-hint: usrloc applied\r\n");
##};
##route(1);
##}
route[1] {
t_on_reply("1");
if (!t_relay()) {
if (method=="INVITE" || method=="ACK") {
end_media_session();
};
sl_reply_error();
};
}
# send it out now; use stateful forwarding as it works reliably
# even for UDP2TCP
##if (!t_relay()) {
## sl_reply_error();
##};
##exit;
##}
# REGISTER Message Handling
# -------------------------
route[2] {
if (!search("^Contact:\ +\*") &&
client_nat_test("7")) {
setflag(6);
fix_nated_register();
force_rport();
};
sl_send_reply("100", "Trying");
if (!www_authorize("","subscriber")) {
www_challenge("","0");
return;
};
if (!check_to()) {
sl_send_reply("401", "Unauthorized");
return;
};
consume_credentials();
if (!save("location")) {
sl_reply_error();
};
}
# INVITE Message Handling
# ----------------------------------
route[3] {
# Test for nat, perhaps fix headers
if (client_nat_test("3")) {
setflag(7);
force_rport();
fix_nated_contact();
};
# 3 and 4 digits URIs are sent to our Asterisk PBX
if ((uri =~ "^sip:[0-9]{3}@.*") || (uri =~
"^sip:[0-9]{4}@.*")) {
rewritehost("pbx.valid.host.com:5060");
use_media_proxy();
route(1);
return;
};
# Any URI that begins with 1 plus 10 digits authenticate and pass on
# to our SIP Provider
if (uri =~ .^sip:1[0-9]{10}@.*.) {
# Authenticate these calls
if (!proxy_authorize(.",.subscriber.)) {
proxy_challenge(.",.0.);
return;
} else if (!check_from()) {
sl_send_reply(.403., .Use From ID.);
return;
};
consume_credentials();
rewritehostport(.proxy-1.nufone.net:5060.);
route(1);
return;
};
if (!lookup(.location.)) {
sl_send_reply(.404., .User Not Found, Sorry.);
return;
};
# If NAT is previously detected, proxy
if (isflagset(6) || isflagset(7)) {
use_media_proxy();
};
route(1);
}
# CANCEL and BYE Message Handling
# ----------------------------------
route[4] {
if (client_nat_test("3")) {
setflag(7);
force_rport();
fix_nated_contact();
};
end_media_session();
route(1);
}
onreply_route[1] {
if ((isflagset(6) || isflagset(7)) &&
(status=~"(180)|(183)|2[0-9][0-9]")) {
if (!search("^Content-Length:\ +0")) {
use_media_proxy();
};
};
if (client_nat_test("1")) {
fix_nated_contact();
};
}
y los mensajes de error son:
0(16987) set_mod_param_regex: parameter <nat_flag> not found in
module <registrar>
0(16987) parse error (107,19-20): Can't set module parameter
0(16987) set_mod_param_regex: parameter <use_domain> not found in
module <registrar>
0(16987) parse error (108,19-20): Can't set module parameter
0(16987) parse error (259,6-7): syntax error
0(16987) parse error (259,6-7): missing '(' or ')' ?
0(16987) parse error (259,6-7): bad command: missing ';'?
0(16987) parse error (259,7-8): bad command!)
0(16987) parse error (259,8-9): bad command!)
0(16987) parse error (259,10-11): bad command!)
0(16987) parse error (319,20-21): syntax error
0(16987) parse error (319,20-21): string or MYSELF expected
0(16987) parse error (319,20-21): bad command!)
0(16987) parse error (319,21-22): bad command!)
0(16987) parse error (319,25-26): bad command!)
0(16987) parse error (319,25-26): bad command!)
0(16987) parse error (319,26-27): bad command!)
0(16987) parse error (319,27-28): bad command!)
0(16987) parse error (319,28-29): bad command!)
0(16987) parse error (319,29-30): bad command!)
0(16987) parse error (319,30-31): bad command!)
0(16987) parse error (319,31-32): bad command!)
0(16987) parse error (319,32-33): bad command!)
0(16987) parse error (319,33-35): bad command!)
0(16987) parse error (319,36-37):
ERROR: bad config file (23 errors)
0(16987) INFO:mi_fifo:mi_destroy:memory for the child's mi_fifo_pid
was not allocated -> nothing to destroy
ayuda por favor
2008/1/16, Iñaki Baz Castillo <ibc(a)aliax.net>et>:
El Miércoles, 16 de Enero de 2008, Ronmel Jiron
escribió:
Hola, soy nuenvo en Openser. he instalado OpenSER
siguiendo los pasos
encontrados en la web. He modificado el archivo openser.cfg de
diferentes maneras, lo hice con el generador de sipwise. De ninguna
manera me ha funcionado, o sea que cuando hago:
# openser start
El resultado es:
INFO:mi_fifo:mi_destroy:memory for the child's mi_fifo_pid was not
allocated -> nothing to destroy.
No se que esta pasando, ayuda por favor
Es un "INFO", ni siquiera un "WARGING" y mucho menos un
"ERROR". Ignóralo.
¿Está funcionando OpenSer?
~# pidof openser
~# nmap -sU 127.0.0.1 -p 5060
--
Iñaki Baz Castillo
_______________________________________________
Users-es mailing list
Users-es(a)lists.openser.org
http://lists.openser.org/cgi-bin/mailman/listinfo/users-es