[Home]

Summary:ASTERISK-14123: [patch] Registration Deadlock between Asterisk and Polycom Soundpoint IP 450
Reporter:Jamuel Starkey (jamuel)Labels:
Date Opened:2009-05-13 17:49:45Date Closed:2009-07-10 11:48:57
Priority:MajorRegression?No
Status:Closed/CompleteComponents:Channels/chan_sip/Registration
Versions:Frequency of
Occurrence
Related
Issues:
Environment:Attachments:( 0) nonce_sip.diff
( 1) patch-bug_0015102
Description:Intermittently I'm seeing a registration deadlock that prevents Polycom SP IP 450's from renewing registrations with Asterisk (tested against 1.4.24.1)  

****** ADDITIONAL INFORMATION ******

It seems that the Polycom occasionally sends multiple registration requests in a very short period of time with the same nonce that first gets 401'd by * and then the subsequent registration get's 401'd with yet another nonce, the Polycom then tries to register again this time with the first new nonce which gets 401'd as STALE and yet another nonce is generated by *.  

This starts a cascading parade of registration attempts by the Polycom and 401's with stale nonces reported by *--until finally the Polycom backs off completely (usually after the original registration time expires) and then at some point the Polycom and * are quiet long enough for a new registration to commence

I'm not really sure what the RFC says about stale nonces and whether or not a new nonce should be generated each and every time a stale nonce is detected.  But it would seem (at least to me) reasonable over the course of the lifetime of that particular SIP dialog (or maybe a configurable number of retries) to not generate a new nonce each and every time a stale nonce is detected but to just continue to send the original "new" nonce until the SIP client tries to auth with it.


Here's an ngrep (please note that I show the capture from the client-side and the WAN-side of the client's NAT router:

10.10.201.2 = Client/Polycom Soundpoint IP 450
172.17.1.98 = NAT Router/Internet Facing
192.168.1.24 = Asterisk (Public Static IP)

