I'm using SEMS sbc dns srv rerouting + uac_auth.
I have domain( onat.edu.ua ) with 2 srv records.
>dig -t SRV _sip._udp.onat.edu.ua
;; ANSWER SECTION:
_sip._udp.onat.edu.ua. 600 IN SRV 0 0 5060 io.onat.edu.ua.
_sip._udp.onat.edu.ua. 600 IN SRV 0 0 5060 astx.onat.edu.ua.
also server io.onat.edu.ua which doesn't respond , (server doesn't
work special for testing)
If SEMS send requests to astx.onat.edu.ua firstly, I have no problems
with it.
But if io.on:at.edu.ua is selected for first request and if
authorizations is turned on, we can see next
[22428//home/sdi/projects/sems/core/sip/resolver.cpp:486] DEBUG: SRV:
TTL=600 _sip._udp.onat.edu.ua P=<0> W=<0> P=<5060> T=<io.onat.edu.ua>
[22428//home/sdi/projects/sems/core/sip/resolver.cpp:486] DEBUG: SRV:
TTL=600 _sip._udp.onat.edu.ua P=<0> W=<0> P=<5060> T=<astx.onat.edu.ua>
[22428//home/sdi/projects/sems/core/sip/resolver.cpp:452] DEBUG: A:
TTL=600 io.onat.edu.ua 193.186.15.22
[22428//home/sdi/projects/sems/core/sip/trans_layer.cpp:910] DEBUG:
send_request to R-URI <sip:[email protected]>
[22428//home/sdi/projects/sems/core/sip/parse_uri.cpp:332] DEBUG:
Converted URI port () to int (5060)
[22428//home/sdi/projects/sems/core/sip/parse_via.cpp:525] DEBUG:
parsed branch: z9hG4bKT54ULayN
[22428//home/sdi/projects/sems/core/sip/parse_via.cpp:548] DEBUG:
has_rport: 1
[22428//home/sdi/projects/sems/core/sip/trans_layer.cpp:980] DEBUG:
Sending to 193.186.15.22:5060 <INVITE sip:[email protected] SIP/2.0
Via: SIP/2.0/U...>
[22428//home/sdi/projects/sems/core/sip/transport.cpp:109] DEBUG: send
msg
--++--
INVITE sip:[email protected] SIP/2.0
Via: SIP/2.0/UDP 192.168.0.222:5080;branch=z9hG4bKT54ULayN;rport
From: "6786" <sip:[email protected]>;tag=54FC5CA7-507EA949000A8358-98F73700
To: <sip:[email protected]>
CSeq: 10 INVITE
Call-ID: 312A7800-507EA949000A8360-98F73700
Contact: <sip:192.168.0.222>
Max-Forwards: 70
Allow:
INVITE,ACK,BYE,CANCEL,OPTIONS,PRACK,REFER,NOTIFY,SUBSCRIBE,INFO,MESSAGE
Supported: replaces,norefersub,100rel
Max-Forwars: 70
User-Agent: YETI sbc
Content-Type: application/sdp
Content-Length: 337
v=0
o=- 1310451886 99007291 IN IP4 192.168.0.222
s=call
c=IN IP4 192.168.0.222
t=0 0
m=audio 10000 RTP/AVP 98 97 8 0 3 101
a=rtpmap:98 speex/16000
a=rtpmap:97 speex/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:3 GSM/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-15
a=sendrecv
a=ptime:20
a=direction:both
# SKIPPED .............
[22516//home/sdi/projects/sems/core/sip/sip_trans.cpp:157] DEBUG:
Transaction timer expired: type=A, trans=0x12a36f0, eta=317, t=317
[22516//home/sdi/projects/sems/core/sip/transport.cpp:109] DEBUG: send
msg
# RETRANSMIT.........
[22516//home/sdi/projects/sems/core/sip/sip_trans.cpp:188] DEBUG: New
timer of type A at time=367 (repeated=1)
[22516//home/sdi/projects/sems/core/sip/sip_trans.cpp:140] DEBUG:
Clearing old timer of type A (this=0x12a3800)
[22516//home/sdi/projects/sems/core/sip/sip_trans.cpp:157] DEBUG:
Transaction timer expired: type=A, trans=0x12a36f0, eta=367, t=367
[22516//home/sdi/projects/sems/core/sip/transport.cpp:109] DEBUG: send
msg
# RETRANSMIT.........
[22516//home/sdi/projects/sems/core/sip/sip_trans.cpp:188] DEBUG: New
timer of type A at time=467 (repeated=2)
[22516//home/sdi/projects/sems/core/sip/sip_trans.cpp:140] DEBUG:
Clearing old timer of type A (this=0x1028840)
[22516//home/sdi/projects/sems/core/sip/sip_trans.cpp:157] DEBUG:
Transaction timer expired: type=A, trans=0x12a36f0, eta=467, t=467
[22516//home/sdi/projects/sems/core/sip/transport.cpp:109] DEBUG: send
msg
# RETRANSMIT.........
[22516//home/sdi/projects/sems/core/sip/sip_trans.cpp:157] DEBUG:
Transaction timer expired: type=M, trans=0x12a36f0, eta=692, t=692
[22516//home/sdi/projects/sems/core/sip/resolver.cpp:452] DEBUG: A:
TTL=600 astx.onat.edu.ua 193.186.15.18
[22516//home/sdi/projects/sems/core/sip/transport.cpp:109] DEBUG: send
msg
# RETRANSMIT to new destination - 193.186.15.18 - valid switch
NVITE sip:[email protected] SIP/2.0
Via: SIP/2.0/UDP 192.168.0.222:5080;branch=z9hG4bKnHkpWaUi;rport
From: "6786" <sip:[email protected]>;tag=54FC5CA7-507EA949000A8358-98F73700
To: <sip:[email protected]>
CSeq: 10 INVITE
Call-ID: 312A7800-507EA949000A8360-98F73700
Contact: <sip:192.168.0.222>
Max-Forwards: 70
Allow:
INVITE,ACK,BYE,CANCEL,OPTIONS,PRACK,REFER,NOTIFY,SUBSCRIBE,INFO,MESSAGE
Supported: replaces,norefersub,100rel
Max-Forwars: 70
User-Agent: YETI sbc
Content-Type: application/sdp
Content-Length: 337
v=0
o=- 1310451886 99007291 IN IP4 192.168.0.222
s=call
c=IN IP4 192.168.0.222
t=0 0
m=audio 10000 RTP/AVP 98 97 8 0 3 101
a=rtpmap:98 speex/16000
a=rtpmap:97 speex/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:3 GSM/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-15
a=sendrecv
a=ptime:20
a=direction:both
--++--
[22516//home/sdi/projects/sems/core/sip/sip_trans.cpp:188] DEBUG: New
timer of type A at time=717 (repeated=0)
[22516//home/sdi/projects/sems/core/sip/sip_trans.cpp:140] DEBUG:
Clearing old timer of type A (this=0x1028840)
[22516//home/sdi/projects/sems/core/sip/sip_trans.cpp:188] DEBUG: New
timer of type M at time=1092 (repeated=0)
[22516//home/sdi/projects/sems/core/sip/sip_trans.cpp:140] DEBUG:
Clearing old timer of type M (this=0x12a3880)
[22517//home/sdi/projects/sems/core/sip/udp_trsp.cpp:213] DEBUG: vv M
[|] u recvd msg via UDP vv
--++--
SIP/2.0 407 Proxy Authentication Required
Via: SIP/2.0/UDP
192.168.0.222:5080;branch=z9hG4bKnHkpWaUi;received=192.168.0.222;rport=5080
From: "6786" <sip:[email protected]>;tag=54FC5CA7-507EA949000A8358-98F73700
To: <sip:[email protected]>;tag=as75fde410
Call-ID: 312A7800-507EA949000A8360-98F73700
CSeq: 10 INVITE
User-Agent: Asterisk PBX
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY
Supported: replaces
Proxy-Authenticate: Digest algorithm=MD5, realm="asterisk", nonce="071891a9"
Content-Length: 0
# ACK received
[22428//home/sdi/projects/sems/core/AmSipDialog.cpp:387] DEBUG:
onRxReply(rep = 407 Proxy Authentication Required): transaction found!
[22428//home/sdi/projects/sems/apps/sbc_sql/SBC.cpp:2139] DEBUG:
onSipReply: 407 Proxy Authentication Required (fwd=1)
[22428//home/sdi/projects/sems/apps/sbc_sql/SBC.cpp:2140] DEBUG:
onSipReply: content-type =
[22428//home/sdi/projects/sems/core/plug-in/uac_auth/UACAuth.cpp:133]
DEBUG: SIP reply with code 407 cseq 10 .
[22428//home/sdi/projects/sems/core/plug-in/uac_auth/UACAuth.cpp:139]
DEBUG: UACAuth - processing with reply code 407
[22428//home/sdi/projects/sems/core/plug-in/uac_auth/UACAuth.cpp:335]
DEBUG: realm='asterisk', nonce='071891a9', qop=''
[22428//home/sdi/projects/sems/core/plug-in/uac_auth/UACAuth.cpp:381]
DEBUG: calculated response = 0e765eb8d3d099823453246e4f963543
[22428//home/sdi/projects/sems/core/plug-in/uac_auth/UACAuth.cpp:402]
DEBUG: Auth req hdr: 'Proxy-Authorization: Digest username="123",
realm="asterisk", nonce="071891a9", uri="sip:[email protected]",
response="0e765eb8d3d0998250d94c6e4f9633d3", algorithm=MD5
'
[22428//home/sdi/projects/sems/core/AmOfferAnswer.cpp:69] DEBUG:
setting SIP dialog O/A status: None->None
[22428//home/sdi/projects/sems/apps/sbc_sql/SBC.cpp:2166] DEBUG:
auth->onSendRequest cseq = 11
[22428//home/sdi/projects/sems/core/plug-in/uac_auth/UACAuth.cpp:241]
DEBUG: adding 11 to list of sent requests.
[22428//home/sdi/projects/sems/core/sip/parse_uri.cpp:332] DEBUG:
Converted URI port () to int (5060)
[22428//home/sdi/projects/sems/core/sip/trans_layer.cpp:705] DEBUG:
next_hop:next_port is <onat.edu.ua:0>
[22428//home/sdi/projects/sems/core/sip/trans_layer.cpp:716] DEBUG:
checking whether 'onat.edu.ua' is IP address...
[22428//home/sdi/projects/sems/core/sip/trans_layer.cpp:729] DEBUG: no
port specified, looking up SRV '_sip._udp.onat.edu.ua'...
[22428//home/sdi/projects/sems/core/sip/trans_layer.cpp:910] DEBUG:
send_request to R-URI <sip:[email protected]>
[22428//home/sdi/projects/sems/core/sip/parse_uri.cpp:332] DEBUG:
Converted URI port () to int (5060)
[22428//home/sdi/projects/sems/core/sip/parse_via.cpp:525] DEBUG:
parsed branch: z9hG4bKs03FAa~R
[22428//home/sdi/projects/sems/core/sip/parse_via.cpp:548] DEBUG:
has_rport: 1
[22428//home/sdi/projects/sems/core/sip/trans_layer.cpp:980] DEBUG:
Sending to 193.186.15.22:5060 <INVITE sip:[email protected] SIP/2.0
Via: SIP/2.0/U...>
[22428//home/sdi/projects/sems/core/sip/transport.cpp:109] DEBUG: send
msg
## Sems send invite with Proxy-Authorization BUT use broken gateway
again(193.186.15.22)
--++--
INVITE sip:[email protected] SIP/2.0
Via: SIP/2.0/UDP 192.168.0.222:5080;branch=z9hG4bKs03FAa~R;rport
From: "6786" <sip:[email protected]>;tag=54FC5CA7-507EA949000A8358-98F73700
To: <sip:[email protected]>
CSeq: 11 INVITE
Call-ID: 312A7800-507EA949000A8360-98F73700
Contact: <sip:192.168.0.222>
Max-Forwards: 70
Allow:
INVITE,ACK,BYE,CANCEL,OPTIONS,PRACK,REFER,NOTIFY,SUBSCRIBE,INFO,MESSAGE
Supported: replaces,norefersub,100rel
Max-Forwars: 70
User-Agent: YETI sbc
Proxy-Authorization: Digest username="123", realm="asterisk",
nonce="071891a9", uri="sip:[email protected]",
response="0e765eb8d3d099823453246e4f963543", algorithm=MD5
Content-Type: application/sdp
Content-Length: 337
v=0
o=- 1310451886 99007291 IN IP4 192.168.0.222
s=call
c=IN IP4 192.168.0.222
t=0 0
m=audio 10000 RTP/AVP 98 97 8 0 3 101
a=rtpmap:98 speex/16000
a=rtpmap:97 speex/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:3 GSM/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-15
a=sendrecv
a=ptime:20
a=direction:both
After few retransmits Invite with Proxy-Authorization finally was
finally sent to working gateway
Maybe it have to send invite to gateway, which has respond with 470
before (not doing repeating of DNS SRV rerouting )?
_______________________________________________
Sems mailing list
[email protected]
http://lists.iptel.org/mailman/listinfo/sems