Hello
At this time I am able to save Logs for the following Sip-Response-Codes with radius accounting module:
- 486 Busy,
- 487 Request cancelled by the caller and
- 408 Request timeout (No callee response).
But now I would like to log other missed calls with codes 480 or 404 (Temporarily unavailable or Not Existing user) returned if lookup fails using "radius_does_uri_exist" function, please if its posible send me some examples to do it.
Thank You
Rafael
PS: cfg file and some radius logs:
[root@gkproxy01 127.0.0.1]# more /usr/local/etc/ser/ser.cfg
#
# $Id: ser.cfg,v 1.21.4.1 2003/11/10 15:35:15 andrei Exp $
# ----------- 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=20
fork=yes
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"
# ------------------ module loading ----------------------------------
# Uncomment this if you want to use SQL database
#loadmodule "/usr/local/lib/ser/modules/mysql.so"
loadmodule "/usr/local/lib/ser/modules/sl.so"
loadmodule "/usr/local/lib/ser/modules/tm.so"
loadmodule "/usr/local/lib/ser/modules/rr.so"
loadmodule "/usr/local/lib/ser/modules/maxfwd.so"
loadmodule "/usr/local/lib/ser/modules/usrloc.so"
loadmodule "/usr/local/lib/ser/modules/registrar.so"
# loadmodule "/usr/local/lib/ser/modules/uri.so"
# Uncomment this if you want digest authentication
# mysql.so must be loaded !
loadmodule "/usr/local/lib/ser/modules/auth.so"
# loadmodule "/usr/local/lib/ser/modules/auth_db.so"
loadmodule "/usr/local/lib/ser/modules/auth_radius.so"
loadmodule "/usr/local/lib/ser/modules/group_radius.so"
loadmodule "/usr/local/lib/ser/modules/acc.so"
# load the NAT Helper Module
# loadmodule "/usr/local/lib/ser/modules/nathelper.so"
# ----------------- setting module-specific parameters ---------------
# -- rr params --
# add value to ;lr param to make some broken UAs happy
modparam("rr", "enable_full_lr", 1)
# modparam("acc","log_level",1)
modparam("auth_radius","radius_config","/usr/local/etc/radiusclient/radiusclient.conf")
modparam("auth_radius","service_type",15)
modparam("acc","radius_config","/usr/local/etc/radiusclient/radiusclient.conf")
modparam("acc", "service_type", 15)
modparam("acc", "radius_flag", 1)
modparam("acc", "radius_missed_flag", 3)
modparam("acc", "failed_transactions", 1)
modparam("acc", "report_ack", 0)
# ------------------------- 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;
};
# 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
record_route();
# loose-route processing
if (loose_route()) {
t_relay();
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)
# set for accounting:
if (method=="INVITE") {
log(1, "INVITE\n");
setflag(1); /* set for accounting (the same value as in log_flag!) */
};
if (method=="BYE" || method=="CANCEL") {
log (1, "BYE or CANCEL\n");
setflag(1);
};
if (uri==myself) {
if (method=="REGISTER") {
log(1, "REGISTER: Authenticating user\n");
if (!radius_www_authorize("")) {
log(1, "REGISTER: challenging user\n");
www_challenge("", "0");
break;
};
save("location");
break;
};
# Prefix 9 to AS5350-PSTN:
if (uri =~"^sip:9[0-9]*@") {
log(1, "forward to PSTN\n");
rewritehostport("200.110.2.145:5060");
#forward( 200.110.2.145, 5060 );
t_relay_to_udp("200.110.2.145","5060");
break;
};
# native SIP destinations are handled using our USRLOC DB
if (!lookup("location")) {
sl_send_reply("404", "Not Found");
break;
};
};
# forward to current uri now; use stateful forwarding; that
# works reliably even if we forward from TCP to UDP
if (!t_relay()) {
sl_reply_error();
break;
};
}
Radius Log File:
Mon Aug 2 15:57:11 2004
Acct-Status-Type = Failed
Service-Type = IAPP-Register
Sip-Response-Code = 487
Sip-Method = Invite
User-Name = "6603000(a)200.110.2.131"
Calling-Station-Id = "sip:6603000@200.110.2.131"
Called-Station-Id = "sip:6604000@200.110.2.131"
Sip-Translated-Request-URI = "sip:6604000@200.110.6.58"
Acct-Session-Id = "7d5d8400-a74c-8b11-820d-0002a40055b2(a)10.0.0.236"
Sip-To-Tag = "n/a"
Sip-From-Tag = "7d008b0da4"
Sip-CSeq = "137"
NAS-IP-Address = 127.0.0.1
NAS-Port = 5060
Acct-Delay-Time = 0
Client-IP-Address = 127.0.0.1
Acct-Unique-Session-Id = "fec6c176c6abce27"
Timestamp = 1091480231
Mon Aug 2 15:57:33 2004
Acct-Status-Type = Failed
Service-Type = IAPP-Register
Sip-Response-Code = 486
Sip-Method = Invite
User-Name = "6603000(a)200.110.2.131"
Calling-Station-Id = "sip:6603000@200.110.2.131"
Called-Station-Id = "sip:6604000@200.110.2.131"
Sip-Translated-Request-URI = "sip:6604000@200.110.6.58"
Acct-Session-Id = "985d8400-4a12-351e-8210-0002a40055b2(a)10.0.0.236"
Sip-To-Tag = "61408ca7a4"
Sip-From-Tag = "98003510a4"
Sip-CSeq = "138"
NAS-IP-Address = 127.0.0.1
NAS-Port = 5060
Acct-Delay-Time = 0
Client-IP-Address = 127.0.0.1
Acct-Unique-Session-Id = "9d2bb0985c4518a4"
Timestamp = 1091480253
Mon Aug 2 16:00:08 2004
Acct-Status-Type = Failed
Service-Type = IAPP-Register
Sip-Response-Code = 408
Sip-Method = Invite
User-Name = "6603000(a)200.110.2.131"
Calling-Station-Id = "sip:6603000@200.110.2.131"
Called-Station-Id = "sip:6604000@200.110.2.131"
Sip-Translated-Request-URI = "sip:6604000@200.110.6.58"
Acct-Session-Id = "035e8400-fc20-e27c-8213-0002a40055b2(a)10.0.0.236"
Sip-To-Tag = "de40b2aaa4"
Sip-From-Tag = "0300e213a4"
Sip-CSeq = "139"
NAS-IP-Address = 127.0.0.1
NAS-Port = 5060
Acct-Delay-Time = 0
Client-IP-Address = 127.0.0.1
Acct-Unique-Session-Id = "e9e00ae9aa66422a"
Timestamp = 1091480408
---------------------------------
Do You Yahoo!?
Todo lo que quieres saber de Estados Unidos, América Latina y el resto del Mundo.
Visíta Yahoo! Noticias.
Hi,
i have configured 2 sers on two diffrent machines connecting
so the same database.
Both sers have their own Domain.
a) is there a possibility to tell the nathelper only send
udp messages to the local users?
at present both sers sending messages to all clients saved with
flag "nated".
b) could there be a problem with the users saved in the location table?
sometimes, after o restart, we loose 80 % off the Users saved in the
table, mostly not expired?
best regards
markus
hello,
is it possible to do source ip authentication besides normal
www_authorize() for every user account?. This, as i understand, should
prevent from intercepting credentials and later faking sip message to
bypass www_authorization ? Or maybe there are some other counter measures
against such fraud?
Does src_ip comes directly from ip layer? If so, i could probably use this
to check with some external database (ie. ser subscriber)?
Antanas
NTT
Hi all,
I have a SER system with 2000 users added in the subscriber table by using
"serctl add". And most of the users work behind NAT without any problems
thanks to the use of Media Proxy. However, when I use "serctl ul show" I can
only see 1XX to 3XX users only but not 2000 users. Anyone knows why is that?
Most of my clients use Grandstream Budge Tone 100 and they have set the
registration time to be 60 seconds.
On the other hand, some of the users complain that they can't register
occasionally. I don't know if it's related to the above problem?
Any reply would be much appreciated!
Best Regards,
Kenny Lam
SIP Application Engineer
Deltapath Commerce & Technology Limited
---------------------------------------
SIP By Deltapath!
www.deltapath.com
hello friends
iam trying desparetly for cpl with ser
but till now i did not got success.
i found in mailing list that we need to download the
*******************************************************
>>>>
>>>>what branch of cvs do you use? or you use the head
of cvs?
>>>>on CVS head everything is fixed - but you have to
get the whole tree,
>>>>not only the TM.
>>>>
>>>>Regards,
>>>>Bogdan
********************************************************
so how to get the cvs head or to get the whole cvs
tree
iam using cvs rel_0_8_12 version of sip_router.
i downloaded this as said in the iptel.org/ser
in cvs subheading
so how to get this cvs head / cvs tree
with regards
rama kanth
__________________________________
Do you Yahoo!?
Yahoo! Mail is new and improved - Check it out!
http://promotions.yahoo.com/new_mail
Hello,
does anybody has been solving problem of routing emergency numbers
according location where UA is located? I.e. the same 112 number,
depending on location must be tranlated to ie. 61234554 or 61344143 and so
on. This location, as i see it, in some cases can be retrieved from
account information and if this is not possible - from IP ranges.
What could be your suggestions on this particular case?
Antanas
Hi all, i am testing huge loads on location table in version 0.8.14 and see
that:
After increment PGK_MALLOC i can support 20.000 entries in the memory
location table.
This 20.000 entries are using around 12Mb of RAM memory on my linux RedHat
8.0.
When this 20.000 contacts expires the table is cleaned but SER remain taking
12Mb of RAM.
It is a normal operation or SER must perform some function to release the
memory used by the location table when the contacts expire ??
#----------------------------------------------#
version: 0.8.14 (i386/linux)
flags: STATS:Off, USE_IPV6, USE_TCP, DISABLE_NAGLE, DNS_IP_HACK, SHM_MEM,
SHM_MMAP, PKG_MALLOC, F_MALLOC, FAST_LOCK-ADAPTIVE_WAIT
ADAPTIVE_WAIT_LOOPS=1024, MAX_RECV_BUFFER_SIZE 262144, MAX_LISTEN 16,
MAX_URI_SIZE 1024, BUF_SIZE 65535
@(#) $Id: main.c,v 1.168.4.3 2004/06/28 15:41:21 andrei Exp $
main.c compiled on 12:45:14 Jul 30 2004 with gcc 3.2
#----------------------------------------------#
140 processes: 138 sleeping, 2 running, 0 zombie, 0 stopped
CPU states: 0.2% user, 0.7% system, 0.0% nice, 98.9% idle
Mem: 513972K av, 162580K used, 351392K free, 0K shrd, 45532K
buff
Swap: 2096472K av, 0K used, 2096472K free 76892K
cached
PID USER PRI NI SIZE RSS SHARE STAT %CPU %MEM TIME COMMAND
486 mysql 15 0 16856 16M 2604 S 0.0 3.2 0:16 mysqld
25492 root 24 0 12904 12M 12764 S 0.0 2.5 0:02 ser
#----------------------------------------------#
Thanks
Ezequiel Colombo
Hi,
I have two Grandstream HT's and a SER server running on RedHat 9.0. Both
phone register and call each other fine, but for some reason, after a random
amount of time, the audio stops working in one direction. It doesn't make
any difference what the register time is or if a different codec is used, it
still does it.
If you make calls back and forth ie call one end hand up call from the other
end and hang up, it's fine for ages, it just seems to fail audio in one way
after you have not made a call for a while. It won't recover from this state
until you reboot either phone at either end.
Both phones are on a wired CAT5 100MB LAN without any NAT between them.
Any ideas ?
Thanks
BJ
_________________________________________________________________
Find love today with ninemsn personals. Click here:
http://ninemsn.match.com?referrer=hotmailtagline