Hi Greger!
Greger V. Teigre wrote:
...
> Agree. We use RADIUS-based authentication and authorization with
> distributed RADIUS servers. Only usrloc is stored in mysql (we use
I want to ask about your radius experiences. We (www.at43.at) are also
using radius authentication. All the radius requests are sent to a local
radius proxy which forwards the request to the radius server of the
participating groups (universities, schools ...).
If one of the remote radius servers is down, we are having problems with
ser. Ser's threads are busy, waiting for the radius authorization
responses and ser is slowing done. Then, the client starts to retransmit
their REGISTER messages and ser is getting busier and busier until all
threads are busy with authentication requests. Thus, the complete
service will be down only if one of the radius servers is down.
We have reduced the proxy load by replying "100...trying" to all
REGISTER requests, which reduces retransmissions in case of slow
authentication. We also tried to tweak the radius retransmission and
timeout settings but could not find a satisfying solution yet.
Do you also have problems in your distributed radius setup? Maybe you
could post a little about your experience with distributed radius.
All other radius users are also welcome to post their radius experiences.
regards,
klaus
PS: I hope Maxim's patch for stateful authentication is going into 0.9.0
Hi All,
Any idea, how to change registration timeout value in
ser.cfg so that my phone register with the server
every 5 minutes in place of default 1 minute.
Please advise.
Regards,
Suvendu.
________________________________________________________________________
Yahoo! India Matrimony: Find your life partner online
Go to: http://yahoo.shaadi.com/india-matrimony
Uncomment "DEFS+=-DSQL_ACC" at modules/acc/Makfile and recompile the mysql.so.
Then using modparam("acc", "db_url",
"sql://ser:password@localhost/ser") or modparam("acc", "db_url",
"mysql://ser:password@localhost/ser") to test it.
Charles
On Mon, 21 Feb 2005 13:09:50 +0100, Nicolas Ruiz <nruiz(a)vivaction.com> wrote:
> Hi,
>
> I have set : modparam("acc", "db_url", "sql://ser:password@localhost/ser")
>
> but when I start it, I have :
>
> 0(19788) set_mod_param_regex: parameter <db_url> not found in module <acc>
> 0(19788) parse error (70,61-62): Can't set module parameter
>
> How can I compil him with mysql support ?
>
> Thanks
>
> Best regards
>
>
>
> Vos Solutions Voix-Data !
>
>
> Nicolas Ruiz
> Service Technique
> Ligne directe : + 33 (0) 1 56 38 39 71
> Fax :+ 33 (0) 1 47 24 74 77
> nruiz(a)vivaction.com
>
> Immeuble Plein Ouest
> 177 av. Georges Clemenceau
> 92024 Nanterre - France
> Tel : 0 811 02 6000
> www.vivaction.com
>
> ________________________________________________________________________________________________________________________
> This e-mail and the information it contains are confidential and legally
> protected by law. Only access by the intended recipient is authorized.
> Review, distribution,reproduction, publication or other use of this e-mail
> is prohibited.
> Cet e-mail et les informations qu'il contient sont confidentiels et protégés
> par la loi. L'accès à ce message n'est autorisé qu'au destinataire de
> celui-ci. Toute modification,distribution, reproduction, publication, ou
> autre utilisation de cet e-mail est formellement interdite.
>
>
>
>
>
>
>
>
>
>
>
> _______________________________________________
> Serusers mailing list
> serusers(a)lists.iptel.org
> http://lists.iptel.org/mailman/listinfo/serusers
>
>
>
Hi,
I want to use SER to Rasius authenticate, radius accounting.
I read too many documents but not able to get a good configuration.
My scenerio is simple.
- Register SIP clients via Radius Auth.
- Route the call with respect to prefix (is it possible to get from radius?)
or some other methos instead of direct CFG config.
- radius accounting (start/stop)
have a working cfg file ?
Hi,
I have set : modparam("acc", "db_url", "sql://ser:password@localhost/ser")
but when I start it, I have :
0(19788) set_mod_param_regex: parameter <db_url> not found in module <acc>
0(19788) parse error (70,61-62): Can't set module parameter
How can I compil him with mysql support ?
Thanks
Best regards
Vos Solutions Voix-Data !
Nicolas Ruiz
Service Technique
Ligne directe : + 33 (0) 1 56 38 39 71
Fax :+ 33 (0) 1 47 24 74 77
nruiz(a)vivaction.com
Immeuble Plein Ouest
177 av. Georges Clemenceau
92024 Nanterre - France
Tel : 0 811 02 6000
www.vivaction.com
____________________________________________________________________________
____________________________________________
This e-mail and the information it contains are confidential and legally
protected by law. Only access by the intended recipient is authorized.
Review, distribution,reproduction, publication or other use of this e-mail
is prohibited.
Cet e-mail et les informations qu'il contient sont confidentiels et protégés
par la loi. L'accès à ce message n'est autorisé qu'au destinataire de
celui-ci. Toute modification,distribution, reproduction, publication, ou
autre utilisation de cet e-mail est formellement interdite.
Hi,
I understand the basic problem behind one way audio is that the
client behind nat has a private address in the sdp information,
therefore the voice cannot be delivered to this private address. It
is necessary to rewrite this sdp info with the nat public address.
However I have done this in my ser.cfg and I still have one way
voice.
I have included some of relevant ethereal messages on SER and my
ser.cfg below. The messages show that the rtp information has been
changed. Does anyone think the problem is because there is no port
information in the "c" and "o" fields in the sdp?? If so how can I
make sure the port is included?
Many Thanks,
Aisling.
Ethereal messages:
call between private client with public nat address 63.218.54.71 and
a public client with address 157.190.183.80. The SER address is
157.190.183.70.
REGISTER sip:157.190.183.70 SIP/2.0
VIA: SIP/2.0/UDP 63.218.54.71:11987;rport;branch=z9h.....
FROM: whoever <sip:2008@157.190.183.70>;tag=455....
TO: whoever <sip:2008@157.190.183.70>
CONTACT: "whoever" <sip:2008@63.218.54.71:11987>
Call-Id: ....
CSeq: 22227 REGISTER
Expires; 1800
User Agent: X-Lite release 1103m
Content-Length: 0
SIP/2.0 200 OK
VIA: SIP/2.0/UDP 63.218.54.71:11987;rport;branch=z9h.....
FROM: whoever <sip:2008@157.190.183.70>;tag=455....
TO: whoever <sip:2008@157.190.183.70>
CONTACT: "whoever" <sip:2008@63.218.54.71:11987>;q=0.00 expires=1800
Call-Id: ....
CSeq: 22227 REGISTER
Expires; 1800
User Agent: X-Lite release 1103m
Content-Length: 0
The public client (157.190.183.80 also registers)
Then the private client invites the public client to a voice
conversation:
INVITE sip:2001@157.190.183.70 SIP/2.0
VIA: SIP/2.0/UDP 63.218.54.71:11987;rport;branch=z9h.....
FROM: whoever <sip:2008@157.190.183.70>;tag=455....
TO: whoever <sip:2001@157.190.183.70>
CONTACT: "whoever" <sip:2008@63.218.54.71:11987>
Call-Id: ....
CSeq: 19929 INVITE
Expires; 1800
User Agent: X-Lite release 1103m
Content-Type=application/sdp
Content-Length: 290
Session description Protocol
Owner/Creator of the Session (o): 2008 245812 272828 IN IP4
63.218.54.71
Connection information (c): IN IP4 63.218.54.71
A 100 Trying is sent back from SER to the private client (i.e. caller)
The INVITE is forwarded from SER to public client (callee) as show
below:
INVITE sip:2001@157.190.183.70 SIP/2.0
VIA: SIP/2.0/UDP 157.190.183.70;branch=....
VIA: SIP/2.0/UDP 63.218.54.71:11987;branch=z9h.....
FROM: whoever <sip:2008@157.190.183.70>;tag=455....
TO: whoever <sip:2001@157.190.183.70>
CONTACT: "whoever" <sip:2008@63.218.54.71:11987>
Call-Id: ....
CSeq: 19929 INVITE
Expires; 1800
User Agent: X-Lite release 1103m
Content-Type=application/sdp
Content-Length: 290
Session description Protocol
Owner/Creator of the Session (o): 2008 245812 272828 IN IP4
63.218.54.71
Connection information (c): IN IP4 63.218.54.71
157.190.183.80 157.190.183.70 SIP 100 Trying
157.190.183.80 157.190.183.70 SIP 180 Ringing
157.190.183.70 63.218.54.71 SIP 180 Ringing
157.190.183.80 157.190.183.70 SIP/SDP Status: 200OK
SIP/2.0 200 OK
Via: SIP/2.0/UDP 157.190.183.70;branch=....
Via: SIP/2.0/UDP 63.218.54.71:11987;rport=11987;branch=.....
From: whoever<sip:2008@157.190.183.70>;tag=...
To: <sip:2001@157.190.183.70>;tag=....
CSeq: 19929 INVITE
User Agent: Grandtsream BT100 1.0.5.18
Contact: <sip:2001@157.190.183.80>
Session description protocol
(c) IN IP4 157.190.183.80
#
# $Id: ser.cfg,v 1.21.4.1 2003/11/10 15:35:15 andrei Exp $
#
# simple quick-start config script
#
# ----------- global configuration parameters ------------------------
#debug=3 # debug level (cmd line: -dddddddddd)
#fork=yes
#log_stderror=no # (cmd line: -E)
/* Uncomment these lines to enter debugging mode
debug=7
fork=no
log_stderror=yes
*/
check_via=no # (cmd. line: -v)
dns=no # (cmd. line: -r)
rev_dns=no # (cmd. line: -R)
#port=5060
#children=4
fifo="/tmp/ser_fifo"
alias="157.190.183.70:5060"
# ------------------ module loading ----------------------------------
# Uncomment this if you want to use SQL database
loadmodule "/usr/lib/ser/modules/mysql.so"
loadmodule "/usr/lib/ser/modules/sl.so"
loadmodule "/usr/lib/ser/modules/tm.so"
loadmodule "/usr/lib/ser/modules/rr.so"
loadmodule "/usr/lib/ser/modules/maxfwd.so"
loadmodule "/usr/lib/ser/modules/usrloc.so"
loadmodule "/usr/lib/ser/modules/registrar.so"
loadmodule "/usr/lib/ser/modules/textops.so"
loadmodule "/usr/lib/ser/modules/nathelper.so"
# Uncomment this if you want digest authentication
# mysql.so must be loaded !
loadmodule "/usr/lib/ser/modules/auth.so"
loadmodule "/usr/lib/ser/modules/auth_db.so"
# ----------------- setting module-specific parameters ---------------
# -- 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
#NB Had to up this value from 1 to 11 because reinvites were
bombarding called phone
modparam("rr", "enable_full_lr", 11)
#!! Nathelper
modparam("registrar", "nat_flag", 6)
modparam("nathelper", "natping_interval", 30) #Ping interval 30 s
modparam("nathelper", "ping_nated_only", 1) #Ping only clients
behind NAT
modparam("tm", "fr_inv_timer", 80)
# ------------------------- 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");
break;
};
if ( msg:len > max_len ) {
sl_send_reply("513", "Message too big");
break;
};
#########################added for cit client behind nat
09/02/05#######################
if (nat_uac_test("3")){
if (method == "REGISTER" || ! search("^Record-Route:")){
log("Log: Someone trying to register from private IP,rewriting\n");
fix_nated_contact(); #Rewrite contact with source IP
if (method == "INVITE"){
fix_nated_sdp("1"); #Add direction=active to SDP
};
force_rport(); # Add rport parameter to topmost Via
setflag(6); # Mark as Nated
};
};
#####################################################################
###################
# 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();
# loose-route processing
if (loose_route()) {
#commented 11/02/05
#t_relay();
route(1);
break;
};
# 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) {
log(1,"into loop");
if (method=="REGISTER") {
# Uncomment this if you want to use digest authentication
# if (!www_authorize("157.190.183.70", "subscriber")) {
# www_challenge("157.190.183.70", "0");
# break;
# };
save("location");
break;
};
lookup("aliases");
if (!uri==myself) {
append_hf("P-hint: outbound alias\r\n");
route(1);
break;
};
if (method=="INVITE"){
log(1,"in invite loop");
#break; #no 100 trying
t_on_failure("1");
};
# native SIP destinations are handled using our USRLOC DB
if (!lookup("location")) {
#sl_send_reply("404", "Not Found");
route(2);
break;
};
};
# forward to current uri now; use stateful forwarding; that
# works reliably even if we forward from TCP to UDP
#commented 11/02/05#######################
if (!t_relay()) {
sl_reply_error();
};
}
######################################entered
11/02/05############################################################
route[1]
{
#!!Nathelper
if(uri=~"[@:](192\.168\.|10\.|172\.(1[6-9]|2[0-9]|3[0-1])\.)" &&
!search("^Route:")){
sl_send_reply("479", "We don't forward to private IP addresses");
break;
};
t_on_reply("1");
if(!t_relay()){
sl_reply_error();
};
}
######################################entered
11/02/05############################################################
#!! Nathelper
onreply_route[1]{
if(isflagset(6) && status =~ "(183)|2[0-9][0-9]"){
fix_nated_contact();
force_rtp_proxy();
} else if (nat_uac_test("1")){
fix_nated_contact();
};
}
######################################################################
###########################################
# ------------- handling of unavailable user ------------------
route[2] {
# non-Voip -- just send "off-line"
if (!(method == "INVITE" || method == "ACK" || method ==
"CANCEL")) {
sl_send_reply("404", "Not Found");
break;
};
# forward to voicemail now
rewritehostport("157.190.183.70:5062");
t_relay_to_udp("157.190.183.70", "5062");
}
# if forwarding downstream did not succeed, try voicemail running
# at 157.190.183.70:5062
failure_route[1] {
revert_uri();
rewritehostport("157.190.183.70:5062");
append_branch();
t_relay_to_udp("157.190.183.70", "5062");
}
-------------------Legal Disclaimer---------------------------------------
The above electronic mail transmission is confidential and intended only for the person to whom it is addressed. Its contents may be protected by legal and/or professional privilege. Should it be received by you in error please contact the sender at the above quoted email address. Any unauthorised form of reproduction of this message is strictly prohibited. The Institute does not guarantee the security of any information electronically transmitted and is not liable if the information contained in this communication is not a proper and complete record of the message as transmitted by the sender nor for any delay in its receipt.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
hi,
we used the ser as a sip proxy and i will forward traffic to our
cisco gateway (pstn). when i make a forward i become a timeout (no
dialtone). whats wrong????
we use ser-0.8.12-0
ser.cfg
~ if (!lookup("location")) {
~ if(uri =~"sip:1024#"){
~ log(1,"Forwarding to PSTN\n");
~ rewritehostport("IP-GW:5060");
~ break;
~ }else{
~ sl_send_reply("404", "Not Found");
~ log(1,"404 Not found\n");
~ break;
~ };
cisco:
dial-peer voice 99300 voip
~ incoming called-number 1024#T
~ session protocol sipv2
~ dtmf-relay rtp-nte
~ codec g729r8 bytes 60
thanks
hans
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org
iD8DBQFCGbtpouYj3oyEw4wRAmR9AJ938/dqMVsbtAJdcI/RV9RVtMiLegCfVcs1
ruGUvrL+dl+UHtHpQ5uxut4=
=1N0c
-----END PGP SIGNATURE-----
Hi,
When providing PSTN termination of calls that originate from a SIP source
how do you go about validating the identity of where the calls originated
from - the SIP Proxy or the SUA.
PSTN ---- SIP Proxy 1--- + --- SIP Proxy 2 ---- PSTN
So the calls originate from the PSTN in a country, get transported across
the internet and terminated in a different country via another company.
Other than source IP address, what method could you use to validate the
origin of the calls? Also in question is security for trunk services for
companies that simply want to terminate calls out onto the PSTN. How can you
setup a trust relationship between the two proxies?
Is any one here in a similar situation??
Regards,
Alan
-------------------------------------------------------------------------------------------------------
This email, and any files transmitted with it, is copyright and may contain confidential information.
The contents are intended for the use of the addressee(s) only.
Unauthorized use may be unlawful.
If you receive this email by mistake, please advise sender immediately.
The views of the author may not necessarily constitute the views of Telco Electronics Limited.
Nothing in this mail shall bind Telco Electronics Limited in any contract or obligation.
Telco Electronics Limited
6-8 Oxford Court
Brackley
Northants
NN13 7XY
Tel 01280 761600
Fax 01280 841174
Dear ALL:
If an UA1 ( Under NAT / Public Network) make a call to another UA2(
Under NAT / Public Network), is there any idea to disconnect it after
xx seconds?
For example, the UA1 has 300 seconds credit, and this call can only
keep maxinum 300 seconds.
Charles