[Serusers] SER -> PSTN

Carlos Maynard carlos at hottelephone.com
Tue Oct 19 06:44:25 CEST 2004


I am moving to SER from Asterisk for the radius auth and accounting.

I finally made SER register and authenticate my test endpoint (Cisco ATA 
186) :D
i can dial to my home phone and my regular phone rings... but when i 
pick up i have dialtone... i'm pasting SER's output and my ser.cfg 
below. A codec problem? My carrier is using G729.

I am moving to SER from asterisk... on asterisk i can place callls from 
this same ATA box trough my carrier.
Does SER care what the Codec is ?

Thanks in advance,

Carlos Maynard Jr.



ser.cfg:
--------
listen=66.118.238.201

debug=9
fork=no
log_stderror=no

check_via=no          # (cmd. line: -v)
dns=no                # (cmd. line: -r)
rev_dns=no            # (cmd. line: -R)
fifo="/tmp/ser_fifo"

loadmodule "/usr/local/lib/ser/modules/mysql.so"
loadmodule "/usr/local/lib/ser/modules/auth_radius.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/auth.so"
loadmodule "/usr/local/lib/ser/modules/auth_db.so"

modparam("usrloc", "db_mode",   0)

modparam("auth_db", "calculate_ha1", yes)

modparam("auth_db", "password_column", "password")
modparam("auth_db", "db_url", "mysql://ser:heslo@66.118.238.198/ser")
modparam("auth_radius", 
"radius_config","/usr/local/etc/radiusclient/radiusclient.conf")

modparam("rr", "enable_full_lr", 1)

