Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Having successfully configured and maintained few Asterisk based installations, I have now been provided a task to configure FreeSwitch SIP server.

ISO downloaded from


  • CentOS 5.4 Final
  • FreeSwitch
  • FusionPBX 1.0


  1. Installed the FusionPBX iso.
  2. Firewall and network configuration setup. Server IP:
  3. Logged in to FusionPBX web frontend from another box. (
  4. Created an extension 6000 with password 6000.
  5. Applied the changes/restarted.

I have two softwphone clients,

  1. 3cx
  2. X-Lite 4

Now when I try and register the softphone to FreePBX, SIP error 408 is shown.

Please help.

share|improve this question
Have you had a look through this link? – JohnThePro Mar 7 '12 at 20:55
No, I am running it on CentOS. The above link applies to BSD. – Nick Binnet Mar 8 '12 at 6:42

It sounds, to me, like you need to sniff the traffic between the softphone client and the server and see what's actually going on with the packets on the wire. SIP is a very human-readable protocol, and it's likely that a quick tcpdump trace on the server (and a trace from a suitable analog on the client, ideally) is going to give you some idea as to what's going wrong faster than poking at a "black box". Nothing beats seeing the traffic on the wire.

share|improve this answer
up vote 2 down vote accepted

Finally found the cause of the issue. A bug in FreeSwitch.

SIP Profiles

There are three sip profiles under the normal installation:

  • external.xml
  • internal.xml
  • internal-ipv6.xml

For this particular case, internal.xml was the culprit but I am pretty sure that the problem will be the same for the other files, as well.

Why Extensions are Not Registering?

There are three sections in the internal.xml file, namely

<param name="rtp-ip" value="$${local_ip_v4}"/>
<param name="sip-ip" value="$${local_ip_v4}"/>
<param name="presence-hosts" value="$${domain},$${local_ip_v4}"/>

looking at which, we find two aliases:

  • $${domain}
  • $${local_ip_v4}

FreeSwitch parsed both values as "".


I was able to solve the problem by not letting FreeSwitch decide the values for me.

<param name="sip-ip" value=""/>
<param name="presence-hosts" value=""/>
share|improve this answer
+1 for checking the parsed xml - that led to me finding an internal IP using the wrong interface – Redzarf Nov 23 '15 at 19:42

Because you are trying to use either 3cx which has support for Windows, Android and Iphone or Xlite which is only supported on Windows and OSX, I will assume that you are running your softphones on Windows as it is the only platform in common which supports both clients.

your error is:
408 Request Timeout

   The server could not produce a response within a suitable amount of
   time, for example, if it could not determine the location of the user
   in time.  The client MAY repeat the request without modifications at
   any later time.
  1. What ip address are you getting on your softphone client pc? 192.168.0.x?

  2. Disable windows firewall on the softphone client PC.

share|improve this answer
Firewall is disabled on both CentOS server and Windows 7 completely. IP address of softphone PC is I can ping the server on I can also verify that ports 5060, 5080 on server are open. One more update, if I uncheck the option "Register with domain and receive calls" option in Softphone-->Account Settings menu in X-Lite 4, I can connect to server. But then I cannot dial any extension or listen to music by dialing 9664. – Nick Binnet Mar 11 '12 at 13:59

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.