REGISTER response sent to the wrong por
I have a phone behind a firewall registering with the internal profile. The address in the Via header is not reachable, and the FS (correctly, IMO) sends the response back to the actual sending IP address. However, rather than sending it to the actual sending udp port, it incorrectly (again, IMO) sends it to the port advertised in the Via header. Of course the message does not get through the firewall, and the phone keeps retransmitting the REGISTER. Is this a bug, or am I missing something? And is there a setting where I can force the behavior that I want (which is: send responses to the sending address:port if the sending address:port is different than the Via header). Trace below.. recv 481 bytes from udp/[66.37.97.53]:1024 at 19:28:12.445081: ------------------------------------------------------------------------ REGISTER sip:65.162.239.204 SIP/2.0 Via: SIP/2.0/UDP 10.93.14.119:5064;branch=z9hG4bK-e73de4bf From: "1002" <sip:1002@65.162.239.204>;tag=7718f2af7f3dcc73o2 To: "1002" <sip:1002@65.162.239.204> Call-ID: 930c7e31-648ae3db@10.93.14.119 CSeq: 53622 REGISTER Max-Forwards: 70 Contact: "1002" <sip:1002@10.93.14.119:5064>;expires=3600 User-Agent: Linksys/SPA962-5.2.8(SC) Content-Length: 0 Allow: ACK, BYE, CANCEL, INFO, INVITE, NOTIFY, OPTIONS, REFER Supported: replaces ------------------------------------------------------------------------ send 671 bytes to udp/[66.37.97.53]:5064 at 19:28:12.445259: ------------------------------------------------------------------------ SIP/2.0 401 Unauthorized Via: SIP/2.0/UDP 10.93.14.119:5064;branch=z9hG4bK-e73de4bf;received=66.37.97.53 From: "1002" <sip:1002@65.162.239.204>;tag=7718f2af7f3dcc73o2 To: "1002" <sip:1002@65.162.239.204>;tag=t1m9emDKB4trF Call-ID: 930c7e31-648ae3db@10.93.14.119 CSeq: 53622 REGISTER User-Agent: FreeSWITCH-mod_sofia/1.0.head-git-25c725c 2011-06-30 18-30-24 -0500 Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, MESSAGE, UPDATE, INFO, REGISTER, REFER, NOTIFY, PUBLISH, SUBSCRIBE Supported: timer, precondition, path, replaces WWW-Authenticate: Digest realm="65.162.239.204", nonce="7e426985-2f7a-40ff-a817-6c167207853f", algorithm=MD5, qop="auth" Content-Length: 0
Is your freeswitch also behind it's own firewall? If not then you probably want to use the external.xml file as the basis for your public-facing SIP ports. Some folks have simply renamed external.xml to internal.xml and vice-versa. -MC On Fri, Jul 1, 2011 at 12:37 PM, Dave Horton <dave@dchorton.com> wrote:
I have a phone behind a firewall registering with the internal profile. The address in the Via header is not reachable, and the FS (correctly, IMO) sends the response back to the actual sending IP address. However, rather than sending it to the actual sending udp port, it incorrectly (again, IMO) sends it to the port advertised in the Via header. Of course the message does not get through the firewall, and the phone keeps retransmitting the REGISTER.
Is this a bug, or am I missing something? And is there a setting where I can force the behavior that I want (which is: send responses to the sending address:port if the sending address:port is different than the Via header).
Trace below..
recv 481 bytes from udp/[66.37.97.53]:1024 at 19:28:12.445081: ------------------------------------------------------------------------ REGISTER sip:65.162.239.204 SIP/2.0 Via: SIP/2.0/UDP 10.93.14.119:5064;branch=z9hG4bK-e73de4bf From: "1002" <sip:1002@65.162.239.204>;tag=7718f2af7f3dcc73o2 To: "1002" <sip:1002@65.162.239.204> Call-ID: 930c7e31-648ae3db@10.93.14.119 CSeq: 53622 REGISTER Max-Forwards: 70 Contact: "1002" <sip:1002@10.93.14.119:5064>;expires=3600 User-Agent: Linksys/SPA962-5.2.8(SC) Content-Length: 0 Allow: ACK, BYE, CANCEL, INFO, INVITE, NOTIFY, OPTIONS, REFER Supported: replaces
------------------------------------------------------------------------ send 671 bytes to udp/[66.37.97.53]:5064 at 19:28:12.445259: ------------------------------------------------------------------------ SIP/2.0 401 Unauthorized Via: SIP/2.0/UDP 10.93.14.119:5064 ;branch=z9hG4bK-e73de4bf;received=66.37.97.53 From: "1002" <sip:1002@65.162.239.204>;tag=7718f2af7f3dcc73o2 To: "1002" <sip:1002@65.162.239.204>;tag=t1m9emDKB4trF Call-ID: 930c7e31-648ae3db@10.93.14.119 CSeq: 53622 REGISTER User-Agent: FreeSWITCH-mod_sofia/1.0.head-git-25c725c 2011-06-30 18-30-24 -0500 Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, MESSAGE, UPDATE, INFO, REGISTER, REFER, NOTIFY, PUBLISH, SUBSCRIBE Supported: timer, precondition, path, replaces WWW-Authenticate: Digest realm="65.162.239.204", nonce="7e426985-2f7a-40ff-a817-6c167207853f", algorithm=MD5, qop="auth" Content-Length: 0
_______________________________________________ Join us at ClueCon 2011, Aug 9-11, Chicago http://www.cluecon.com 877-7-4ACLUE
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
You should set the following parameter in your internal.xml profile: <param name="NDLB-force-rport" value="true"/> In this case FS will send responses directly to the port from which it received REGISTER and other SIP messages. Regards, Vitalie 2011/7/1 Dave Horton <dave@dchorton.com>
I have a phone behind a firewall registering with the internal profile. The address in the Via header is not reachable, and the FS (correctly, IMO) sends the response back to the actual sending IP address. However, rather than sending it to the actual sending udp port, it incorrectly (again, IMO) sends it to the port advertised in the Via header. Of course the message does not get through the firewall, and the phone keeps retransmitting the REGISTER.
Is this a bug, or am I missing something? And is there a setting where I can force the behavior that I want (which is: send responses to the sending address:port if the sending address:port is different than the Via header).
Trace below..
recv 481 bytes from udp/[66.37.97.53]:1024 at 19:28:12.445081: ------------------------------------------------------------------------ REGISTER sip:65.162.239.204 SIP/2.0 Via: SIP/2.0/UDP 10.93.14.119:5064;branch=z9hG4bK-e73de4bf From: "1002" <sip:1002@65.162.239.204>;tag=7718f2af7f3dcc73o2 To: "1002" <sip:1002@65.162.239.204> Call-ID: 930c7e31-648ae3db@10.93.14.119 CSeq: 53622 REGISTER Max-Forwards: 70 Contact: "1002" <sip:1002@10.93.14.119:5064>;expires=3600 User-Agent: Linksys/SPA962-5.2.8(SC) Content-Length: 0 Allow: ACK, BYE, CANCEL, INFO, INVITE, NOTIFY, OPTIONS, REFER Supported: replaces
------------------------------------------------------------------------ send 671 bytes to udp/[66.37.97.53]:5064 at 19:28:12.445259: ------------------------------------------------------------------------ SIP/2.0 401 Unauthorized Via: SIP/2.0/UDP 10.93.14.119:5064 ;branch=z9hG4bK-e73de4bf;received=66.37.97.53 From: "1002" <sip:1002@65.162.239.204>;tag=7718f2af7f3dcc73o2 To: "1002" <sip:1002@65.162.239.204>;tag=t1m9emDKB4trF Call-ID: 930c7e31-648ae3db@10.93.14.119 CSeq: 53622 REGISTER User-Agent: FreeSWITCH-mod_sofia/1.0.head-git-25c725c 2011-06-30 18-30-24 -0500 Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, MESSAGE, UPDATE, INFO, REGISTER, REFER, NOTIFY, PUBLISH, SUBSCRIBE Supported: timer, precondition, path, replaces WWW-Authenticate: Digest realm="65.162.239.204", nonce="7e426985-2f7a-40ff-a817-6c167207853f", algorithm=MD5, qop="auth" Content-Length: 0
_______________________________________________ Join us at ClueCon 2011, Aug 9-11, Chicago http://www.cluecon.com 877-7-4ACLUE
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
Dave, Vitalie already gave you the fix on the FS side, but you can probably fix that on the phone. I don't know the SPA962, but if the software is anywhere close to the SPA2102's, you may be able to configure the phone to send the rport paramater in the Via field. David Ponzone Direction Technique email: david.ponzone@ipeva.fr tel: 01 74 03 18 97 gsm: 06 66 98 76 34 Service Client IPeva tel: 0811 46 26 26 www.ipeva.fr - www.ipeva-studio.com Ce message et toutes les pièces jointes sont confidentiels et établis à l'intention exclusive de ses destinataires. Toute utilisation ou diffusion non autorisée est interdite. Tout message électronique est susceptible d'altération. IPeva décline toute responsabilité au titre de ce message s'il a été altéré, déformé ou falsifié. Si vous n'êtes pas destinataire de ce message, merci de le détruire immédiatement et d'avertir l'expéditeur. Le 01/07/2011 à 21:37, Dave Horton a écrit :
I have a phone behind a firewall registering with the internal profile. The address in the Via header is not reachable, and the FS (correctly, IMO) sends the response back to the actual sending IP address. However, rather than sending it to the actual sending udp port, it incorrectly (again, IMO) sends it to the port advertised in the Via header. Of course the message does not get through the firewall, and the phone keeps retransmitting the REGISTER.
Is this a bug, or am I missing something? And is there a setting where I can force the behavior that I want (which is: send responses to the sending address:port if the sending address:port is different than the Via header).
Trace below..
recv 481 bytes from udp/[66.37.97.53]:1024 at 19:28:12.445081: ------------------------------------------------------------------------ REGISTER sip:65.162.239.204 SIP/2.0 Via: SIP/2.0/UDP 10.93.14.119:5064;branch=z9hG4bK-e73de4bf From: "1002" <sip:1002@65.162.239.204>;tag=7718f2af7f3dcc73o2 To: "1002" <sip:1002@65.162.239.204> Call-ID: 930c7e31-648ae3db@10.93.14.119 CSeq: 53622 REGISTER Max-Forwards: 70 Contact: "1002" <sip:1002@10.93.14.119:5064>;expires=3600 User-Agent: Linksys/SPA962-5.2.8(SC) Content-Length: 0 Allow: ACK, BYE, CANCEL, INFO, INVITE, NOTIFY, OPTIONS, REFER Supported: replaces
------------------------------------------------------------------------ send 671 bytes to udp/[66.37.97.53]:5064 at 19:28:12.445259: ------------------------------------------------------------------------ SIP/2.0 401 Unauthorized Via: SIP/2.0/UDP 10.93.14.119:5064;branch=z9hG4bK-e73de4bf;received=66.37.97.53 From: "1002" <sip:1002@65.162.239.204>;tag=7718f2af7f3dcc73o2 To: "1002" <sip:1002@65.162.239.204>;tag=t1m9emDKB4trF Call-ID: 930c7e31-648ae3db@10.93.14.119 CSeq: 53622 REGISTER User-Agent: FreeSWITCH-mod_sofia/1.0.head-git-25c725c 2011-06-30 18-30-24 -0500 Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, MESSAGE, UPDATE, INFO, REGISTER, REFER, NOTIFY, PUBLISH, SUBSCRIBE Supported: timer, precondition, path, replaces WWW-Authenticate: Digest realm="65.162.239.204", nonce="7e426985-2f7a-40ff-a817-6c167207853f", algorithm=MD5, qop="auth" Content-Length: 0
_______________________________________________ Join us at ClueCon 2011, Aug 9-11, Chicago http://www.cluecon.com 877-7-4ACLUE
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
participants (4)
-
Dave Horton
-
David Ponzone
-
Michael Collins
-
Vitalie Colosov