route{

       log(1, "\n**********************ROUTING\n");

       # 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;
       };

       record_route();

       if (loose_route()) {
               log(1, "\n**********************LOOSE ROUTE\n");
               t_relay();
               break;
       };

       if (uri==myself) {
               log(1, "\n**********************MYSELF\n");

               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;
               };


               if (method=="INVITE") {
                       log(1, "INVITE\n");
                       setflag(1); /* set for accounting (the same value 
as in log_flag!) */
               };

               if (method=="MESSAGE") {
                       log(1, "MESSAGE\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 HOST IS JUST NUMBERS SEND TO route(3) FOR E.164 
PROCESSING
               if (uri =~ "^sip:[0-9]*@"){
                       log(1, "SER: matched ^sip:[0-9]*@ - just numbers 
- process in route(3)\n");
                       route(3);
                       break;
               };


       }
}
route[3] {

       if (uri=~"^sip:[0-9]*@")
       {
               log(1, "SER: matched ^sip:6126[1,2] - forward to GW in 
CANBERRA\n");
               rewritehostport("38.114.15.34:5060");
               t_relay_to_udp("38.114.15.34","5060");
               break;
       };

}






Console Output:
-----------------

0(13481) SIP Request:
0(13481)  method:  <INVITE>
0(13481)  uri:     <sip:12814192614 at 66.118.238.201;user=phone>
0(13481)  version: <SIP/2.0>
0(13481) parse_headers: flags=1
0(13481) end of header reached, state=5
0(13481) parse_headers: Via found, flags=1
0(13481) parse_headers: this is the first via
0(13481) After parse_msg...
0(13481) preparing to run routing scripts...
0(13481)
**********************ROUTING
0(13481) DEBUG : is_maxfwd_present: searching for max_forwards header
0(13481) parse_headers: flags=128
0(13481) end of header reached, state=9
0(13481) DEBUG: get_hdr_field: <To> [45]; 
uri=[sip:12814192614 at 66.118.238.201;user=phone]
0(13481) DEBUG: to body [<sip:12814192614 at 66.118.238.201;user=phone>
]
0(13481) get_hdr_field: cseq <CSeq>: <1> <INVITE>
0(13481) DEBUG: get_hdr_body : content_length=268
0(13481) found end of header
0(13481) DEBUG: is_maxfwd_present: max_forwards header not found!
0(13481) DEBUG: add_param: tag=119525115
0(13481) end of header reached, state=29
0(13481) parse_headers: flags=256
0(13481) find_first_route(): No Route headers found
0(13481) loose_route(): There is no Route HF
0(13481) check_self - checking if host==us: 14==14 &&  [66.118.238.201] 
== [66.118.238.201]
0(13481) check_self - checking if port 5060 matches port 5060
0(13481)
**********************MYSELF
0(13481) INVITE
0(13481) SER: matched ^sip:[0-9]*@ - just numbers - process in route(3)
0(13481) SER: matched ^sip:6126[1,2] - forward to GW in CANBERRA
0(13481) DEBUG: t_addifnew: msg id=121 , global msg id=120 , T on 
entrance=0xffffffff
0(13481) parse_headers: flags=-1
0(13481) parse_headers: flags=60
0(13481) t_lookup_request: start searching: hash=30407, isACK=0
0(13481) DEBUG: proceeding to pre-RFC3261 transaction matching
0(13481) DEBUG: t_lookup_request: no transaction found
0(13481) SER: new INVITE
0(13481) parse_headers: flags=-1
0(13481) check_via_address(68.91.112.229, 192.168.1.4, 0)
0(13481) WARNING:vqm_resize: resize(0) called
0(13481) DEBUG: reply sent out. buf=0x80c5f20: SIP/2.0 1..., 
shmem=0x402e4040: SIP/2.0 1
0(13481) DEBUG: t_reply: finished
0(13481) check_via_address(68.91.112.229, 192.168.1.4, 0)
0(13481) DEBUG: add_to_tail_of_timer[4]: 0x402e4f30
0(13481) DEBUG: add_to_tail_of_timer[0]: 0x402e4f44
0(13481) SER: new transaction fwd'ed
0(13481) DEBUG:destroy_avp_list: destroing list (nil)
0(13481) receive_msg: cleaning up
0(13481) SIP Reply  (status):
0(13481)  version: <SIP/2.0>
0(13481)  status:  <100>
0(13481)  reason:  <Trying>
0(13481) parse_headers: flags=1
0(13481) Found param type 232, <branch> = <z9hG4bK7c67.dc0712e3.0>; 
state=16
0(13481) end of header reached, state=5
0(13481) parse_headers: Via found, flags=1
0(13481) parse_headers: this is the first via
0(13481) After parse_msg...
0(13481) forward_reply: found module tm, passing reply to it
0(13481) DEBUG: t_check: msg id=122 global id=121 T start=0xffffffff
0(13481) parse_headers: flags=17
0(13481) Found param type 234, <received> = <192.168.1.4>; state=16
0(13481) end of header reached, state=5
0(13481) parse_headers: Via found, flags=17
0(13481) parse_headers: this is the second via
0(13481) end of header reached, state=9
0(13481) DEBUG: get_hdr_field: <To> [45]; 
uri=[sip:12814192614 at 66.118.238.201;user=phone]
0(13481) DEBUG: to body [<sip:12814192614 at 66.118.238.201;user=phone>
]
0(13481) get_hdr_field: cseq <CSeq>: <1> <INVITE>
0(13481) parse_headers: flags=4
0(13481) DEBUG: t_reply_matching: hash 30407 label 1042378957 branch 0
0(13481) DEBUG: t_reply_matching: reply matched (T=0x402e4e08)!
0(13481) DEBUG: t_check: msg id=122 global id=122 T end=0x402e4e08
0(13481) DEBUG: t_on_reply: org. status uas=100, uac[0]=0 local=0 
is_invite=1)
0(13481) ->>>>>>>>> T_code=100, new_code=100
0(13481) DEBUG: relay_reply: branch=0, save=0, relay=-1
0(13481) DEBUG: add_to_tail_of_timer[1]: 0x402e4f44
0(13481) DEBUG:destroy_avp_list: destroing list (nil)
0(13481) receive_msg: cleaning up
1(13482) DEBUG: timer routine:4,tl=0x402e4f30 next=(nil)
0(13481) SIP Reply  (status):
0(13481)  version: <SIP/2.0>
0(13481)  status:  <180>
0(13481)  reason:  <Ringing>
0(13481) parse_headers: flags=1
0(13481) Found param type 232, <branch> = <z9hG4bK7c67.dc0712e3.0>; 
state=16
0(13481) end of header reached, state=5
0(13481) parse_headers: Via found, flags=1
0(13481) parse_headers: this is the first via
0(13481) After parse_msg...
0(13481) forward_reply: found module tm, passing reply to it
0(13481) DEBUG: t_check: msg id=123 global id=122 T start=0xffffffff
0(13481) parse_headers: flags=17
0(13481) Found param type 234, <received> = <192.168.1.4>; state=16
0(13481) end of header reached, state=5
0(13481) parse_headers: Via found, flags=17
0(13481) parse_headers: this is the second via
0(13481) DEBUG: add_param: tag=SD40lb399-38
0(13481) end of header reached, state=29
0(13481) DEBUG: get_hdr_field: <To> [62]; 
uri=[sip:12814192614 at 66.118.238.201;user=phone]
0(13481) DEBUG: to body [<sip:12814192614 at 66.118.238.201;user=phone>]
0(13481) get_hdr_field: cseq <CSeq>: <1> <INVITE>
0(13481) parse_headers: flags=4
0(13481) DEBUG: t_reply_matching: hash 30407 label 1042378957 branch 0
0(13481) DEBUG: t_reply_matching: reply matched (T=0x402e4e08)!
0(13481) DEBUG: t_check: msg id=123 global id=123 T end=0x402e4e08
0(13481) DEBUG: t_on_reply: org. status uas=100, uac[0]=100 local=0 
is_invite=1)
0(13481) ->>>>>>>>> T_code=100, new_code=180
0(13481) DEBUG: relay_reply: branch=0, save=0, relay=0
0(13481)  old size: 669, new size: 606
0(13481) build_res_from_sip_res: copied size: orig:84, new: 21, rest: 
585 msg=
SIP/2.0 180 Ringing
Via: SIP/2.0/UDP 192.168.1.4:5060;received=192.168.1.4
From: Line 0 <sip:2000 at 66.118.238.201;user=phone>;tag=119525115
To: <sip:12814192614 at 66.118.238.201;user=phone>;tag=SD40lb399-38
Call-ID: 2912392921 at 68.91.112.229
CSeq: 1 INVITE
Record-Route: <sip:12814192614 at 66.118.238.201;ftag=119525115;lr=on>
Content-Length: 176
Content-Disposition: session;handling=required
Content-Type: application/sdp

