confirm 83b7fb1612811c64f85f47a6046dd84dea286d15
Dear....
I inserted command like this.
What I want is that
when I loaded test.cfg file, what I check SIP messages using sipp client
mode
I want 200 OK. But, as you see, I received "SIP/2.0 483 Too Many Hops"
error message.
So I was advanced about this.
- alias="sam.cse"//SIP_ DOMAIN
alias="server.sam.cse"//my_computer.SIP_DOMAIN
alias="192.168.178.194"//my_ip
- add my hostname in /etc/host
- change to : if (!mf_process_maxfwd_header("100")
but, I couldn't solve this problem.
I would really appreciate for giving some advise.
Thank you in advance.............................
mi-jin Song
=====================================================
[root@cse4 ~]# ser -f test.cfg
Listening on
udp: 127.0.0.1 [127.0.0.1]:5060
udp: 192.168.178.194 [192.168.178.194]:5060
tcp: 127.0.0.1 [127.0.0.1]:5060
tcp: 192.168.178.194 [192.168.178.194]:5060
Aliases:
tcp: server:5060
tcp: localhost:5060
tcp: localhost.localdomain:5060
tcp: cse4:5060
udp: server:5060
udp: localhost:5060
udp: localhost.localdomain:5060
udp: cse4:5060
*: 192.168.178.194:*
*: sam.cse:*
*: server.sam.cse:*
stateless - initializing
0(0) Maxfwd module- initializing
exec - initializing
0(0) INFO: udp_init: SO_RCVBUF is initially 110592
0(0) INFO: udp_init: SO_RCVBUF is finally 221184
0(0) INFO: udp_init: SO_RCVBUF is initially 110592
0(0) INFO: udp_init: SO_RCVBUF is finally 221184
0(0) ERROR: tcp_init: bind(6, 0x810dafc, 16) on 127.0.0.1: Address already
in use
=====================================================
[root@cse4 sipp]# ./sipp -sn uac 192.168.178.194
Resolving 192.168.178.194...
------------------------------ Scenario Screen -------- [1-4]: Change
Screen --
Call-rate(length) Port Total-time Total-calls Remote-host
10.0(0 ms)/1.000s 5061 2.54 s 25
192.168.178.194:5060(UDP)
5 new calls during 0.538 s period 2 ms scheduler resolution
0 concurrent calls (limit 30) Peak was 1 calls, after 0 s
0 out-of-call msg (discarded)
1 open sockets
Messages Retrans Timeout
Unexpected-Msg
INVITE ----------> 25 0 0
100 <---------- 25 0 25
180 <---------- 0 0 0
200 <---------- E-RTD 0 0 0
ACK ----------> 0 0
[ 0 ms]
BYE ----------> 0 0 0
200 <---------- 0 0 0
------------------------------ Test Terminated
---------------------------------
----------------------------- Statistics Screen ------- [1-4]: Change
Screen --
Start Time | 2005-09-23 20:03:13
Last Reset Time | 2005-09-23 20:03:15
Current Time | 2005-09-23 20:03:16
-------------------------+---------------------------+--------------------------
Counter Name | Periodic value | Cumulative value
-------------------------+---------------------------+--------------------------
Elapsed Time | 00:00:00:536 | 00:00:02:543
Call Rate | 9.328 cps | 9.831 cps
-------------------------+---------------------------+--------------------------
Incoming call created | 0 | 0
OutGoing call created | 5 | 25
Total Call created | | 25
Current Call | 0 |
-------------------------+---------------------------+--------------------------
Successful call | 0 | 0
Failed call | 6 | 25
-------------------------+---------------------------+--------------------------
Response Time | 00:00:00:000 | 00:00:00:000
Call Length | 00:00:00:004 | 00:00:00:004
------------------------------ Test Terminated
--------------------------------
2005-09-23 20:03:16: Unexpected message for Call-ID
'25.4743.127.0.0.1(a)sipp.call.id'.id': while expecting '100' response, received
'SIP/2.0 483 Too Many Hops
Via: SIP/2.0/UDP 127.0.0.1:5061;received=192.168.178.194
From: sipp <sip:sipp@127.0.0.1:5061>;tag=25
To: sut
<sip:service@192.168.178.194:5060>;tag=b27e1a1d33761e85846fc98f5f3a7e58.6e68
Call-ID: 25.4743.127.0.0.1(a)sipp.call.id
CSeq: 1 INVITE
Server: Sip EXpress router (0.9.4 (i386/linux))
Content-Length: 0
Warning: 392 192.168.178.194:5060 "Noisy feedback tells: pid=4688
req_src_ip=192.168.178.194 req_src_port=5060
in_uri=sip:service@192.168.178.194:5060
out_uri=sip:service@192.168.178.194:5060 via_cnt==18"
' .
sipp: There were more errors, enable -trace_err to log them.
=======================================================
<< test.cfg >>
#
# $Id: welcome.cfg,v 1.3 2003/11/03 13:03:56 janakj Exp $
#
# welcome message for new subscribers; based on exec
#
# ----------- global configuration parameters ------------------------
debug=3 # debug level (cmd line: -dddddddddd)
# must be yes since REGISTER processing causes an INVITE to be sent,
# which needs to be processed by another process
fork=yes
children=4
alias="server.sam.cse"
alias="sam.cse"
alias="192.168.178.194"
# debugging
log_stderror=yes # (cmd line: -E)
mhomed=yes
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/exec.so"
# ----------------- setting module-specific parameters ---------------
# -- usrloc params --
modparam("usrloc", "db_mode", 2)
#modparam("usrloc", "db_url",
"mysql://ser:heslo@192.168.2.16/ser" )
modparam("usrloc", "db_url",
"mysql://root:vlftmd@localhost/ser")
# ------------------------- request routing logic -------------------
# main routing logic
route{
log(1, "\n\n");
log(1, "START!!!\n");
# initial sanity checks -- messages with
# max_forwards==0, or excessively long requests
if (!mf_process_maxfwd_header("15")) {
sl_send_reply("483","Too Many Hops");
break;
};
if (msg:len>=204822) {
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
# if (method=="INVITE") record_route(); # 1=loose routing
if(method=="INVITE"){
log(1, "receive INVITE\n");
record_route();
sl_send_reply("200", "ok");
};
# loose-route processing
if (loose_route()) {
t_relay();
break;
};
# if(method=="ACK"){
# log(1, "receive ACK\n");
# };
log(1, "record-route processing completed\n");
# 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=="REGISTER") {
log(1, "receive REGISTER\n");
# save location before initiating welcome
save("location");
log(1, "save 성공\n");
record_route();
sl_send_reply("200", "ok");
# welcome message
log(1, "route3으로 이동 \n");
route(3);
break;
};
# native SIP destinations are handled using our USRLOC DB
if (!lookup("location")) {
sl_send_reply("404", "Not Found");
log(1, "Usrloc DB에서 찾을 수 없음 \n");
break;
};
};
if(method=="BYE"){
log(1, "receive BYE\n");
record_route();
sl_send_reply("200", "ok");
break;
};
t_relay();
}
# welcome message -- if a REGISTER succeeded, look if it is the first-time;
# if so, initiate click-to-dial transaction to set up call to an
announcement
# server; edit the config values first to make it work
route[3] {
if (!exec_msg('
# config:
# --announcement server URI
ANS="sip:mijin@sam.cse"
# --SIP domain
# DOMAIN="192.168.178.193"
DOMAIN="192.168.178.194"
# ctd
CTD=${HOME}/sip_router/examples/ctd.sh
# ------------------------------------
# check if first time ...
SIP_UID=`echo $SIP_HF_TO | sed -e
"s/^.*sip:\([a-zA-Z0-9_\.]*\)@.*$/\1/g"`
QUERY="select flag from subscriber
where username=\"$SIP_UID\";
update subscriber set flag=\"x\"
where username=\"$SIP_UID\" ";
mysql -Bsuser -pheslo -e "$QUERY" ser| grep "^x$" > /dev/null
# ... if so, c-t-d to announcement server
if [ "$?" -ne 0 ] ; then
# flag was not set to x yet -- first-time registration;
# initiate a call from telephone of the user to an announcement server
$CTD "sip:$SIP_UID@$DOMAIN" "$ANS" > /dev/null 2>&1
fi
')) {
log(1, "welcome exec failed\n");
}
log(1, "-------route3 끝 \n");
}
_________________________________________________________________
책상위에 다리 올리고 느긋하게 즐긴다... MSN 온라인 상영관
http://vod.msn.co.kr