I clarify the same,
UA1 NAT1 REGISTRAR ----------------REG1-----------------> src ip: 10.0.0.1 port 5060 contact:10.0.0.1:5060 ----------------REG2-----------------> src ip: 59.162.252.82 port 8888 contact: 10.0.0.1:5060 In the above scenario, UA1 is behind the NAT and 'src ip' is referring as Network Layer address. When REGISTER passes through NAT (L3), contact remains the same. Due to symmetric response implementation on REGISTRAR side, all the responses are sent back only to '59.162.252.82:8888'. UA2 NAT2 REGISTRAR -----------REG3----------> src ip: 10.0.0.1 port 5060 contact:10.0.0.1:5060 ----------------REG4-----------------> src ip: 199.100.100.100 port 9999 contact: 10.0.0.1:5060 Now, in above scenario which is different LAN network from scenerio1, UA2 has assigned the same IP:Port as UA1. UA2 sends the REG request using same SIP-Id/ Authentication credentials as used by UA1. REG message passes through NAT (L3) and contact remains the same. Now, REGISTRAR has two contacts binding for this user. When REGISTRAR sends 200 OK for REGISTER message to UA2, this 200 OK will include both the bindings of user and both the contact bindings will have same value viz '10.0.0.1:5060'. Now how the UA2 would identify its own binding to get the expiry timer allocated by registrar to UA2. --Vivek _____ From: Rockson Li (zhengyli) [mailto:[EMAIL PROTECTED] Sent: Friday, June 27, 2008 3:42 PM To: Vivek Batra; Scott Lawrence; sip-implementors@lists.cs.columbia.edu Subject: RE: [Sip-implementors] SIP client registers from multiple locationsand all location are behind the NAT Vivek, I am a little bit confused on your issue. you mean, UA1 UA2 NAT REGISTRA ----------------REG1-----------------> src ip: 10.0.0.1 port 8888 contact:10.0.0.1:5060 ----------------REG2-----------------> src ip: 192.168.1.1 port 5060 contact: ?? -----------REG3----------> src ip: 10.0.0.2 port 9999 contact:10.0.0.2:5060 ----------------REG4-----------------> src ip: 192.168.1.1 port 5060 contact: ?? what are the contact header url in REG2 and REG4 , retain their orignal value or all are 192.168.1.1:5060 ?? -Rockson _____ From: Vivek Batra [mailto:[EMAIL PROTECTED] Sent: Friday, June 27, 2008 4:44 PM To: Rockson Li (zhengyli); 'Scott Lawrence'; sip-implementors@lists.cs.columbia.edu Subject: RE: [Sip-implementors] SIP client registers from multiple locationsand all location are behind the NAT Dear Rockson/ Scott, Symmetric response is not an issue since SIP server is taking care of the same and my UA is getting 200 OK back. Even further incoming request would also be coming at the public IP of NAT router (behind which UA is located). This is taken care by SIP server only. Only problem was that when SIP server has multiple bindings for same UA. These bindings are used by SIP server only at the time of sending 200 OK against REGISTER request and in Request-URI for further incoming request. I think it is better idea to put the randomly generated value in contact at the time of sending REGISTER request so that if 200 OK includes the multiple binding for this UA, UA can identify its own binding with the help of tag send by him in REGISTER. Adding domain/ hostname in contact instead IP address shall again put the UA in dilemma when all UA's use the same hostname while registering from multiple location (same as in case of IP address even private). By considering the same, adding randomly generated tag should be better option!! Best Regards, Vivek Batra -----Original Message----- From: Rockson Li (zhengyli) [mailto:[EMAIL PROTECTED] Sent: Friday, June 27, 2008 9:14 AM To: Scott Lawrence; Vivek Batra; sip-implementors@lists.cs.columbia.edu Subject: RE: [Sip-implementors] SIP client registers from multiple locationsand all location are behind the NAT Comments inline. -Rockson -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Scott Lawrence Sent: Friday, June 27, 2008 12:41 AM To: Vivek Batra Cc: sip-implementors@lists.cs.columbia.edu Subject: Re: [Sip-implementors] SIP client registers from multiple locationsand all location are behind the NAT On Thu, 2008-06-26 at 15:29 +0530, Vivek Batra wrote: > Please consider the following: > * SIP client send the REGISTER message to Registrar server from > multiple locations. Q-value is not send by SIP client in its REGISTER > request. > * Registrar server sends the 200 OK to the SIP client with all the > binding for this user along with expiry timer for each binding. > * SIP client selects its own binding to get expiry timer allocated by > Registrar server. > * But if all the SIP clients are located behind the NAT (in different > LAN networks) and same IP address is assigned to each SIP client > suppose 192.168.1.1, all SIP client will send the IP:Port viz 192.168.1.1:5060. [Rockson] I think the 192.168.1.1:5060 is just the source address in IP level, which does not relate to SIP contact url. > * Now when 200 OK is send by Registrar server to SIP client, all the > bindings in 200 OK includes the same IP address. Now, what should be > the implementation in SIP client to select its own binding since all > the bindings shall have same IP:Port. The UA should construct its Contact with some unique value in it so that it can recognize it among the choices. Stick a url parameter on it that's randomly chosen or something; don't rely on the IP address to be the identifier. [Rockson] if the Contact is not changed , which is still what your sip client put into, the incoming request would go to this address, which is probably not feasible, since this a private ip addr, this is why Scott suggest to use domain not ip addr. However, things might not so simple, NAT is more complex than you thought. You may need Symmetric Response RFC3581 and draft-ietf-sip-outbound -- Scott Lawrence tel:+1.781.229.0533;ext=162 or sip:[EMAIL PROTECTED] sipXecs project coordinator - SIPfoundry http://www.sipfoundry.org/sipXecs CTO, Voice Solutions - Bluesocket Inc. http://www.bluesocket.com/ http://www.pingtel.com/ _______________________________________________ Sip-implementors mailing list Sip-implementors@lists.cs.columbia.edu https://lists.cs.columbia.edu/cucslists/listinfo/sip-implementors Email Scanned for Virus & Dangerous Content by : www.CleanMailGateway.com Email Scanned for Virus & Dangerous Content by : www.CleanMailGateway.com _______________________________________________ Sip-implementors mailing list Sip-implementors@lists.cs.columbia.edu https://lists.cs.columbia.edu/cucslists/listinfo/sip-implementors