v=0
o=Sonus_UAC 22631 32400 IN IP4 38.114.15.34
s=SIP Media Capabilities
c=IN IP4 38.114.15.34
t=0 0
m=audio 6220 RTP/AVP 18
a=fmtp:18 annexb:no
a=sendrecv
a=ptime:20

0(13481) DEBUG: reply relayed. buf=0x80c67b0: SIP/2.0 1..., 
shmem=0x402e6840: SIP/2.0 1
0(13481) DEBUG: add_to_tail_of_timer[1]: 0x402e4f44
0(13481) DEBUG:destroy_avp_list: destroing list (nil)
0(13481) receive_msg: cleaning up

0(13481) SIP Request:
0(13481)  method:  <CANCEL>
0(13481)  uri:     <sip:12814192614 at 66.118.238.201;user=phone>
0(13481)  version: <SIP/2.0>
0(13481) parse_headers: flags=1
0(13481) end of header reached, state=5
0(13481) parse_headers: Via found, flags=1
0(13481) parse_headers: this is the first via
0(13481) After parse_msg...
0(13481) preparing to run routing scripts...
0(13481)
**********************ROUTING
0(13481) DEBUG : is_maxfwd_present: searching for max_forwards header
0(13481) parse_headers: flags=128
0(13481) end of header reached, state=9
0(13481) DEBUG: get_hdr_field: <To> [45]; 
uri=[sip:12814192614 at 66.118.238.201;user=phone]
0(13481) DEBUG: to body [<sip:12814192614 at 66.118.238.201;user=phone>
]
0(13481) get_hdr_field: cseq <CSeq>: <1> <CANCEL>
0(13481) DEBUG: get_hdr_body : content_length=0
0(13481) found end of header
0(13481) DEBUG: is_maxfwd_present: max_forwards header not found!
0(13481) DEBUG: add_param: tag=119525115
0(13481) end of header reached, state=29
0(13481) parse_headers: flags=256
0(13481) find_first_route(): No Route headers found
0(13481) loose_route(): There is no Route HF
0(13481) check_self - checking if host==us: 14==14 &&  [66.118.238.201] 
== [66.118.238.201]
0(13481) check_self - checking if port 5060 matches port 5060
0(13481)
**********************MYSELF
0(13481) BYE or CANCEL
0(13481) SER: matched ^sip:[0-9]*@ - just numbers - process in route(3)
0(13481) SER: matched ^sip:6126[1,2] - forward to GW in CANBERRA
0(13481) DEBUG: t_addifnew: msg id=124 , global msg id=123 , T on 
entrance=0xffffffff
0(13481) parse_headers: flags=-1
0(13481) parse_headers: flags=60
0(13481) t_lookup_request: start searching: hash=30407, isACK=0
0(13481) DEBUG: proceeding to pre-RFC3261 transaction matching
0(13481) DEBUG: t_lookup_request: no transaction found
0(13481) DEBUG: t_lookupOriginalT: searching on hash entry 30407
0(13481) DEBUG: t_lookupOriginalT: canceled transaction found (0x402e4e08)!
0(13481) DEBUG: t_lookupOriginalT completed
0(13481) check_via_address(68.91.112.229, 192.168.1.4, 0)
0(13481) DEBUG: add_to_tail_of_timer[4]: 0x402e7040
0(13481) DEBUG: add_to_tail_of_timer[0]: 0x402e7054
0(13481) DEBUG: e2e_cancel: e2e cancel proceeding
0(13481) parse_headers: flags=-1
0(13481) check_via_address(68.91.112.229, 192.168.1.4, 0)
0(13481) WARNING:vqm_resize: resize(0) called
0(13481) DEBUG: cleanup_uacs: RETR/FR timers reset
0(13481) DEBUG: add_to_tail_of_timer[2]: 0x402e6f60
0(13481) DEBUG: reply sent out. buf=0x80c6180: SIP/2.0 2..., 
shmem=0x402e8420: SIP/2.0 2
0(13481) DEBUG: t_reply: finished
0(13481) DEBUG: e2e_cancel: sending 487
0(13481) parse_headers: flags=-1
0(13481) check_via_address(68.91.112.229, 192.168.1.4, 0)
0(13481) DEBUG: cleanup_uacs: RETR/FR timers reset
0(13481) DEBUG: add_to_tail_of_timer[4]: 0x402e4ebc
0(13481) DEBUG: add_to_tail_of_timer[0]: 0x402e4ed0
0(13481) DEBUG: reply sent out. buf=0x80c6550: SIP/2.0 4..., 
shmem=0x402e9e68: SIP/2.0 4
0(13481) DEBUG: t_reply: finished
0(13481) SER: new transaction fwd'ed
0(13481) DEBUG:destroy_avp_list: destroing list (nil)
0(13481) receive_msg: cleaning up







-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sip-router.org/pipermail/sr-users/attachments/20041018/4ae187e9/attachment.htm>


More information about the sr-users mailing list