Hello,
Is this possible?
Call comes to openser for handling signaling, and is handed over to B2BUA for topology hiding and media handling. But the routing(selection of gw to terminate to the supplier) is used from openser LCR. Or after the call is given to B2BUA the routing is to be performed by the B2BUA. Thanks!!
Regards,
KChris
---------------------------------
5, 50, 500, 5000 - Store N number of mails in your inbox. Click here.
Hi,
I'm trying to save the destination IP address of
an INVITE message received and processed by OpenSER
in the acc table. I've added an extra column and
told the acc module about the new column.
When I looked at the contents of the new column it
was empty and adding an xlog() call to the config file
also showed an empty $du pseudo variable. I know the
OpenSER version I'm using is not the very latest, but
it should be new enough to properly fill $du.
I'm calling acc for received INVITE and BYE messages
and showing $du with xlog() in the last line of INVITE
processing for my testcase when the destination should
be available.
What am I doing wrong?
--
Andreas Sikkema
Dear all
I followed tutorial from SER-Getting Start document for Mediaproxy to solve
nat problem.
I read on the Openser document
http://www.openser.org/docs/modules/1.2.x/usrloc.html#AEN83
I have to use modparam("usrloc", "nat_bflag", 6) instead of
modparam("registrar", "nat_flag", 6)
And from the documentation, it said
"When SIP clients attempt to REGISTER with our SIP proxy we need a way to
tell the registrar module to
store NAT information for any particular UA. We do this by using flag 6,
which has been arbitrarily chosen
(but defined earlier in the loadmodule parameter section). We could have
specified another integer here, but
flag 6 seems to be the accepted standard for nat_flag.
If the nat_flag is set before calling the save() function to store contact
information, SER will preserve the
NAT contact information as well as set the flags column in the MySQL
location table. By doing so, we can
call lookup(location) when processing messages and flag 6 will be set for
NATed clients."
I have a NAT UA is detected as NAT-ed UA by Openser with below rule and do
setflag(6); before it does save("location");
Why in mysql, location table, i see the flags column still 0 instead of 6 ?
Did I miss something?
Please help :(
# $Id: nat-mediaproxy.cfg 51 2006-01-31 13:28:04Z /CN=Paul
Hazlett/emailAddress= paul(a)onsip.org $
debug=3
fork=no
log_stderror=yes
#alias="halodns.powere2e.com"
listen=x.x.x.x # INSERT YOUR IP ADDRESS HERE
port=5060
children=4
dns=no
rev_dns=no
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/domain.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/xlog.so"
loadmodule "/usr/local/lib/openser/modules/mi_fifo.so"
modparam("mi_fifo","fifo_name","/tmp/openser_fifo")
modparam("auth_db|domain|uri_db|usrloc", "db_url", "
mysql://openser:openserrw@localhost/openser")
modparam("auth_db", "calculate_ha1", 1)
modparam("auth_db", "password_column", "password")
modparam("nathelper|registrar", "received_avp", "$avp(i:42)")
modparam("nathelper", "rtpproxy_disable", 1)
modparam("nathelper", "natping_interval", 0)
modparam("mediaproxy","natping_interval", 30)
modparam("mediaproxy","mediaproxy_socket", "/var/run/mediaproxy.sock")
modparam("mediaproxy","sip_asymmetrics","/usr/local/etc/openser/sip-clients")
modparam("mediaproxy","rtp_asymmetrics","/usr/local/etc/openser/rtp-clients")
modparam("usrloc", "db_mode", 2)
modparam("usrloc", "nat_bflag", 6) <- set to 6
modparam("rr", "enable_full_lr", 1)
.
.
.
.
route[2] {
# -----------------------------------------------------------------
# REGISTER Message Handler
# ----------------------------------------------------------------
xlog("L_NOTICE","$Cxg Enter Route[2]: REGISTER $Cxx\n");
sl_send_reply("100", "Trying");
if (!search("^Contact:[ ]*\*") && client_nat_test("2")) {
setflag(6);
fix_nated_register();
force_rport();
};
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();
};
}
Hello,
I 'd like to relay calls to another sip proxy, which requires
authentication.
But i can't forward the 407 reply to the caller, beacause they cant
authenticate themselves,
so i have to authenticate the call myself, without the caller knows
anything about it.
witch uac_auth, i can add the proxy-authorization header, but i can't
send the new request to the proxy.
i try this way:
route[1] {
t_on_failure("1");
rewritehostport("another.proxy:5060");
if (!t_relay()) {
sl_reply_error();
}
exit;
}
failure_route[1] {
xlog("L_WARN", "FAILURE Route 3 AUTH required...trying..\n");
uac_auth();
if(t_newtran()) {
xlog("L_WARN", "Creating new transaction successfully...\n");
}
else {
xlog("L_WARN", "Creating new transaction failed...\n");
};
t_relay();
}
When the proxy challange authentication with 407, the call is passed to
failure route properly, but t_relay failed with the following error:
0(27975) ERROR:tm:t_forward_nonack: no branch for forwarding
0(27975) ERROR:tm:w_t_relay: t_forward_nonack failed
I think that's mean that the transaction doesn't exists, becacause it
acknowleged alrealy, am i right?
i think i have to t_newtran(), but it cannot be done in failure route,
Can you suggest any method to send the request again with the credentials?
Thanks any help,
Tamas
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
I have a security matter with my configuration (default one), it's possible to register using login/password and to set anything in the contact field.
So if you have an account 106/password, it's possible to be 105 in the location database!
How is it possible to deny that kind of matter..? Thanks
Is it useful to use: method_filtering of the REGISTRAR module
Or is it better to so something whith the values below and a compare function??
$ct - reference to body of contact header
$ar - realm from Authorization or Proxy-Authorization header
$au - username from Authorization or Proxy-Authorization header
if ($ct != $au@$ar) {
sl_send_reply("403", "User and login must be the same");
};
Best Regards,
Marc LEURENT
#
U 82.127.0.79:1045 -> 88.191.45.91:5060
REGISTER sip:sd-7501.dedibox.fr;user=phone SIP/2.0.
Via: SIP/2.0/UDP 82.127.0.79:1046;branch=z9hG4bK5808036470869310420.
From: <sip:105@sd-7501.dedibox.fr:5060;user=phone>;tag=c0a80101-38c0e7.
To: <sip:105@sd-7501.dedibox.fr:5060;user=phone>.
Call-ID: 29eb6e9-c0a80101-5-17(a)192.168.95.70.
CSeq: 90 REGISTER.
Max-Forwards: 70.
Expires: 3600.
Contact: <sip:105@82.127.0.79:1046;user=phone>.
Authorization: Digest username="106", realm="sd-7501.dedibox.fr", nonce="46dfceb402cad04812873b855bc50ea65aa99ed5", uri="sip:sd-7501.dedibox.fr",
response="7dca83fd358a9aea3a963f4a71ea5c9e", algorithm=MD5, qop=auth, cnonce="38c102", nc=00000001.
User-Agent: THOMSON ST2030 hw0 fw1.56 00-0E-50-4E-AF-C4.
Allow-Events: refer,dialog,message-summary,check-sync,talk,hold.
Content-Length: 0.
.
AOR:: 105
Contact:: sip:105@82.127.0.79:1046;user=phone Q=
Expires:: 194
Callid:: 29eb6e9-c0a80101-5-17(a)192.168.95.70
Cseq:: 92
User-agent:: THOMSON ST2030 hw0 fw1.56 00-0E-50-4E-AF-C4
Received:: sip:82.127.0.79:1045
State:: CS_SYNC
Flags:: 0
Cflag:: 192
Socket:: udp:88.191.45.91:5060
Methods:: 4294967295
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iD8DBQFG39AIqjpLE0HiOBYRAiUKAJ9Ilv+Zpbzw89tqWgwmHyVjU/DXugCgjEh8
5XQKEAeiF/L4RWszGC2/yzQ=
=SXE9
-----END PGP SIGNATURE-----
Hi, in order to minimize the SQL queries for functions "is_uri_host_local()"
and "is_from_local()" I want to exec they just one time and store the result
in a variable, but the result is unexpected:
$var(is_uri_host_local) = is_uri_host_local();
xlog("------------is_uri_host_local = $var(is_uri_host_local)\n");
So if the URI is local then the result is 1.
But if the URI is not local then result is 4294967295. ¿?¿?¿?¿
Obviously it makes me difficult for me to do:
if ($var(is_uri_host_local))
because always is true and I need to convert the values and so.
Why "is_uri_host_local()" doesn't return -1 in case of being not local domain?
Or maybe the issue is when I store the result in a variable? but why?
Thanks.
--
Iñaki Baz Castillo
ibc(a)in.ilimit.es
Hi all,
I'm currently succesfully running OpenSER, but user population grow up
and I'm affraid I need laod balancing :-)
The projected scenario is:
USERS <-> (NAT) <-> LB <-> P1 <-> GWs
<-> P2
<-> R1
<-> R2
Where LB is Load Balancer (OpenSER with Dispatcher & Path module), and
P1-P2 is proxies (OpenSER) and R1-R2 registrars (OpenSER)
And the problem I need to solve is NAT handling.
I can correctly process registrations with help of Path module on LB and
enabling of using it on R1,R2.
But, what should I do with calls? My idea is to process NAT handling on
P1-P2, but I don't know how. Both proxies are unable (I mean) detect
correct user IP address.
Could you tell me, please, what to do? Do NAT handling on LB? It is
unnecessary added load to LB...
Thanx in advance!
kokoska.rokoska
Hello all,
I have a rather strange issue, I cannot use "is_from_user_enum()" without first using the variable $fu somewhere; or else I get the error "0(5858) get_parsed_from(): From header is not properly parsed".
Originally I had an xlog there and it all worked fine, but when I took it away I started getting the error. Now I just have " $var(bleh) = $fu;" there and it makes it work fine.
I had a forum post @ http://www.voipuser.org/forum_topic_10875.html
that shows my entire config.
Thanks for any help,
Eric
_________________________________________________________________
Discover the new Windows Vista
http://search.msn.com/results.aspx?q=windows+vista&mkt=en-US&form=QBRE
Hi all.
CDRTool shows all call records with price o.oooo.
Syslog logs following:
Error: Cannot find rates for callid=, domain=koreanet.us,
destination=1847, profile=441, app=audio
Can anyone help?
Thanks in advance
John Chahn Kim
email: johnk(a)koreanet.us