(Both the NAT Router and * IP's have been replaced to protect the innocent.)

U 2009/05/12 11:43:28.926369 10.10.201.2:5060 -> 192.168.1.24:5060
REGISTER sip:example.com:5060 SIP/2.0.
Via: SIP/2.0/UDP 10.10.201.2;branch=z9hG4bK25223f06E5D5F0D9.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=35A4432E-B5115021.
To: <sip:PlcmSpIp450@example.com>.
CSeq: 174 REGISTER.
Call-ID: 9a8be69d-77847b3c-3db4df47@10.10.201.2.
Contact: <sip:PlcmSpIp450@10.10.201.2>;methods="INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER".
User-Agent: PolycomSoundPointIP-SPIP_450-UA/3.1.2.0392_PlcmSpIp450.
Accept-Language: en.
Authorization: Digest username="PlcmSpIp450", realm="asterisk", nonce="41d08600", uri="sip:example.com:5060", response="2962a40d62c977128b5ac93fb724ce0c", algorithm=MD5.
Max-Forwards: 70.
Expires: 150.
Content-Length: 0.
.


U 2009/05/12 11:43:28.962297 192.168.1.24:5060 -> 10.10.201.2:5060
SIP/2.0 100 Trying.
Via: SIP/2.0/UDP 10.10.201.2:5060;branch=z9hG4bK5b4871d43F9AD1BF;received=10.10.201.2.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=35A4432E-B5115021.
To: <sip:PlcmSpIp450@example.com>.
Call-ID: 9a8be69d-77847b3c-3db4df47@10.10.201.2.
CSeq: 173 REGISTER.
User-Agent: Asterisk PBX.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY.
Supported: replaces.
Content-Length: 0.
.


U 2009/05/12 11:43:29.019149 192.168.1.24:5060 -> 10.10.201.2:5060
SIP/2.0 401 Unauthorized.
Via: SIP/2.0/UDP 10.10.201.2:5060;branch=z9hG4bK5b4871d43F9AD1BF;received=10.10.201.2.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=35A4432E-B5115021.
To: <sip:PlcmSpIp450@example.com>;tag=as2416f3e6.
Call-ID: 9a8be69d-77847b3c-3db4df47@10.10.201.2.
CSeq: 173 REGISTER.
User-Agent: Asterisk PBX.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY.
Supported: replaces.
WWW-Authenticate: Digest algorithm=MD5, realm="asterisk", nonce="14b17497", stale=true.
Content-Length: 0.
.


U 2009/05/12 11:43:30.191823 172.17.1.98:1301 -> 192.168.1.24:5060
REGISTER sip:example.com:5060 SIP/2.0.
Via: SIP/2.0/UDP 172.17.1.98:1302;branch=z9hG4bK5b4871d43F9AD1BF.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=35A4432E-B5115021.
To: <sip:PlcmSpIp450@example.com>.
CSeq: 173 REGISTER.
Call-ID: 9a8be69d-77847b3c-3db4df47@10.10.201.2.
Contact: <sip:PlcmSpIp450@172.17.1.98:1302>;methods="INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER".
User-Agent: PolycomSoundPointIP-SPIP_450-UA/3.1.2.0392_PlcmSpIp450.
Accept-Language: en.
Authorization: Digest username="PlcmSpIp450", realm="asterisk", nonce="45d78d17", uri="sip:example.com:5060", response="b0087557d5b7a367e4a1ba2bc45f82b7", algorithm=MD5.
Max-Forwards: 70.
Expires: 150.
Content-Length: 0.
.


U 2009/05/12 11:43:30.230751 192.168.1.24:5060 -> 172.17.1.98:1301
SIP/2.0 100 Trying.
Via: SIP/2.0/UDP 172.17.1.98:1302;branch=z9hG4bK5b4871d43F9AD1BF;received=172.17.1.98.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=35A4432E-B5115021.
To: <sip:PlcmSpIp450@example.com>.
Call-ID: 9a8be69d-77847b3c-3db4df47@10.10.201.2.
CSeq: 173 REGISTER.
User-Agent: Asterisk PBX.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY.
Supported: replaces.
Content-Length: 0.
.


U 2009/05/12 11:43:30.231350 192.168.1.24:5060 -> 172.17.1.98:1301
SIP/2.0 401 Unauthorized.
Via: SIP/2.0/UDP 172.17.1.98:1302;branch=z9hG4bK5b4871d43F9AD1BF;received=172.17.1.98.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=35A4432E-B5115021.
To: <sip:PlcmSpIp450@example.com>;tag=as2416f3e6.
Call-ID: 9a8be69d-77847b3c-3db4df47@10.10.201.2.
CSeq: 173 REGISTER.
User-Agent: Asterisk PBX.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY.
Supported: replaces.
WWW-Authenticate: Digest algorithm=MD5, realm="asterisk", nonce="62df2a6d", stale=true.
Content-Length: 0.
.


U 2009/05/12 11:43:30.304499 192.168.1.24:5060 -> 10.10.201.2:5060
SIP/2.0 100 Trying.
Via: SIP/2.0/UDP 10.10.201.2:5060;branch=z9hG4bK5b4871d43F9AD1BF;received=10.10.201.2.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=35A4432E-B5115021.
To: <sip:PlcmSpIp450@example.com>.
Call-ID: 9a8be69d-77847b3c-3db4df47@10.10.201.2.
CSeq: 173 REGISTER.
User-Agent: Asterisk PBX.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY.
Supported: replaces.
Content-Length: 0.
.


U 2009/05/12 11:43:30.346983 192.168.1.24:5060 -> 10.10.201.2:5060
SIP/2.0 401 Unauthorized.
Via: SIP/2.0/UDP 10.10.201.2:5060;branch=z9hG4bK5b4871d43F9AD1BF;received=10.10.201.2.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=35A4432E-B5115021.
To: <sip:PlcmSpIp450@example.com>;tag=as2416f3e6.
Call-ID: 9a8be69d-77847b3c-3db4df47@10.10.201.2.
CSeq: 173 REGISTER.
User-Agent: Asterisk PBX.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY.
Supported: replaces.
WWW-Authenticate: Digest algorithm=MD5, realm="asterisk", nonce="32ef4bcf", stale=true.
Content-Length: 0.
.


U 2009/05/12 11:43:30.933257 10.10.201.2:5060 -> 192.168.1.24:5060
REGISTER sip:example.com:5060 SIP/2.0.
Via: SIP/2.0/UDP 10.10.201.2;branch=z9hG4bK25223f06E5D5F0D9.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=35A4432E-B5115021.
To: <sip:PlcmSpIp450@example.com>.
CSeq: 174 REGISTER.
Call-ID: 9a8be69d-77847b3c-3db4df47@10.10.201.2.
Contact: <sip:PlcmSpIp450@10.10.201.2>;methods="INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER".
User-Agent: PolycomSoundPointIP-SPIP_450-UA/3.1.2.0392_PlcmSpIp450.
Accept-Language: en.
Authorization: Digest username="PlcmSpIp450", realm="asterisk", nonce="41d08600", uri="sip:example.com:5060", response="2962a40d62c977128b5ac93fb724ce0c", algorithm=MD5.
Max-Forwards: 70.
Expires: 150.
Content-Length: 0.
.


U 2009/05/12 11:43:31.347965 172.17.1.98:1301 -> 192.168.1.24:5060
REGISTER sip:example.com:5060 SIP/2.0.
Via: SIP/2.0/UDP 172.17.1.98:1302;branch=z9hG4bK25223f06E5D5F0D9.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=35A4432E-B5115021.
To: <sip:PlcmSpIp450@example.com>.
CSeq: 174 REGISTER.
Call-ID: 9a8be69d-77847b3c-3db4df47@10.10.201.2.
Contact: <sip:PlcmSpIp450@172.17.1.98:1302>;methods="INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER".
User-Agent: PolycomSoundPointIP-SPIP_450-UA/3.1.2.0392_PlcmSpIp450.
Accept-Language: en.
Authorization: Digest username="PlcmSpIp450", realm="asterisk", nonce="41d08600", uri="sip:example.com:5060", response="2962a40d62c977128b5ac93fb724ce0c", algorithm=MD5.
Max-Forwards: 70.
Expires: 150.
Content-Length: 0.
.


U 2009/05/12 11:43:31.380869 192.168.1.24:5060 -> 172.17.1.98:1301
SIP/2.0 100 Trying.
Via: SIP/2.0/UDP 172.17.1.98:1302;branch=z9hG4bK25223f06E5D5F0D9;received=172.17.1.98.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=35A4432E-B5115021.
To: <sip:PlcmSpIp450@example.com>.
Call-ID: 9a8be69d-77847b3c-3db4df47@10.10.201.2.
CSeq: 174 REGISTER.
User-Agent: Asterisk PBX.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY.
Supported: replaces.
Content-Length: 0.
.


U 2009/05/12 11:43:31.381558 192.168.1.24:5060 -> 172.17.1.98:1301
SIP/2.0 401 Unauthorized.
Via: SIP/2.0/UDP 172.17.1.98:1302;branch=z9hG4bK25223f06E5D5F0D9;received=172.17.1.98.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=35A4432E-B5115021.
To: <sip:PlcmSpIp450@example.com>;tag=as2416f3e6.
Call-ID: 9a8be69d-77847b3c-3db4df47@10.10.201.2.
CSeq: 174 REGISTER.
User-Agent: Asterisk PBX.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY.
Supported: replaces.
WWW-Authenticate: Digest algorithm=MD5, realm="asterisk", nonce="75ea2fbe", stale=true.
Content-Length: 0.
.


U 2009/05/12 11:43:32.045476 172.17.1.98:1301 -> 192.168.1.24:5060
REGISTER sip:example.com:5060 SIP/2.0.
Via: SIP/2.0/UDP 172.17.1.98:1302;branch=z9hG4bK25223f06E5D5F0D9.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=35A4432E-B5115021.
To: <sip:PlcmSpIp450@example.com>.
CSeq: 174 REGISTER.
Call-ID: 9a8be69d-77847b3c-3db4df47@10.10.201.2.
Contact: <sip:PlcmSpIp450@172.17.1.98:1302>;methods="INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER".
User-Agent: PolycomSoundPointIP-SPIP_450-UA/3.1.2.0392_PlcmSpIp450.
Accept-Language: en.
Authorization: Digest username="PlcmSpIp450", realm="asterisk", nonce="41d08600", uri="sip:example.com:5060", response="2962a40d62c977128b5ac93fb724ce0c", algorithm=MD5.
Max-Forwards: 70.
Expires: 150.
Content-Length: 0.
.


U 2009/05/12 11:43:32.081918 192.168.1.24:5060 -> 172.17.1.98:1301
SIP/2.0 100 Trying.
Via: SIP/2.0/UDP 172.17.1.98:1302;branch=z9hG4bK25223f06E5D5F0D9;received=172.17.1.98.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=35A4432E-B5115021.
To: <sip:PlcmSpIp450@example.com>.
Call-ID: 9a8be69d-77847b3c-3db4df47@10.10.201.2.
CSeq: 174 REGISTER.
User-Agent: Asterisk PBX.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY.
Supported: replaces.
Content-Length: 0.
.


U 2009/05/12 11:43:32.082783 192.168.1.24:5060 -> 172.17.1.98:1301
SIP/2.0 401 Unauthorized.
Via: SIP/2.0/UDP 172.17.1.98:1302;branch=z9hG4bK25223f06E5D5F0D9;received=172.17.1.98.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=35A4432E-B5115021.
To: <sip:PlcmSpIp450@example.com>;tag=as2416f3e6.
Call-ID: 9a8be69d-77847b3c-3db4df47@10.10.201.2.
CSeq: 174 REGISTER.
User-Agent: Asterisk PBX.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY.
Supported: replaces.
WWW-Authenticate: Digest algorithm=MD5, realm="asterisk", nonce="4cf40288", stale=true.
Content-Length: 0.
.


U 2009/05/12 11:43:33.254796 172.17.1.98:1301 -> 192.168.1.24:5060
REGISTER sip:example.com:5060 SIP/2.0.
Via: SIP/2.0/UDP 172.17.1.98:1302;branch=z9hG4bK25223f06E5D5F0D9.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=35A4432E-B5115021.
To: <sip:PlcmSpIp450@example.com>.
CSeq: 174 REGISTER.
Call-ID: 9a8be69d-77847b3c-3db4df47@10.10.201.2.
Contact: <sip:PlcmSpIp450@172.17.1.98:1302>;methods="INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER".
User-Agent: PolycomSoundPointIP-SPIP_450-UA/3.1.2.0392_PlcmSpIp450.
Accept-Language: en.
Authorization: Digest username="PlcmSpIp450", realm="asterisk", nonce="41d08600", uri="sip:example.com:5060", response="2962a40d62c977128b5ac93fb724ce0c", algorithm=MD5.
Max-Forwards: 70.
Expires: 150.
Content-Length: 0.
.


U 2009/05/12 11:43:33.289600 192.168.1.24:5060 -> 172.17.1.98:1301
SIP/2.0 100 Trying.
Via: SIP/2.0/UDP 172.17.1.98:1302;branch=z9hG4bK25223f06E5D5F0D9;received=172.17.1.98.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=35A4432E-B5115021.
To: <sip:PlcmSpIp450@example.com>.
Call-ID: 9a8be69d-77847b3c-3db4df47@10.10.201.2.
CSeq: 174 REGISTER.
User-Agent: Asterisk PBX.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY.
Supported: replaces.
Content-Length: 0.
.


U 2009/05/12 11:43:33.290111 192.168.1.24:5060 -> 172.17.1.98:1301
SIP/2.0 401 Unauthorized.
Via: SIP/2.0/UDP 172.17.1.98:1302;branch=z9hG4bK25223f06E5D5F0D9;received=172.17.1.98.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=35A4432E-B5115021.
To: <sip:PlcmSpIp450@example.com>;tag=as2416f3e6.
Call-ID: 9a8be69d-77847b3c-3db4df47@10.10.201.2.
CSeq: 174 REGISTER.
User-Agent: Asterisk PBX.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY.
Supported: replaces.
WWW-Authenticate: Digest algorithm=MD5, realm="asterisk", nonce="2143c612", stale=true.
Content-Length: 0.
.


U 2009/05/12 11:43:34.278740 192.168.1.24:5060 -> 10.10.201.2:5060
SIP/2.0 100 Trying.
Via: SIP/2.0/UDP 10.10.201.2:5060;branch=z9hG4bK5b4871d43F9AD1BF;received=10.10.201.2.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=35A4432E-B5115021.
To: <sip:PlcmSpIp450@example.com>.
Call-ID: 9a8be69d-77847b3c-3db4df47@10.10.201.2.
CSeq: 173 REGISTER.
User-Agent: Asterisk PBX.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY.
Supported: replaces.
Content-Length: 0.
.


U 2009/05/12 11:43:34.329796 192.168.1.24:5060 -> 10.10.201.2:5060
SIP/2.0 401 Unauthorized.
Via: SIP/2.0/UDP 10.10.201.2:5060;branch=z9hG4bK5b4871d43F9AD1BF;received=10.10.201.2.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=35A4432E-B5115021.
To: <sip:PlcmSpIp450@example.com>;tag=as2416f3e6.
Call-ID: 9a8be69d-77847b3c-3db4df47@10.10.201.2.
CSeq: 173 REGISTER.
User-Agent: Asterisk PBX.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY.
Supported: replaces.
WWW-Authenticate: Digest algorithm=MD5, realm="asterisk", nonce="62df2a6d", stale=true.
Content-Length: 0.
.


U 2009/05/12 11:43:34.934840 10.10.201.2:5060 -> 192.168.1.24:5060
REGISTER sip:example.com:5060 SIP/2.0.
Via: SIP/2.0/UDP 10.10.201.2;branch=z9hG4bK25223f06E5D5F0D9.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=35A4432E-B5115021.
To: <sip:PlcmSpIp450@example.com>.
CSeq: 174 REGISTER.
Call-ID: 9a8be69d-77847b3c-3db4df47@10.10.201.2.
Contact: <sip:PlcmSpIp450@10.10.201.2>;methods="INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER".
User-Agent: PolycomSoundPointIP-SPIP_450-UA/3.1.2.0392_PlcmSpIp450.
Accept-Language: en.
Authorization: Digest username="PlcmSpIp450", realm="asterisk", nonce="41d08600", uri="sip:example.com:5060", response="2962a40d62c977128b5ac93fb724ce0c", algorithm=MD5.
Max-Forwards: 70.
Expires: 150.
Content-Length: 0.
.


U 2009/05/12 11:43:35.442075 172.17.1.98:1301 -> 192.168.1.24:5060
REGISTER sip:example.com:5060 SIP/2.0.
Via: SIP/2.0/UDP 172.17.1.98:1302;branch=z9hG4bK25223f06E5D5F0D9.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=35A4432E-B5115021.
To: <sip:PlcmSpIp450@example.com>.
CSeq: 174 REGISTER.
Call-ID: 9a8be69d-77847b3c-3db4df47@10.10.201.2.
Contact: <sip:PlcmSpIp450@172.17.1.98:1302>;methods="INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER".
User-Agent: PolycomSoundPointIP-SPIP_450-UA/3.1.2.0392_PlcmSpIp450.
Accept-Language: en.
Authorization: Digest username="PlcmSpIp450", realm="asterisk", nonce="41d08600", uri="sip:example.com:5060", response="2962a40d62c977128b5ac93fb724ce0c", algorithm=MD5.
Max-Forwards: 70.
Expires: 150.
Content-Length: 0.
.


U 2009/05/12 11:43:35.480882 192.168.1.24:5060 -> 172.17.1.98:1301
SIP/2.0 100 Trying.
Via: SIP/2.0/UDP 172.17.1.98:1302;branch=z9hG4bK25223f06E5D5F0D9;received=172.17.1.98.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=35A4432E-B5115021.
To: <sip:PlcmSpIp450@example.com>.
Call-ID: 9a8be69d-77847b3c-3db4df47@10.10.201.2.
CSeq: 174 REGISTER.
User-Agent: Asterisk PBX.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY.
Supported: replaces.
Content-Length: 0.
.


U 2009/05/12 11:43:35.481481 192.168.1.24:5060 -> 172.17.1.98:1301
SIP/2.0 401 Unauthorized.
Via: SIP/2.0/UDP 172.17.1.98:1302;branch=z9hG4bK25223f06E5D5F0D9;received=172.17.1.98.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=35A4432E-B5115021.
To: <sip:PlcmSpIp450@example.com>;tag=as2416f3e6.
Call-ID: 9a8be69d-77847b3c-3db4df47@10.10.201.2.
CSeq: 174 REGISTER.
User-Agent: Asterisk PBX.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY.
Supported: replaces.
WWW-Authenticate: Digest algorithm=MD5, realm="asterisk", nonce="36c79692", stale=true.
Content-Length: 0.
.


U 2009/05/12 11:43:35.978808 192.168.1.24:5060 -> 10.10.201.2:5060
SIP/2.0 100 Trying.
Via: SIP/2.0/UDP 10.10.201.2:5060;branch=z9hG4bK25223f06E5D5F0D9;received=10.10.201.2.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=35A4432E-B5115021.
To: <sip:PlcmSpIp450@example.com>.
Call-ID: 9a8be69d-77847b3c-3db4df47@10.10.201.2.
CSeq: 174 REGISTER.
User-Agent: Asterisk PBX.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY.
Supported: replaces.
Content-Length: 0.
.


U 2009/05/12 11:43:36.019607 192.168.1.24:5060 -> 10.10.201.2:5060
SIP/2.0 401 Unauthorized.
Via: SIP/2.0/UDP 10.10.201.2:5060;branch=z9hG4bK25223f06E5D5F0D9;received=10.10.201.2.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=35A4432E-B5115021.
To: <sip:PlcmSpIp450@example.com>;tag=as2416f3e6.
Call-ID: 9a8be69d-77847b3c-3db4df47@10.10.201.2.
CSeq: 174 REGISTER.
User-Agent: Asterisk PBX.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY.
Supported: replaces.
WWW-Authenticate: Digest algorithm=MD5, realm="asterisk", nonce="75ea2fbe", stale=true.
Content-Length: 0.
.


U 2009/05/12 11:43:36.671050 192.168.1.24:5060 -> 10.10.201.2:5060
SIP/2.0 100 Trying.
Via: SIP/2.0/UDP 10.10.201.2:5060;branch=z9hG4bK25223f06E5D5F0D9;received=10.10.201.2.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=35A4432E-B5115021.
To: <sip:PlcmSpIp450@example.com>.
Call-ID: 9a8be69d-77847b3c-3db4df47@10.10.201.2.
CSeq: 174 REGISTER.
User-Agent: Asterisk PBX.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY.
Supported: replaces.
Content-Length: 0.
.


U 2009/05/12 11:43:36.706214 192.168.1.24:5060 -> 10.10.201.2:5060
SIP/2.0 401 Unauthorized.
Via: SIP/2.0/UDP 10.10.201.2:5060;branch=z9hG4bK25223f06E5D5F0D9;received=10.10.201.2.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=35A4432E-B5115021.
To: <sip:PlcmSpIp450@example.com>;tag=as2416f3e6.
Call-ID: 9a8be69d-77847b3c-3db4df47@10.10.201.2.
CSeq: 174 REGISTER.
User-Agent: Asterisk PBX.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY.
Supported: replaces.
WWW-Authenticate: Digest algorithm=MD5, realm="asterisk", nonce="4cf40288", stale=true.
Content-Length: 0.
.


U 2009/05/12 11:43:39.771563 172.17.1.98:1301 -> 192.168.1.24:5060
REGISTER sip:example.com:5060 SIP/2.0.
Via: SIP/2.0/UDP 172.17.1.98:1302;branch=z9hG4bK25223f06E5D5F0D9.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=35A4432E-B5115021.
To: <sip:PlcmSpIp450@example.com>.
CSeq: 174 REGISTER.
Call-ID: 9a8be69d-77847b3c-3db4df47@10.10.201.2.
Contact: <sip:PlcmSpIp450@172.17.1.98:1302>;methods="INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER".
User-Agent: PolycomSoundPointIP-SPIP_450-UA/3.1.2.0392_PlcmSpIp450.
Accept-Language: en.
Authorization: Digest username="PlcmSpIp450", realm="asterisk", nonce="41d08600", uri="sip:example.com:5060", response="2962a40d62c977128b5ac93fb724ce0c", algorithm=MD5.
Max-Forwards: 70.
Expires: 150.
Content-Length: 0.
.


U 2009/05/12 11:43:39.788371 192.168.1.24:5060 -> 172.17.1.98:1301
SIP/2.0 100 Trying.
Via: SIP/2.0/UDP 172.17.1.98:1302;branch=z9hG4bK25223f06E5D5F0D9;received=172.17.1.98.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=35A4432E-B5115021.
To: <sip:PlcmSpIp450@example.com>.
Call-ID: 9a8be69d-77847b3c-3db4df47@10.10.201.2.
CSeq: 174 REGISTER.
User-Agent: Asterisk PBX.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY.
Supported: replaces.
Content-Length: 0.
.


U 2009/05/12 11:43:39.789497 192.168.1.24:5060 -> 172.17.1.98:1301
SIP/2.0 401 Unauthorized.
Via: SIP/2.0/UDP 172.17.1.98:1302;branch=z9hG4bK25223f06E5D5F0D9;received=172.17.1.98.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=35A4432E-B5115021.
To: <sip:PlcmSpIp450@example.com>;tag=as2416f3e6.
Call-ID: 9a8be69d-77847b3c-3db4df47@10.10.201.2.
CSeq: 174 REGISTER.
User-Agent: Asterisk PBX.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY.
Supported: replaces.
WWW-Authenticate: Digest algorithm=MD5, realm="asterisk", nonce="37bbbd15", stale=true.
Content-Length: 0.
.


U 2009/05/12 11:43:39.840808 192.168.1.24:5060 -> 10.10.201.2:5060
SIP/2.0 100 Trying.
Via: SIP/2.0/UDP 10.10.201.2:5060;branch=z9hG4bK25223f06E5D5F0D9;received=10.10.201.2.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=35A4432E-B5115021.
To: <sip:PlcmSpIp450@example.com>.
Call-ID: 9a8be69d-77847b3c-3db4df47@10.10.201.2.
CSeq: 174 REGISTER.
User-Agent: Asterisk PBX.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY.
Supported: replaces.
Content-Length: 0.
.


U 2009/05/12 11:43:40.317553 192.168.1.24:5060 -> 10.10.201.2:5060
SIP/2.0 100 Trying.
Via: SIP/2.0/UDP 10.10.201.2:5060;branch=z9hG4bK25223f06E5D5F0D9;received=10.10.201.2.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=35A4432E-B5115021.
To: <sip:PlcmSpIp450@example.com>.
Call-ID: 9a8be69d-77847b3c-3db4df47@10.10.201.2.
CSeq: 174 REGISTER.
User-Agent: Asterisk PBX.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY.
Supported: replaces.
Content-Length: 0.
.


U 2009/05/12 11:43:40.320121 192.168.1.24:5060 -> 10.10.201.2:5060
SIP/2.0 401 Unauthorized.
Via: SIP/2.0/UDP 10.10.201.2:5060;branch=z9hG4bK25223f06E5D5F0D9;received=10.10.201.2.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=35A4432E-B5115021.
To: <sip:PlcmSpIp450@example.com>;tag=as2416f3e6.
Call-ID: 9a8be69d-77847b3c-3db4df47@10.10.201.2.
CSeq: 174 REGISTER.
User-Agent: Asterisk PBX.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY.
Supported: replaces.
WWW-Authenticate: Digest algorithm=MD5, realm="asterisk", nonce="37bbbd15", stale=true.
Content-Length: 0.
.


U 2009/05/12 11:43:48.620816 10.10.201.2:5060 -> 192.168.1.24:5060
REGISTER sip:example.com:5060 SIP/2.0.
Via: SIP/2.0/UDP 10.10.201.2;branch=z9hG4bK301578a3ADFF03BA.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=E038002E-B828D121.
To: <sip:PlcmSpIp450@example.com>.
CSeq: 1 REGISTER.
Call-ID: 4e48b79d-9e7ea03c-bb7ae847@10.10.201.2.
Contact: <sip:PlcmSpIp450@10.10.201.2>;methods="INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER".
User-Agent: PolycomSoundPointIP-SPIP_450-UA/3.1.2.0392_PlcmSpIp450.
Accept-Language: en.
Max-Forwards: 70.
Expires: 150.
Content-Length: 0.
.


U 2009/05/12 11:43:48.626182 172.17.1.98:1301 -> 192.168.1.24:5060
REGISTER sip:example.com:5060 SIP/2.0.
Via: SIP/2.0/UDP 172.17.1.98:1302;branch=z9hG4bK301578a3ADFF03BA.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=E038002E-B828D121.
To: <sip:PlcmSpIp450@example.com>.
CSeq: 1 REGISTER.
Call-ID: 4e48b79d-9e7ea03c-bb7ae847@10.10.201.2.
Contact: <sip:PlcmSpIp450@172.17.1.98:1302>;methods="INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER".
User-Agent: PolycomSoundPointIP-SPIP_450-UA/3.1.2.0392_PlcmSpIp450.
Accept-Language: en.
Max-Forwards: 70.
Expires: 150.
Content-Length: 0.
.


U 2009/05/12 11:43:48.641212 192.168.1.24:5060 -> 172.17.1.98:1301
SIP/2.0 100 Trying.
Via: SIP/2.0/UDP 172.17.1.98:1302;branch=z9hG4bK301578a3ADFF03BA;received=172.17.1.98.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=E038002E-B828D121.
To: <sip:PlcmSpIp450@example.com>.
Call-ID: 4e48b79d-9e7ea03c-bb7ae847@10.10.201.2.
CSeq: 1 REGISTER.
User-Agent: Asterisk PBX.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY.
Supported: replaces.
Content-Length: 0.
.


U 2009/05/12 11:43:48.642158 192.168.1.24:5060 -> 172.17.1.98:1301
SIP/2.0 401 Unauthorized.
Via: SIP/2.0/UDP 172.17.1.98:1302;branch=z9hG4bK301578a3ADFF03BA;received=172.17.1.98.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=E038002E-B828D121.
To: <sip:PlcmSpIp450@example.com>;tag=as289b3893.
Call-ID: 4e48b79d-9e7ea03c-bb7ae847@10.10.201.2.
CSeq: 1 REGISTER.
User-Agent: Asterisk PBX.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY.
Supported: replaces.
WWW-Authenticate: Digest algorithm=MD5, realm="asterisk", nonce="5d171076".
Content-Length: 0.
.


U 2009/05/12 11:43:48.646705 192.168.1.24:5060 -> 10.10.201.2:5060
SIP/2.0 100 Trying.
Via: SIP/2.0/UDP 10.10.201.2:5060;branch=z9hG4bK301578a3ADFF03BA;received=10.10.201.2.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=E038002E-B828D121.
To: <sip:PlcmSpIp450@example.com>.
Call-ID: 4e48b79d-9e7ea03c-bb7ae847@10.10.201.2.
CSeq: 1 REGISTER.
User-Agent: Asterisk PBX.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY.
Supported: replaces.
Content-Length: 0.
.


U 2009/05/12 11:43:48.649795 192.168.1.24:5060 -> 10.10.201.2:5060
Via: SIP/2.0/UDP 10.10.201.2:5060;branch=z9hG4bK25223f06E5D5F0D9;received=10.10.201.2.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=35A4432E-B5115021.
To: <sip:PlcmSpIp450@example.com>;tag=as2416f3e6.
Call-ID: 9a8be69d-77847b3c-3db4df47@10.10.201.2.
CSeq: 174 REGISTER.
User-Agent: Asterisk PBX.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY.
Supported: replaces.
WWW-Authenticate: Digest algorithm=MD5, realm="asterisk", nonce="37bbbd15", stale=true.
Content-Length: 0.
.


U 2009/05/12 11:43:48.620816 10.10.201.2:5060 -> 192.168.1.24:5060
REGISTER sip:example.com:5060 SIP/2.0.
Via: SIP/2.0/UDP 10.10.201.2;branch=z9hG4bK301578a3ADFF03BA.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=E038002E-B828D121.
To: <sip:PlcmSpIp450@example.com>.
CSeq: 1 REGISTER.
Call-ID: 4e48b79d-9e7ea03c-bb7ae847@10.10.201.2.
Contact: <sip:PlcmSpIp450@10.10.201.2>;methods="INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER".
User-Agent: PolycomSoundPointIP-SPIP_450-UA/3.1.2.0392_PlcmSpIp450.
Accept-Language: en.
Max-Forwards: 70.
Expires: 150.
Content-Length: 0.
.


U 2009/05/12 11:43:48.626182 172.17.1.98:1301 -> 192.168.1.24:5060
REGISTER sip:example.com:5060 SIP/2.0.
Via: SIP/2.0/UDP 172.17.1.98:1302;branch=z9hG4bK301578a3ADFF03BA.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=E038002E-B828D121.
To: <sip:PlcmSpIp450@example.com>.
CSeq: 1 REGISTER.
Call-ID: 4e48b79d-9e7ea03c-bb7ae847@10.10.201.2.
Contact: <sip:PlcmSpIp450@172.17.1.98:1302>;methods="INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER".
User-Agent: PolycomSoundPointIP-SPIP_450-UA/3.1.2.0392_PlcmSpIp450.
Accept-Language: en.
Max-Forwards: 70.
Expires: 150.
Content-Length: 0.
.


U 2009/05/12 11:43:48.641212 192.168.1.24:5060 -> 172.17.1.98:1301
SIP/2.0 100 Trying.
Via: SIP/2.0/UDP 172.17.1.98:1302;branch=z9hG4bK301578a3ADFF03BA;received=172.17.1.98.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=E038002E-B828D121.
To: <sip:PlcmSpIp450@example.com>.
Call-ID: 4e48b79d-9e7ea03c-bb7ae847@10.10.201.2.
CSeq: 1 REGISTER.
User-Agent: Asterisk PBX.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY.
Supported: replaces.
Content-Length: 0.
.


U 2009/05/12 11:43:48.642158 192.168.1.24:5060 -> 172.17.1.98:1301
SIP/2.0 401 Unauthorized.
Via: SIP/2.0/UDP 172.17.1.98:1302;branch=z9hG4bK301578a3ADFF03BA;received=172.17.1.98.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=E038002E-B828D121.
To: <sip:PlcmSpIp450@example.com>;tag=as289b3893.
Call-ID: 4e48b79d-9e7ea03c-bb7ae847@10.10.201.2.
CSeq: 1 REGISTER.
User-Agent: Asterisk PBX.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY.
Supported: replaces.
WWW-Authenticate: Digest algorithm=MD5, realm="asterisk", nonce="5d171076".
Content-Length: 0.
.


U 2009/05/12 11:43:48.646705 192.168.1.24:5060 -> 10.10.201.2:5060
SIP/2.0 100 Trying.
Via: SIP/2.0/UDP 10.10.201.2:5060;branch=z9hG4bK301578a3ADFF03BA;received=10.10.201.2.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=E038002E-B828D121.
To: <sip:PlcmSpIp450@example.com>.
Call-ID: 4e48b79d-9e7ea03c-bb7ae847@10.10.201.2.
CSeq: 1 REGISTER.
User-Agent: Asterisk PBX.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY.
Supported: replaces.
Content-Length: 0.
.


U 2009/05/12 11:43:48.649795 192.168.1.24:5060 -> 10.10.201.2:5060
SIP/2.0 401 Unauthorized.
Via: SIP/2.0/UDP 10.10.201.2:5060;branch=z9hG4bK301578a3ADFF03BA;received=10.10.201.2.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=E038002E-B828D121.
To: <sip:PlcmSpIp450@example.com>;tag=as289b3893.
Call-ID: 4e48b79d-9e7ea03c-bb7ae847@10.10.201.2.
CSeq: 1 REGISTER.
User-Agent: Asterisk PBX.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY.
Supported: replaces.
WWW-Authenticate: Digest algorithm=MD5, realm="asterisk", nonce="5d171076".
Content-Length: 0.
.


U 2009/05/12 11:43:48.674153 10.10.201.2:5060 -> 192.168.1.24:5060
REGISTER sip:example.com:5060 SIP/2.0.
Via: SIP/2.0/UDP 10.10.201.2;branch=z9hG4bKd8abec10BF0164AB.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=E038002E-B828D121.
To: <sip:PlcmSpIp450@example.com>.
CSeq: 2 REGISTER.
Call-ID: 4e48b79d-9e7ea03c-bb7ae847@10.10.201.2.
Contact: <sip:PlcmSpIp450@10.10.201.2>;methods="INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER".
User-Agent: PolycomSoundPointIP-SPIP_450-UA/3.1.2.0392_PlcmSpIp450.
Accept-Language: en.
Authorization: Digest username="PlcmSpIp450", realm="asterisk", nonce="5d171076", uri="sip:example.com:5060", response="008cf2b090e2041decd9b1298fc9e854", algorithm=MD5.
Max-Forwards: 70.
Expires: 150.
Content-Length: 0.
.


U 2009/05/12 11:43:48.678436 172.17.1.98:1301 -> 192.168.1.24:5060
REGISTER sip:example.com:5060 SIP/2.0.
Via: SIP/2.0/UDP 172.17.1.98:1302;branch=z9hG4bKd8abec10BF0164AB.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=E038002E-B828D121.
To: <sip:PlcmSpIp450@example.com>.
CSeq: 2 REGISTER.
Call-ID: 4e48b79d-9e7ea03c-bb7ae847@10.10.201.2.
Contact: <sip:PlcmSpIp450@172.17.1.98:1302>;methods="INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER".
User-Agent: PolycomSoundPointIP-SPIP_450-UA/3.1.2.0392_PlcmSpIp450.
Accept-Language: en.
Authorization: Digest username="PlcmSpIp450", realm="asterisk", nonce="5d171076", uri="sip:example.com:5060", response="008cf2b090e2041decd9b1298fc9e854", algorithm=MD5.
Max-Forwards: 70.
Expires: 150.
Content-Length: 0.
.


U 2009/05/12 11:43:48.694529 192.168.1.24:5060 -> 172.17.1.98:1301
SIP/2.0 100 Trying.
Via: SIP/2.0/UDP 172.17.1.98:1302;branch=z9hG4bKd8abec10BF0164AB;received=172.17.1.98.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=E038002E-B828D121.
To: <sip:PlcmSpIp450@example.com>.
Call-ID: 4e48b79d-9e7ea03c-bb7ae847@10.10.201.2.
CSeq: 2 REGISTER.
User-Agent: Asterisk PBX.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY.
Supported: replaces.
Content-Length: 0.
.


U 2009/05/12 11:43:48.697117 192.168.1.24:5060 -> 10.10.201.2:5060
SIP/2.0 100 Trying.
Via: SIP/2.0/UDP 10.10.201.2:5060;branch=z9hG4bKd8abec10BF0164AB;received=10.10.201.2.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=E038002E-B828D121.
To: <sip:PlcmSpIp450@example.com>.
.


U 2009/05/12 11:43:48.674153 10.10.201.2:5060 -> 192.168.1.24:5060
REGISTER sip:example.com:5060 SIP/2.0.
Via: SIP/2.0/UDP 10.10.201.2;branch=z9hG4bKd8abec10BF0164AB.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=E038002E-B828D121.
To: <sip:PlcmSpIp450@example.com>.
CSeq: 2 REGISTER.
Call-ID: 4e48b79d-9e7ea03c-bb7ae847@10.10.201.2.
Contact: <sip:PlcmSpIp450@10.10.201.2>;methods="INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER".
User-Agent: PolycomSoundPointIP-SPIP_450-UA/3.1.2.0392_PlcmSpIp450.
Accept-Language: en.
Authorization: Digest username="PlcmSpIp450", realm="asterisk", nonce="5d171076", uri="sip:example.com:5060", response="008cf2b090e2041decd9b1298fc9e854", algorithm=MD5.
Max-Forwards: 70.
Expires: 150.
Content-Length: 0.
.


U 2009/05/12 11:43:48.678436 172.17.1.98:1301 -> 192.168.1.24:5060
REGISTER sip:example.com:5060 SIP/2.0.
Via: SIP/2.0/UDP 172.17.1.98:1302;branch=z9hG4bKd8abec10BF0164AB.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=E038002E-B828D121.
To: <sip:PlcmSpIp450@example.com>.
CSeq: 2 REGISTER.
Call-ID: 4e48b79d-9e7ea03c-bb7ae847@10.10.201.2.
Contact: <sip:PlcmSpIp450@172.17.1.98:1302>;methods="INVITE, ACK, BYE, CANCEL, OPTIONS, INFO, MESSAGE, SUBSCRIBE, NOTIFY, PRACK, UPDATE, REFER".
User-Agent: PolycomSoundPointIP-SPIP_450-UA/3.1.2.0392_PlcmSpIp450.
Accept-Language: en.
Authorization: Digest username="PlcmSpIp450", realm="asterisk", nonce="5d171076", uri="sip:example.com:5060", response="008cf2b090e2041decd9b1298fc9e854", algorithm=MD5.
Max-Forwards: 70.
Expires: 150.
Content-Length: 0.
.


U 2009/05/12 11:43:48.694529 192.168.1.24:5060 -> 172.17.1.98:1301
SIP/2.0 100 Trying.
Via: SIP/2.0/UDP 172.17.1.98:1302;branch=z9hG4bKd8abec10BF0164AB;received=172.17.1.98.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=E038002E-B828D121.
To: <sip:PlcmSpIp450@example.com>.
Call-ID: 4e48b79d-9e7ea03c-bb7ae847@10.10.201.2.
CSeq: 2 REGISTER.
User-Agent: Asterisk PBX.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY.
Supported: replaces.
Content-Length: 0.
.


U 2009/05/12 11:43:48.697117 192.168.1.24:5060 -> 10.10.201.2:5060
SIP/2.0 100 Trying.
Via: SIP/2.0/UDP 10.10.201.2:5060;branch=z9hG4bKd8abec10BF0164AB;received=10.10.201.2.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=E038002E-B828D121.
To: <sip:PlcmSpIp450@example.com>.
Call-ID: 4e48b79d-9e7ea03c-bb7ae847@10.10.201.2.
CSeq: 2 REGISTER.
User-Agent: Asterisk PBX.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY.
Supported: replaces.
Content-Length: 0.
.


U 2009/05/12 11:43:48.706359 192.168.1.24:5060 -> 172.17.1.98:1301
OPTIONS sip:PlcmSpIp450@172.17.1.98:1302 SIP/2.0.
Via: SIP/2.0/UDP 192.168.1.24:5060;branch=z9hG4bK127275a9;rport.
From: "Unknown" <sip:Unknown@192.168.1.24>;tag=as108fdd4a.
To: <sip:PlcmSpIp450@172.17.1.98:1302>.
Contact: <sip:Unknown@192.168.1.24>.
Call-ID: 18bde3096f2943fd26be575655c16946@192.168.1.24.
CSeq: 102 OPTIONS.
User-Agent: Asterisk PBX.
Max-Forwards: 70.
Date: Tue, 12 May 2009 18:43:48 GMT.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY.
Supported: replaces.
Content-Length: 0.
.


U 2009/05/12 11:43:48.707037 192.168.1.24:5060 -> 172.17.1.98:1301
SIP/2.0 200 OK.
Via: SIP/2.0/UDP 172.17.1.98:1302;branch=z9hG4bKd8abec10BF0164AB;received=172.17.1.98.
From: "1234" <sip:PlcmSpIp450@example.com>;tag=E038002E-B828D121.
To: <sip:PlcmSpIp450@example.com>;tag=as289b3893.
Call-ID: 4e48b79d-9e7ea03c-bb7ae847@10.10.201.2.
CSeq: 2 REGISTER.
User-Agent: Asterisk PBX.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY.
Supported: replaces.
Expires: 150.
Contact: <sip:PlcmSpIp450@172.17.1.98:1302>;expires=150.
Date: Tue, 12 May 2009 18:43:48 GMT.
Content-Length: 0.
.


Comments:By: Jamuel Starkey (jamuel) 2009-06-16 16:27:02

I've created a workaround patch that seems to have addressed this issue. Instead of generating a new nonce, just send the same nonce again since it wasn't apparently received by the Polycom device.  Tested and works on Asterisk 1.4.24.1 with Polycom Soundpoint IP 501, 450, 650, and 6000.

By: Digium Subversion (svnbot) 2009-07-10 11:24:01

Repository: asterisk
Revision: 205804

U   branches/1.4/channels/chan_sip.c

------------------------------------------------------------------------
r205804 | dvossel | 2009-07-10 11:24:00 -0500 (Fri, 10 Jul 2009) | 31 lines

SIP registration auth loop caused by stale nonce

If an endpoint sends two registration requests in a very short
period of time with the same nonce, both receive 401 responses
from Asterisk, each with a different nonce (the second 401
containing the current nonce and the first one being stale).
If the endpoint responds to the first 401, it does not match
the current nonce so Asterisk sends a third 401 with a newly
generated nonce (which updates the current nonce)... Now if
the endpoint responds to the second 401, it does not match the
current nonce either and Asterisk sends a fourth 401 with a
newly generated nonce... This loop goes on and on.

There appears to be a simple fix for this.  If the nonce from
the request does not match our nonce, but is a good response
to a previous nonce, instead of sending a 401 with a newly
generated nonce, use the current one instead.  This breaks
the loop as the nonce is not updated until a response is
received. Additional logic has been added to make sure no
nonce can be responded to twice though.

(closes issue ASTERISK-14123)
Reported by: Jamuel
Patches:
     patch-bug_0015102 uploaded by Jamuel (license 809)
     nonce_sip.diff uploaded by dvossel (license 671)
Tested by: Jamuel

Review: https://reviewboard.asterisk.org/r/289/


------------------------------------------------------------------------

http://svn.digium.com/view/asterisk?view=rev&revision=205804

By: Digium Subversion (svnbot) 2009-07-10 11:42:05

Repository: asterisk
Revision: 205840

_U  trunk/
U   trunk/channels/chan_sip.c

------------------------------------------------------------------------
r205840 | dvossel | 2009-07-10 11:42:04 -0500 (Fri, 10 Jul 2009) | 37 lines

Merged revisions 205804 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
 r205804 | dvossel | 2009-07-10 11:23:59 -0500 (Fri, 10 Jul 2009) | 31 lines
 
 SIP registration auth loop caused by stale nonce
 
 If an endpoint sends two registration requests in a very short
 period of time with the same nonce, both receive 401 responses
 from Asterisk, each with a different nonce (the second 401
 containing the current nonce and the first one being stale).
 If the endpoint responds to the first 401, it does not match
 the current nonce so Asterisk sends a third 401 with a newly
 generated nonce (which updates the current nonce)... Now if
 the endpoint responds to the second 401, it does not match the
 current nonce either and Asterisk sends a fourth 401 with a
 newly generated nonce... This loop goes on and on.
 
 There appears to be a simple fix for this.  If the nonce from
 the request does not match our nonce, but is a good response
 to a previous nonce, instead of sending a 401 with a newly
 generated nonce, use the current one instead.  This breaks
 the loop as the nonce is not updated until a response is
 received. Additional logic has been added to make sure no
 nonce can be responded to twice though.
 
 (closes issue ASTERISK-14123)
 Reported by: Jamuel
 Patches:
       patch-bug_0015102 uploaded by Jamuel (license 809)
       nonce_sip.diff uploaded by dvossel (license 671)
 Tested by: Jamuel
 
 Review: https://reviewboard.asterisk.org/r/289/
........

------------------------------------------------------------------------

http://svn.digium.com/view/asterisk?view=rev&revision=205840

By: Digium Subversion (svnbot) 2009-07-10 11:47:18

Repository: asterisk
Revision: 205841

_U  branches/1.6.2/
U   branches/1.6.2/channels/chan_sip.c

------------------------------------------------------------------------
r205841 | dvossel | 2009-07-10 11:47:18 -0500 (Fri, 10 Jul 2009) | 44 lines

Merged revisions 205840 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
 r205840 | dvossel | 2009-07-10 11:42:04 -0500 (Fri, 10 Jul 2009) | 37 lines
 
 Merged revisions 205804 via svnmerge from
 https://origsvn.digium.com/svn/asterisk/branches/1.4
 
 ........
   r205804 | dvossel | 2009-07-10 11:23:59 -0500 (Fri, 10 Jul 2009) | 31 lines
   
   SIP registration auth loop caused by stale nonce
   
   If an endpoint sends two registration requests in a very short
   period of time with the same nonce, both receive 401 responses
   from Asterisk, each with a different nonce (the second 401
   containing the current nonce and the first one being stale).
   If the endpoint responds to the first 401, it does not match
   the current nonce so Asterisk sends a third 401 with a newly
   generated nonce (which updates the current nonce)... Now if
   the endpoint responds to the second 401, it does not match the
   current nonce either and Asterisk sends a fourth 401 with a
   newly generated nonce... This loop goes on and on.
   
   There appears to be a simple fix for this.  If the nonce from
   the request does not match our nonce, but is a good response
   to a previous nonce, instead of sending a 401 with a newly
   generated nonce, use the current one instead.  This breaks
   the loop as the nonce is not updated until a response is
   received. Additional logic has been added to make sure no
   nonce can be responded to twice though.
   
   (closes issue ASTERISK-14123)
   Reported by: Jamuel
   Patches:
         patch-bug_0015102 uploaded by Jamuel (license 809)
         nonce_sip.diff uploaded by dvossel (license 671)
   Tested by: Jamuel
   
   Review: https://reviewboard.asterisk.org/r/289/
 ........
................

------------------------------------------------------------------------

http://svn.digium.com/view/asterisk?view=rev&revision=205841

By: Digium Subversion (svnbot) 2009-07-10 11:48:06

Repository: asterisk
Revision: 205842

_U  branches/1.6.1/
U   branches/1.6.1/channels/chan_sip.c

------------------------------------------------------------------------
r205842 | dvossel | 2009-07-10 11:48:06 -0500 (Fri, 10 Jul 2009) | 44 lines

Merged revisions 205840 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
 r205840 | dvossel | 2009-07-10 11:42:04 -0500 (Fri, 10 Jul 2009) | 37 lines
 
 Merged revisions 205804 via svnmerge from
 https://origsvn.digium.com/svn/asterisk/branches/1.4
 
 ........
   r205804 | dvossel | 2009-07-10 11:23:59 -0500 (Fri, 10 Jul 2009) | 31 lines
   
   SIP registration auth loop caused by stale nonce
   
   If an endpoint sends two registration requests in a very short
   period of time with the same nonce, both receive 401 responses
   from Asterisk, each with a different nonce (the second 401
   containing the current nonce and the first one being stale).
   If the endpoint responds to the first 401, it does not match
   the current nonce so Asterisk sends a third 401 with a newly
   generated nonce (which updates the current nonce)... Now if
   the endpoint responds to the second 401, it does not match the
   current nonce either and Asterisk sends a fourth 401 with a
   newly generated nonce... This loop goes on and on.
   
   There appears to be a simple fix for this.  If the nonce from
   the request does not match our nonce, but is a good response
   to a previous nonce, instead of sending a 401 with a newly
   generated nonce, use the current one instead.  This breaks
   the loop as the nonce is not updated until a response is
   received. Additional logic has been added to make sure no
   nonce can be responded to twice though.
   
   (closes issue ASTERISK-14123)
   Reported by: Jamuel
   Patches:
         patch-bug_0015102 uploaded by Jamuel (license 809)
         nonce_sip.diff uploaded by dvossel (license 671)
   Tested by: Jamuel
   
   Review: https://reviewboard.asterisk.org/r/289/
 ........
................

------------------------------------------------------------------------

http://svn.digium.com/view/asterisk?view=rev&revision=205842

By: Digium Subversion (svnbot) 2009-07-10 11:48:57

Repository: asterisk
Revision: 205843

_U  branches/1.6.0/
U   branches/1.6.0/channels/chan_sip.c

------------------------------------------------------------------------
r205843 | dvossel | 2009-07-10 11:48:57 -0500 (Fri, 10 Jul 2009) | 44 lines

Merged revisions 205840 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
 r205840 | dvossel | 2009-07-10 11:42:04 -0500 (Fri, 10 Jul 2009) | 37 lines
 
 Merged revisions 205804 via svnmerge from
 https://origsvn.digium.com/svn/asterisk/branches/1.4
 
 ........
   r205804 | dvossel | 2009-07-10 11:23:59 -0500 (Fri, 10 Jul 2009) | 31 lines
   
   SIP registration auth loop caused by stale nonce
   
   If an endpoint sends two registration requests in a very short
   period of time with the same nonce, both receive 401 responses
   from Asterisk, each with a different nonce (the second 401
   containing the current nonce and the first one being stale).
   If the endpoint responds to the first 401, it does not match
   the current nonce so Asterisk sends a third 401 with a newly
   generated nonce (which updates the current nonce)... Now if
   the endpoint responds to the second 401, it does not match the
   current nonce either and Asterisk sends a fourth 401 with a
   newly generated nonce... This loop goes on and on.
   
   There appears to be a simple fix for this.  If the nonce from
   the request does not match our nonce, but is a good response
   to a previous nonce, instead of sending a 401 with a newly
   generated nonce, use the current one instead.  This breaks
   the loop as the nonce is not updated until a response is
   received. Additional logic has been added to make sure no
   nonce can be responded to twice though.
   
   (closes issue ASTERISK-14123)
   Reported by: Jamuel
   Patches:
         patch-bug_0015102 uploaded by Jamuel (license 809)
         nonce_sip.diff uploaded by dvossel (license 671)
   Tested by: Jamuel
   
   Review: https://reviewboard.asterisk.org/r/289/
 ........
................

------------------------------------------------------------------------

http://svn.digium.com/view/asterisk?view=rev&revision=205843