Hi,
I'm interested in using DNS blacklisting to stop transmitting SIP
requests towards UAS endpoints that are non-responsive. I am on
version 1.2, but I can't get it to work properly.
Here is what I am trying to do:
1) I get a message from a UAC that needs to be sent towards 1 of 4
destination UAS endpoints.
2) I setup the OpenSER to perform an SRV lookup which returns a record
that has four A records associated with it. It looks as follows:
;; QUESTION SECTION:
;_sip._udp.aimcidfilter.com. IN SRV
;; ANSWER SECTION:
_sip._udp.aimcidfilter.com. 60 IN SRV 1 100 5061 spinner.eng.rr.com.
_sip._udp.aimcidfilter.com. 60 IN SRV 2 100 5061 bart.eng.rr.com.
_sip._udp.aimcidfilter.com. 60 IN SRV 3 50 5061 homer.eng.rr.com.
_sip._udp.aimcidfilter.com. 60 IN SRV 3 50 5061 crunch.eng.rr.com.
3) The OpenSER does a gethostbyname which performs a DNS A record
lookup and gets a response for spinner.eng.rr.com.
4) When the OpenSER sends towards spinner.eng.rr.com, it does not get
a SIP response from it. *It is at this point I was hoping that OpenSER
would blacklist this UAS endpoint*, but for each incoming request that
is received by the OpenSER, it continues to resolve the domain in the
same manner and sends towards spinner.eng.rr.com even though there is
no SIP response.
Is what I am trying to do in accordance with how OpenSER blacklisting
is supposed to work?
I am trying to have OpenSER send towards bart.eng.rr.com when
spinner.eng.rr.com is not responding or is not reachable.
My configuration is as below. Note that I have even tried to disable
sending towards spinner.eng.rr.com by manually adding a dst_blacklist
entry - that doesn't even seem to work for me.. Am I doing something
wrong?
I have also attached a log file.
Here is my output from openserctl
# openserctl fifo list_blacklists
200 OK
List:: net_filter owner=13 flags=1
Rule:: flags=0
IP:: 65.185.233.55
Mask:: 255.255.255.255
Proto:: 0
Port:: 5061
List:: dns owner=17 flags=6
---------------
#
# Openser.cfg
# ----------- global configuration parameters ------------------------
debug=5 # debug level (cmd line: -dddddddddd)
fork=yes
log_stderror=no # (cmd line: -E)
maxbuffer=1048576
check_via=no # (cmd. line: -v)
dns=no # (cmd. line: -r)
rev_dns=no # (cmd. line: -R)
#reply_to_via=1
children=4
log_facility=LOG_LOCAL4
dns_use_search_list=no
dns_servers_no=2
user="sipproxy"
group="sipproxy"
disable_dns_blacklist=no
disable_dns_failover=no
dns_try_ipv6=no
dns_retr_time=2
dns_retr_no=2
dst_blacklist = net_filter:{ ( any , 65.185.233.55, 5061 , "" )} #
block towards spinner
listen=udp:65.185.232.62:5060
alias=65.185.233.104:5060
# LOAD OpenSER MODULES
mpath="/sw/lib/openser/modules/"
loadmodule "sl.so"
loadmodule "tm.so"
loadmodule "rr.so"
loadmodule "maxfwd.so"
loadmodule "usrloc.so"
loadmodule "registrar.so"
loadmodule "textops.so"
loadmodule "acc.so"
loadmodule "mi_fifo.so"
loadmodule "xlog.so"
# ----------------- setting module-specific parameters ---------------
# -- usrloc params --
modparam("usrloc", "db_mode", 0)
# -- rr params --
# add value to ;lr param to make some broken UAs happy
modparam("rr", "enable_full_lr", 1)
# ------------------------- request routing logic -------------------
modparam("acc", "log_level", 2)
modparam("acc", "log_flag", 1)
modparam("acc","report_cancels", 1)
modparam("acc","failed_transaction_flag", 1)
modparam("acc","log_extra", "req_uri=$rU")
modparam("tm", "fr_timer", 5)
modparam("tm","fr_inv_timer",5)
modparam("mi_fifo", "fifo_name", "/tmp/openser_fifo")
# 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=="REGISTER")
record_route();
# subsequent messages within a dialog should take the
# path determined by record-routing
if (loose_route()) {
# mark routing logic in request
append_hf("P-hint: rr-enforced\r\n");
route(1);
};
if (!uri==myself) {
route(1);
};
if (method=="OPTIONS") {
sl_send_reply("200", "OK");
exit;
}
if (uri =~ "^sip:feature_fs@" || method=="NOTIFY") {
xlog("L_DBG", "TWC: received incoming message:\n <$mb>\n");
seturi("sip:feature_fs@aimcidfilter.com");
setflag(1);
route(1);
} else {
sl_send_reply("404", "Not Found");
};
}
#####################################################
# Default Message Handler
#####################################################
route[1] {
# Send it out now; use stateful forwarding as it works reliably
# even for UDP2TCP
if (!t_relay()) {
sl_reply_error();
};
exit;
}
Hi all,
There are modules that are using default values for AVPs.
What will happen if another module is reusing the same AVP?
Or if the AVP is redefined inside the script?
Is this completely orthogonal?
Should I worry about this while using AVPs?
Regards,
Ovidiu Sas
Hi
For high availabilty iam doing with loadbalance with Round Robin
could some one suggest what is the best method to do
I have a domain xyz.com not static IP use will authenticate
I have 2 openser Servers, with 1 Mysql, both teh server need to talk to one
Mysql
and user should be able to connect any server, depends on availability
could some suggest me how can i do this. to have less downtime. or failover
ram
Hi to all,
i'm using openser 1.2.2 no tls and i use exec_dset to get list of
gateways in destination set to be serialized.
After execution of exec_dset i get in output:
sip:123456@10.10.10.1:5062;q=0.2
sip:123456@10.10.10.10:5060;q=0.1
$ds become : Contact: sip:123456@10.10.10.1:5062;q=0.2,
sip:123456@10.10.10.10:5060;q=0.1
RURI become: sip:123456@10.10.10.1:5062;q=0.2
$bR become: sip:123456@10.10.10.10:5060;q=0.1
All seems to be fine but when i run serialize_branches() i get:
DEBUG:serialize_branches: nothing to do - all same q!
Any ideas on what i'm missing?
May be something in the output of exec_dset??
I'm using the \n between lines in my custom LCR scripts to get gateways
from DB.
Thanks,
Bye,
Marcello
I forgot to cc the list
/Fredrik
----- Original Message -----
From: Fredrik Lundmark
To: srinivas Antarvedi
Sent: Sunday, September 30, 2007 11:34 AM
Subject: Re: [OpenSER-Users] Prepaid SIP
I believe SEMS (http://ftp.iptel.org/pub/sems/doc/current/AppDocExample.html) together with CDRTool (http://cdrtool.ag-projects.com/) can be adjusted to your needs - any feedback from anyone out there that's done it?
BR///
Fredrik
----- Original Message -----
From: srinivas Antarvedi
To: users(a)openser.org
Sent: Friday, September 28, 2007 12:27 PM
Subject: [OpenSER-Users] Prepaid SIP
Hello all,
Actually i have a testing setup which facilitates to give accounting
details to mysql db once call was end by any one of the uac.
But if i want to have a prepaid solution like our mobiles i dont
found any solution till now on open source
some of my friend suggested to go for B2BUA from vovida.org
does anybody using this ?
is this real that this can work for prepaid stuff?
if not just let me know otherwise i will waste my time in doing
some research on something not useful
if not what might be the other ways to get around the problem
of prepaid billing
i know we can do this using b2bua, can we go ahead with asterisk?
waiting for valuable suggestions
--
Srinivas Antarvedi
--------------------------------------------------------------------------------
_______________________________________________
Users mailing list
Users(a)openser.org
http://openser.org/cgi-bin/mailman/listinfo/users
Hi, I've multidomain OpenSer and I want the possibility of adding new domains
without having to write in conf file and restart OpenSer, so I use "domain"
module and functions. It works fine.
The problem is that WengoPhone includes a "Route" in the REGISTER so it is
matches in "loose_route" and creates an infinite loop:
-------------------------------------------
U 2007/09/12 11:00:47.770226 212.121.235.18:1029 -> 88.95.0.210:5060
REGISTER sip:sip.domain.net SIP/2.0
Via: SIP/2.0/UDP 192.168.1.58:5061;rport;branch=123456789
Route: <sip:sip.domain.net;lr>
U 2007/09/12 11:00:47.772884 88.95.0.210:5060 -> 88.95.0.210:5060
REGISTER sip:sip.domain.net SIP/2.0
Max-Forwards: 10
Via: SIP/2.0/UDP 88.95.0.210;branch=z9hG4bK734e.08122386.0
Via: SIP/2.0/UDP
192.168.1.58:5061;received=212.121.235.18;rport=1029;branch=123456789
Route: <sip:sip.domain.net;lr>
U 2007/09/12 11:00:47.775153 88.95.0.210:5060 -> 88.95.0.210:5060
REGISTER sip:sip.domain.net SIP/2.0
Max-Forwards: 9
Via: SIP/2.0/UDP 88.95.0.210;branch=z9hG4bK734e.18122386.0
Via: SIP/2.0/UDP 88.95.0.210;rport=5060;branch=z9hG4bK734e.08122386.0
Via: SIP/2.0/UDP
192.168.1.58:5061;received=212.121.235.18;rport=1029;branch=123456789
Route: <sip:sip.domain.net;lr>
etc etc...
-------------------------------------------
A developer of WengoPhone said me that this "Route" header is not necessary
but still valid, and that I can solve it by adding:
alias=sip.domain.org
But I don't want to write in conf file for each new added domain, and I don't
want to restart OpenSer when it.
I'm thinking in change:
if (loose_route()) {
by
if (loose_route() && method!="REGISTER") {
but it doesn't seem very ellegatn solution.
How could I solve it? Thanks for any help.
--
Iñaki Baz Castillo
ibc(a)in.ilimit.es
Openser xmpp module is up and running..
I have configured it in "server" mode so that there is no need for a
separate jabber server.
I am trying to register "sip-communicator" client using jabber protocol to
openser server...
But the registration fails with message " Connection refused" 502 XMPP
error.
Please can any one provide any suggestions/ help ???
Thanks
Anjum
--
View this message in context: http://www.nabble.com/openser-xmpp-module%3A-cannot-register-jabber-client-…
Sent from the OpenSER Users Mailing List mailing list archive at Nabble.com.
ive searched for the radius module
ldconfig -v | grep radius
and found
/usr/lib64:
libradiusclient-ng.so.2 -> libradiusclient-ng.so.2.0.0
/usr/lib
libradius-1.0.1.so -> libradius.so
tried to build in root ser dir
Still not sure what i am missing same error below
make[1]: Entering directory `/usr/src/ser/ser-0.9.6/modules/acc'
gcc -shared -Wl,-O2 -Wl,-E acc.o acc_mod.o diam_avp.o diam_message.o diam_tcp.o -L/usr/local/lib -lradiusclient-ng -o acc.so
/usr/bin/ld: cannot find -lradiusclient-ng
collect2: ld returned 1 exit status
make[1]: *** [acc.so] Error 1
make[1]: Leaving directory `/usr/src/ser/ser-0.9.6/modules/acc'
**************************************************************************
First off, make sure /etc/ld.so.conf points to the correct radius client
dir, rerun ldconfig.
Then do what it says. Don't make the module FROM the module directory.
There's info in the INSTALL file on how to compile the modules one at a
time properly.
From the root src tree:
make modules=modules/acc modules
David Adade wrote:
>
>
> first problem running make in /usr/src/ser/ser-0.9.6/modules/acc
>
> i get the following error
> acc.c:56:33: radiusclient-ng.h: No such file or directory
>
> So i installed the following
>
> freeradius-1.0.1-3.RHEL4.5.
> radiusclient-ng-devel-0.5.2-4
> radiusclient-ng-0.5.2-4
>
> now i get the error
>
> ../../Makefile.modules:21: "you should run make from the main ser
> directory"
> gcc -shared -Wl,-O2 -Wl,-E acc.o acc_mod.o diam_avp.o
> diam_message.o diam_tcp.o -L/usr/local/lib -lradiusclient-ng -o acc.so
> /usr/bin/ld: cannot find -lradiusclient-ng
> collect2: ld returned 1 exit status
> make: *** [acc.so] Error 1
>
> vi /etc/ld.so.conf reads
>
> /usr/ofed/lib
> /usr/lib64/
> /etc/radiusclient
> /usr/sbin
> /usr/bin
>
> I am running centos 4. The radius server works fine no problems
>
>
> vi /usr/src/ser/ser-0.9.6/modules/acc/Makefile reads
>
> # uncomment the next line if you wish to enable SQL accounting
> DEFS+=-DSQL_ACC
>
> # uncomment the next two lines if you wish to enable RADIUS accounting
> DEFS+=-DRAD_ACC
> include ../../Makefile.radius
> # DEFS+=-DRAD_ACC -I$(LOCALBASE)/include
> # LIBS=-L$(LOCALBASE)/lib -lradiusclient-
>
> Can anyone help
>
>
>
>
>
>
>
>
> ***********************************************************************
> IMPORTANT NOTICE:
> The information transmitted is intended only for the person or entity to
> which it is addressed and may contain confidential and/or privileged
> material. If you receive this in error, please contact the sender and
> delete the material from any computer.
> This e-mail is intended for the above named addressee only.
> Should you receive this e-mail in error please contact
> Customer Services on Tel: + 44 (0)870 241 2439
> ************************************************************************
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Serusers mailing list
> Serusers(a)lists.iptel.org
> http://lists.iptel.org/mailman/listinfo/serusers
>
--
Neil Fusillo
CEO
Infinideas, inc.
http://www.ideasip.com
***********************************************************************
IMPORTANT NOTICE:
The information transmitted is intended only for the person or entity to
which it is addressed and may contain confidential and/or privileged
material. If you receive this in error, please contact the sender and
delete the material from any computer.
This e-mail is intended for the above named addressee only.
Should you receive this e-mail in error please contact
Customer Services on Tel: +44 (0)870 241 2439
************************************************************************
first problem running make in /usr/src/ser/ser-0.9.6/modules/acc
i get the following error
acc.c:56:33: radiusclient-ng.h: No such file or directory
So i installed the following
freeradius-1.0.1-3.RHEL4.5.
radiusclient-ng-devel-0.5.2-4
radiusclient-ng-0.5.2-4
now i get the error
../../Makefile.modules:21: "you should run make from the main ser directory"
gcc -shared -Wl,-O2 -Wl,-E acc.o acc_mod.o diam_avp.o diam_message.o diam_tcp.o -L/usr/local/lib -lradiusclient-ng -o acc.so
/usr/bin/ld: cannot find -lradiusclient-ng
collect2: ld returned 1 exit status
make: *** [acc.so] Error 1
vi /etc/ld.so.conf reads
/usr/ofed/lib
/usr/lib64/
/etc/radiusclient
/usr/sbin
/usr/bin
I am running centos 4. The radius server works fine no problems
vi /usr/src/ser/ser-0.9.6/modules/acc/Makefile reads
# uncomment the next line if you wish to enable SQL accounting
DEFS+=-DSQL_ACC
# uncomment the next two lines if you wish to enable RADIUS accounting
DEFS+=-DRAD_ACC
include ../../Makefile.radius
# DEFS+=-DRAD_ACC -I$(LOCALBASE)/include
# LIBS=-L$(LOCALBASE)/lib -lradiusclient-
Can anyone help
***********************************************************************
IMPORTANT NOTICE:
The information transmitted is intended only for the person or entity to
which it is addressed and may contain confidential and/or privileged
material. If you receive this in error, please contact the sender and
delete the material from any computer.
This e-mail is intended for the above named addressee only.
Should you receive this e-mail in error please contact
Customer Services on Tel: +44 (0)870 241 2439
************************************************************************