<html><head><style type='text/css'>p { margin: 0; }</style></head><body><div style='font-family: Times New Roman; font-size: 12pt; color: #000000'>Confusion abounds here - sorry if I am being obtuse...<br><br>A few points on all this - <br><br>1 - sipproxd is NOT installed on the firewall<br><br>2 - I am confused by the source port randomization issue.&nbsp; I think that what pfsense does by default is randomize the source port translations, rather than using the same source port translations for all connections from an internal host.&nbsp; This is completely different from the issue of telling pfsense to not change the source port at all - i.e. create a Static Port NAT.<br><br>3 - One of the things that I find most confusing about what I saw/see in the packet captures is that I EXPECTED to see non-SIP ports as the source port for the registration requests.&nbsp; What we commonly call NAT is more accurately described as PAT (Port Address Translation) - it functions by translating the source port of requests in and out of the firewall.&nbsp; It is one of the FEW things that I like about Cisco is that they more accurately use the terms NAT and PAT.<br><br>4 - So, that brings me back to why am I NOT seeing random source ports - why is Freeswitch NOT tagging my connection from pfsense as being NAT'd?&nbsp; <br><br>Dave<br><br>&nbsp; <br><br><div><div><img src="http://www.spigotnetworks.com/SpigotLogo-tiny.jpg"><font style="font-family: Arial,Helvetica,sans-serif;" size="2">To start receiving Spigot Network's once a month newsletter filled with interesting technology news and great offers click <span class="Object" id="OBJ_PREFIX_DWT1415"><a href="http://www.spigotnetworks.com/lists/?p=subscribe&amp;id=1" target="_blank">SUBSCRIBE</a></span></font></div></div><br><br>----- Original Message -----<br>From: "Tony Graziano" &lt;tgraziano@myitdepartment.net&gt;<br>To: "FreeSWITCH Users Help" &lt;freeswitch-users@lists.freeswitch.org&gt;<br>Sent: Sunday, August 29, 2010 7:11:26 AM GMT -06:00 US/Canada Central<br>Subject: Re: [Freeswitch-users] NAT traversal questions - (long)...<br><br>Yeah, the sipxroxd is in the installed packages on his build. Remove<br>the intsalled package and make sure the default rule for outgoing<br>traffic is set for manual/static nat, not automatic.<br><br>http://blog.myitdepartment.net/?p=37<br><br>On Sun, Aug 29, 2010 at 7:40 AM, Tony Graziano<br>&lt;tgraziano@myitdepartment.net&gt; wrote:<br>&gt; Ipcop has a similar setting to pfsense. You probably missed it.<br>&gt;<br>&gt; MOST FIREWALLS do not use static port NAT. The default rules for<br>&gt; pfsense (and packages) for port 5060 should be removed.<br>&gt;<br>&gt; On your outbound rule for your LAN static port nat needs to be<br>&gt; enabled. Once you do that recreate the nat rules AND remove the<br>&gt; siproxd package by default.<br>&gt;<br>&gt; This is really a pfsense firewall question, it is clear static port<br>&gt; was not enabled so the source port was re-written because that is what<br>&gt; MOST firewalls do by default.<br>&gt;<br>&gt; On 8/29/10, Dave &nbsp;Redmore &lt;dave.redmore@spigotsystems.com&gt; wrote:<br>&gt;&gt; Hello All,<br>&gt;&gt;<br>&gt;&gt; I ran into an issue today that has burned up most of my day troubleshooting.<br>&gt;&gt; I have resolved the problem, but would really like to understand what caused<br>&gt;&gt; it, or some of the internal Freeswitch plumbing that is at play so that I<br>&gt;&gt; can learn something from all of this time I have invested.<br>&gt;&gt;<br>&gt;&gt; I have a Freeswitch server running that acts as a proxy to an account with<br>&gt;&gt; an ITSP for doing T38 faxing. The Freeswitch server has a public IP address<br>&gt;&gt; - there are four "users" who register simple FXS ATAs to my server and it<br>&gt;&gt; then proxies to the ITSP using the "proxy_media" functionality. It has been<br>&gt;&gt; working very well for the last 6 months or so. I have never had to deal with<br>&gt;&gt; any NAT traversal issues - I just point the ATA to the IP to register and<br>&gt;&gt; everything is great.<br>&gt;&gt;<br>&gt;&gt; Here is what the four users "looked" like -<br>&gt;&gt;<br>&gt;&gt; User1 : Grandstream HT-287 -&gt; DD-WRT Router (NAT) -&gt; Internet -&gt; Freeswitch<br>&gt;&gt; Proxy<br>&gt;&gt; User2 : Grandstream HT-503 -&gt; DD-WRT Router (NAT) -&gt; Internet -&gt; Freeswitch<br>&gt;&gt; Proxy<br>&gt;&gt; User3 : Grandstream HT-502 -&gt; Comcast/SMC Router (NAT) -&gt; Internet -&gt;<br>&gt;&gt; Freeswitch Proxy<br>&gt;&gt; User4 : Grandstream HT-287 -&gt; IPCOP 1.4.11 (NAT) -&gt; Comcast Gateway -&gt;<br>&gt;&gt; Freeswitch Proxy<br>&gt;&gt;<br>&gt;&gt; (User4 is my office, so the IPCOP firewall and the Freeswitch Proxy sit on<br>&gt;&gt; the same Comcast Gateway)<br>&gt;&gt;<br>&gt;&gt; As I said, this all worked perfectly without any need to "fiddle" with<br>&gt;&gt; anything on any firewalls - worked right out of the box.<br>&gt;&gt;<br>&gt;&gt; So, today I changed out my IPCOP firewall for a pfsense firewall - and my<br>&gt;&gt; HT-287 would no longer register.<br>&gt;&gt;<br>&gt;&gt; After much head-scratching, packet captures, etc. I found that I needed to<br>&gt;&gt; set up a Static Port NAT for the port the HT-287 was using (5062) in order<br>&gt;&gt; to get this to work.<br>&gt;&gt;<br>&gt;&gt; So, I see WHAT is happening, but I really want to know WHY it is happening.<br>&gt;&gt;<br>&gt;&gt; Here are the gory details:<br>&gt;&gt;<br>&gt;&gt; The sofia status of the profile looks like this - when the I have the Static<br>&gt;&gt; Port NAT in place (details changed for security):<br>&gt;&gt;<br>&gt;&gt; _______________________________________________________________<br>&gt;&gt; Call-ID: 0e551b3c694a793c@192.168.1.137<br>&gt;&gt; User: 8885554525@173.11.22.111<br>&gt;&gt; Contact: "user"<br>&gt;&gt; &lt;sip:8885554525@192.168.1.137;fs_nat=yes;fs_path=sip%3A8885554525%40173.22.22.55%3A5060&gt;<br>&gt;&gt; Agent: Grandstream HT287 1.1.0.45 DevId 000b821203c5<br>&gt;&gt; Status: Registered(UDP-NAT)(unknown) EXP(2010-08-29 01:17:03)<br>&gt;&gt; Host: 173-11-22-111-illinois.hfc.comcastbusiness.net<br>&gt;&gt; IP: 173.22.22.55<br>&gt;&gt; Port: 5060<br>&gt;&gt; Auth-User: 8885554525<br>&gt;&gt; Auth-Realm: 173.11.22.111<br>&gt;&gt; MWI-Account: 8885554525@173.11.22.111<br>&gt;&gt;<br>&gt;&gt; Call-ID: 1716488819-5062-1@192.168.7.150<br>&gt;&gt; User: 8885554544@173.11.22.111<br>&gt;&gt; Contact: "user" &lt;sip:8885554544@192.168.7.150:5062;user=phone;fs_nat=yes;<br>&gt;&gt; fs_path=sip%3A8885554544%4098.255.0.11%3A5062%3Buser%3Dphone&gt;<br>&gt;&gt; Agent: Grandstream HT-502 V1.1B 1.0.1.63<br>&gt;&gt; Status: Registered(UDP-NAT)(unknown) EXP(2010-08-29 01:48:35)<br>&gt;&gt; Host: 173-11-22-111-illinois.hfc.comcastbusiness.net<br>&gt;&gt; IP: 98.255.0.11<br>&gt;&gt; Port: 5062<br>&gt;&gt; Auth-User: 8885554544<br>&gt;&gt; Auth-Realm: 173.11.22.111<br>&gt;&gt; MWI-Account: 8885554544@173.11.22.111<br>&gt;&gt;<br>&gt;&gt; Call-ID: 090ee80e1a0ec9ed@10.8.11.149<br>&gt;&gt; User: 8885554549@173.11.22.111<br>&gt;&gt; Contact: "user" &lt;sip:8885554549@10.8.11.149:5062&gt;<br>&gt;&gt; Agent: Grandstream HT287 1.1.0.45 DevId 000b82127390<br>&gt;&gt; Status: Registered(UDP)(unknown) EXP(2010-08-29 02:00:42)<br>&gt;&gt; Host: 173-11-22-111-illinois.hfc.comcastbusiness.net<br>&gt;&gt; IP: 173.11.22.99<br>&gt;&gt; Port: 5062<br>&gt;&gt; Auth-User: 8885554549<br>&gt;&gt; Auth-Realm: 173.11.22.111<br>&gt;&gt; MWI-Account: 8885554549@173.11.22.111<br>&gt;&gt;<br>&gt;&gt; Call-ID: 1035241259-5060-1@10.1.10.150<br>&gt;&gt; User: 8885554547@173.11.22.111<br>&gt;&gt; Contact: "user" &lt;sip:8885554547@10.1.10.150:5060;user=phone;fs_nat=yes;fs<br>&gt;&gt; _path=sip%3A8885554547%4098.222.55.100%3A5060%3Buser%3Dphone&gt;<br>&gt;&gt; Agent: Grandstream HT-503 V1.1B 1.0.1.63<br>&gt;&gt; Status: Registered(UDP-NAT)(unknown) EXP(2010-08-29 00:15:09)<br>&gt;&gt; Host: 173-11-22-111-illinois.hfc.comcastbusiness.net<br>&gt;&gt; IP: 98.222.55.100<br>&gt;&gt; Port: 5060<br>&gt;&gt; Auth-User: 8885554547<br>&gt;&gt; Auth-Realm: 173.11.22.111<br>&gt;&gt; MWI-Account: 8885554547@173.11.22.111<br>&gt;&gt; ___________________________________________________________<br>&gt;&gt;<br>&gt;&gt; The "User4" account is in red. The "Contact" field is substantially<br>&gt;&gt; different and the "Status" indicates "Registered (UDP)", rather than<br>&gt;&gt; "Registered (UDP-NAT)" as the others.<br>&gt;&gt;<br>&gt;&gt; When I do a packet capture on the external NIC interface (eth0) - I see the<br>&gt;&gt; following when the HT-287 tries to register and the Static Port NAT is NOT<br>&gt;&gt; in place:<br>&gt;&gt;<br>&gt;&gt; ___________________________________________________________________<br>&gt;&gt; Internet Protocol, Src: 173.11.22.99 (173.11.22.99), Dst: 173.11.22.111<br>&gt;&gt; (173.11.22.111)<br>&gt;&gt; User Datagram Protocol, Src Port: 11521 (11521), Dst Port: 5090 (5090)<br>&gt;&gt; Session Initiation Protocol<br>&gt;&gt; Request-Line: REGISTER sip:173.11.22.111:5090 SIP/2.0<br>&gt;&gt; Method: REGISTER<br>&gt;&gt; Request-URI: sip:173.11.22.111:5090<br>&gt;&gt; Request-URI Host Part: 173.11.22.111<br>&gt;&gt; Request-URI Host Port: 5090<br>&gt;&gt; Message Header<br>&gt;&gt; Via: SIP/2.0/UDP 10.8.11.149:5062;branch=z9hG4bKda48f838c8689e41<br>&gt;&gt; Transport: UDP<br>&gt;&gt; Sent-by Address: 10.8.11.149<br>&gt;&gt; Sent-by port: 5062<br>&gt;&gt; Branch: z9hG4bKda48f838c8689e41<br>&gt;&gt; From: &lt;sip:8885554549@173.11.22.111:5090&gt;;tag=c8a0d452edc5ac4b<br>&gt;&gt; SIP from address: sip:8885554549@173.11.22.111:5090<br>&gt;&gt; SIP tag: c8a0d452edc5ac4b<br>&gt;&gt; To: &lt;sip:8885554549@173.11.22.111:5090&gt;<br>&gt;&gt; Contact: &lt;sip:88855564549@10.8.11.149:5062&gt;<br>&gt;&gt; Contact Binding: &lt;sip:8885554549@10.8.11.149:5062&gt;<br>&gt;&gt; Supported: replaces, timer<br>&gt;&gt; Call-ID: aa77d777bae71be6@10.8.11.149<br>&gt;&gt; CSeq: 100 REGISTER<br>&gt;&gt; Sequence Number: 100<br>&gt;&gt; Method: REGISTER<br>&gt;&gt; Expires: 3600<br>&gt;&gt; User-Agent: Grandstream HT287 1.1.0.45 DevId 000b82127390<br>&gt;&gt; Max-Forwards: 70<br>&gt;&gt; Allow: INVITE,ACK,CANCEL,BYE,NOTIFY,REFER,OPTIONS,INFO,SUBSCRIBE,UPDATE<br>&gt;&gt; Content-Length: 0<br>&gt;&gt; _______________________________________________________________<br>&gt;&gt;<br>&gt;&gt; When Freeswitch replies back with a "401 Unauthorized" - asking for further<br>&gt;&gt; Auth - it replies back to port 5062 - so the packet never comes back<br>&gt;&gt; (pfsense is looking for a packet back on port 11521 in this case).<br>&gt;&gt;<br>&gt;&gt; If I put the Static Port NAT in place - all is well, because the "Source"<br>&gt;&gt; port shows as "5062" - the rest of the packet looks pretty much the same.<br>&gt;&gt;<br>&gt;&gt; Now, here is a packet coming from one of the other Users - this one comes<br>&gt;&gt; through a DD-WRT router - here we see that the Source Port is 5060 :<br>&gt;&gt;<br>&gt;&gt; _________________________________________________________________<br>&gt;&gt; Internet Protocol, Src: 173.22.22.55 (173.22.22.55), Dst: 173.11.22.111<br>&gt;&gt; (173.11.22.111)<br>&gt;&gt; User Datagram Protocol, Src Port: sip (5060), Dst Port: 5090 (5090)<br>&gt;&gt; Session Initiation Protocol<br>&gt;&gt; Request-Line: REGISTER sip:173.11.22.111:5090 SIP/2.0<br>&gt;&gt; Method: REGISTER<br>&gt;&gt; Request-URI: sip:173.11.22.111:5090<br>&gt;&gt; [Resent Packet: False]<br>&gt;&gt; Message Header<br>&gt;&gt; Via: SIP/2.0/UDP 192.168.1.137;branch=z9hG4bK665bc67a1c64292b<br>&gt;&gt; Transport: UDP<br>&gt;&gt; Sent-by Address: 192.168.1.137<br>&gt;&gt; Branch: z9hG4bK665bc67a1c64292b<br>&gt;&gt; From: "fax" &lt;sip:8885554525@173.11.22.111:5090&gt;;tag=8dc68b35111c4261<br>&gt;&gt; To: &lt;sip:8156564525@173.15.28.101:5090&gt;<br>&gt;&gt; Contact: &lt;sip:8885554525@192.168.1.137&gt;<br>&gt;&gt; Contact Binding: &lt;sip:8885554525@192.168.1.137&gt;<br>&gt;&gt; Call-ID: 0e551b3c694a793c@192.168.1.137<br>&gt;&gt; CSeq: 503 REGISTER<br>&gt;&gt; Sequence Number: 503<br>&gt;&gt; Method: REGISTER<br>&gt;&gt; Expires: 3600<br>&gt;&gt; User-Agent: Grandstream HT287 1.1.0.45 DevId 000b821203c5<br>&gt;&gt; Max-Forwards: 70<br>&gt;&gt; Allow: INVITE,ACK,CANCEL,BYE,NOTIFY,REFER,OPTIONS,INFO,SUBSCRIBE,UPDATE<br>&gt;&gt; Content-Length: 0<br>&gt;&gt; ______________________________________________________________________<br>&gt;&gt;<br>&gt;&gt; Here is one more packet coming from a Comcast/SMC Router - again, the source<br>&gt;&gt; port is correct:<br>&gt;&gt;<br>&gt;&gt; ______________________________________________________________________<br>&gt;&gt; Internet Protocol, Src: 98.244.55.100 (98.244.55.100), Dst: 173.11.22.111<br>&gt;&gt; (173.11.22.111)<br>&gt;&gt; User Datagram Protocol, Src Port: sip (5060), Dst Port: 5090 (5090)<br>&gt;&gt; Session Initiation Protocol<br>&gt;&gt; Request-Line: REGISTER sip:173.11.22.111:5090 SIP/2.0<br>&gt;&gt; Message Header<br>&gt;&gt; Via: SIP/2.0/UDP 10.1.10.150:5060;branch=z9hG4bK58981045;rport<br>&gt;&gt; Transport: UDP<br>&gt;&gt; Sent-by Address: 10.1.10.150<br>&gt;&gt; Sent-by port: 5060<br>&gt;&gt; Branch: z9hG4bK58981045<br>&gt;&gt; RPort: rport<br>&gt;&gt; From: &lt;sip:8885554547@173.11.22.111:5090;user=phone&gt;;tag=138706651<br>&gt;&gt; To: &lt;sip:8885554547@173.11.22.111:5090;user=phone&gt;<br>&gt;&gt; Call-ID: 1035241259-5060-1@10.1.10.150<br>&gt;&gt; CSeq: 79875 REGISTER<br>&gt;&gt; Sequence Number: 79875<br>&gt;&gt; Method: REGISTER<br>&gt;&gt; Contact:<br>&gt;&gt; &lt;sip:8885554547@10.1.10.150:5060;user=phone&gt;;reg-id=1;+sip.instance="&lt;urn:uuid:00000000-0000-1000-8000-000B821F9A84&gt;"<br>&gt;&gt; Contact Binding:<br>&gt;&gt; &lt;sip:8885554547@10.1.10.150:5060;user=phone&gt;;reg-id=1;+sip.instance="&lt;urn:uuid:00000000-0000-1000-8000-000B821F9A84&gt;"<br>&gt;&gt; Max-Forwards: 70<br>&gt;&gt; User-Agent: Grandstream HT-503 V1.1B 1.0.1.63<br>&gt;&gt; Supported: path<br>&gt;&gt; Expires: 300<br>&gt;&gt; Allow: INVITE, ACK, OPTIONS, CANCEL, BYE, SUBSCRIBE, NOTIFY, INFO, REFER,<br>&gt;&gt; UPDATE<br>&gt;&gt; Content-Length: 0<br>&gt;&gt; ___________________________________________________________<br>&gt;&gt;<br>&gt;&gt; So, here are my questions:<br>&gt;&gt;<br>&gt;&gt; - Why is the Sofia Status so much different for the registration coming<br>&gt;&gt; through the pfSense firewall. It looks like it doesn't get tagged as being<br>&gt;&gt; NAT'd and the "Contact" info is much less.<br>&gt;&gt;<br>&gt;&gt; - Do most modern routers automatically Static Port NAT any SIP traffic? Both<br>&gt;&gt; DD-WRT and SMC routers appear to be doing this - and not just on a simple<br>&gt;&gt; Port bases (UDP 5060 only), because one of these examples is on 5062. Are<br>&gt;&gt; these "SIP aware" firewalls that are doing this automatically, as the IPCOP<br>&gt;&gt; did before?<br>&gt;&gt;<br>&gt;&gt; - Is the extra "Contact" data in the last packet example different because<br>&gt;&gt; it is a different UA (HT-503 rather than an HT-287)<br>&gt;&gt;<br>&gt;&gt; - Is Freeswitch not flagging the registration from my office (User4) as<br>&gt;&gt; being NAT'd because it is coming in on the same subnet as the interface<br>&gt;&gt; Freeswitch received the packet on (Freeswitch is at 173.11.22.111 and<br>&gt;&gt; pfsense is at 173.11.22.99)?<br>&gt;&gt;<br>&gt;&gt; Sorry for this terribly long posting - I'm just very curious to understand<br>&gt;&gt; what is going on here, now that I have collected all this information.<br>&gt;&gt;<br>&gt;&gt; Thanks,<br>&gt;&gt;<br>&gt;&gt; Dave<br>&gt;&gt;<br>&gt;&gt;<br>&gt;&gt;<br>&gt;<br>&gt; --<br>&gt; Sent from my mobile device<br>&gt;<br>&gt; ======================<br>&gt; Tony Graziano, Manager<br>&gt; Telephone: 434.984.8430<br>&gt; sip: tgraziano@voice.myitdepartment.net<br>&gt; Fax: 434.984.8431<br>&gt;<br>&gt; Email: tgraziano@myitdepartment.net<br>&gt;<br>&gt; LAN/Telephony/Security and Control Systems Helpdesk:<br>&gt; Telephone: 434.984.8426<br>&gt; sip: helpdesk@voice.myitdepartment.net<br>&gt; Fax: 434.984.8427<br>&gt;<br>&gt; Helpdesk Contract Customers:<br>&gt; http://www.myitdepartment.net/gethelp/<br>&gt;<br>&gt; Why do mathematicians always confuse Halloween and Christmas?<br>&gt; Because 31 Oct = 25 Dec.<br>&gt;<br><br><br><br>-- <br>======================<br>Tony Graziano, Manager<br>Telephone: 434.984.8430<br>sip: tgraziano@voice.myitdepartment.net<br>Fax: 434.984.8431<br><br>Email: tgraziano@myitdepartment.net<br><br>LAN/Telephony/Security and Control Systems Helpdesk:<br>Telephone: 434.984.8426<br>sip: helpdesk@voice.myitdepartment.net<br>Fax: 434.984.8427<br><br>Helpdesk Contract Customers:<br>http://www.myitdepartment.net/gethelp/<br><br>Why do mathematicians always confuse Halloween and Christmas?<br>Because 31 Oct = 25 Dec.<br><br>_______________________________________________<br>FreeSWITCH-users mailing list<br>FreeSWITCH-users@lists.freeswitch.org<br>http://lists.freeswitch.org/mailman/listinfo/freeswitch-users<br>UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users<br>http://www.freeswitch.org<br></div></body></html>