How to set up 3CX V5 using a static IP

Discussion in '3CX Phone System - General' started by Ralph, Dec 26, 2007.

  1. Ralph

    Ralph Member

    Joined:
    Jun 28, 2007
    Messages:
    417
    Likes Received:
    0
    Good morning,

    We are testing V5 for a deployment this comming month.

    We are having a problem getting the lines through BroadVoice to register.
    The 3CX server is a dedicated server with a static public IP.
    I attempted to set up broadvoice using the template in 3CX but this failed so I set up the BroadVoice line using the generic template. I entered the information as I did with 3CX V3 but the line will not register. When I go the the Edit page for VoIP gateways there are a variety of fields missing that where there in V3 (ie. Outbound Proxy Hostname or IP, Specified IP, etc.).

    The 3CX V5 server appears to be using a stun resolved IP address instead of the static IP which is needed.

    How do I set up the BroadVoice line using a static public IP address and how do I modify the settings once it is set up as I was able to in V3?

    Thanks again
     
  2. webguyz

    webguyz New Member

    Joined:
    Jul 19, 2007
    Messages:
    126
    Likes Received:
    0
    ralph,

    Have BroadVoice and Vitelity working under V5. Used the supplied template in V5 for Broadvoice and did not have to make any changes.

    Under registration I have External stun resolved. Is that where your saying you have to have an IP?

    I did try to use a STUN server I had defined on that same box but it won't work. I had to use the STUN server on my old V3 pbx which doesn't make sense to me but hey, its working.
     
  3. Ralph

    Ralph Member

    Joined:
    Jun 28, 2007
    Messages:
    417
    Likes Received:
    0
    Good afternoon

    Good afternoon Webguyz,

    I need to use a static public IP for the 3CX server. I don't use stun. V3.1 has been working fine for some time now. I just cant seem to get V5 to work at all. Sometimes I can make calls sometimes I can recieve calls but never both.

    Needless to say this has been a bit frustrating. Static IPs should make this easier :lol: Anyhow the BroadVoice line works fine on the V3.1 server I have so it appears to be an issue with the V5 server.

    Take care,
     
  4. webguyz

    webguyz New Member

    Joined:
    Jul 19, 2007
    Messages:
    126
    Likes Received:
    0
    Go to Broadvoice > Registration Setting > Which IP to use...
    > Use specified IP > 147.135.12.221:5060

    I have that currently set and it seems to work OK. I was using External Stun.

    Let me know. I think you have to specify the :port in V5.
     
  5. archie

    archie Well-Known Member
    3CX Support

    Joined:
    Aug 18, 2006
    Messages:
    1,309
    Likes Received:
    0
    They are not the same? Why?
     
  6. Ralph

    Ralph Member

    Joined:
    Jun 28, 2007
    Messages:
    417
    Likes Received:
    0
    Good morning

    Good morning,

    The server resides behind a firewall/Nat/router and when stun is used it returns the router IP instead of the static IP.
     
  7. archie

    archie Well-Known Member
    3CX Support

    Joined:
    Aug 18, 2006
    Messages:
    1,309
    Likes Received:
    0
    Re: Good morning

    This is exactly the reason why you NEED STUN resolution. You can NOT use static IP behind firewall/NAT, because your system will be inaccessible from outside.
     
  8. Ralph

    Ralph Member

    Joined:
    Jun 28, 2007
    Messages:
    417
    Likes Received:
    0
    Good morning

    Good morning Archie,

    Our ISP provides us static IPs that are directed to our router.
    The router directs all traffic to a specific static public IP to a static internal IP on our network.

    Static Public IP ->Router->Static Internal IP

    This set up has worked well with V3.1 because I could designate what IP to send to the VoIP provider.

    With V5 I haven't been able to determine how to turn off the Stun feature and use a specific IP for the VoIP provider.

    I am sure it is here somewhere I just haven't found the option in the manual or on the interface yet.

    Any idea where I can set the IP to use when registering and communicating?

    Thanks again
     
  9. Ralph

    Ralph Member

    Joined:
    Jun 28, 2007
    Messages:
    417
    Likes Received:
    0
    Here are some logs

    Good morning the following are the logs from an attempted call out:

    10:46:21.793 Call::Terminate [CM503008]: Call(12): Call is terminated
    10:46:21.783 Call::RouteFailed [CM503013]: Call(12): Attempt to reach [sip:xxxxxxx@XXX.XXX.XXX.XXX;user=phone] failed. Reason: Forbidden
    10:46:21.783 CallLeg::eek:nFailure [CM503003]: Call(12): Call to sip:xxxxxxx@sip.broadvoice.com has failed; Cause: 403 Forbidden; from IP:147.135.12.221
    10:46:21.582 MediaServerReporting::SetRemoteParty [MS210002] C:12.3:Offer provided. Connection(transcoding mode): XXX.XXX.XXX.XXX:38864(38865)
    10:46:21.512 CallLeg::eek:nFailure [CM503003]: Call(12): Call to sip:xxxxxxx@sip.broadvoice.com has failed; Cause: 403 Forbidden; from IP:147.135.12.221
    10:46:21.332 CallCtrl::eek:nSelectRouteReq [CM503014]: Call(12): Target is not registered: VoIPline:xxxxxxx dialed on (AnyLine@BV)
    10:46:21.332 Line::Line [CM303003]: There are no available outbound lines on gateway BV at this time.
    10:46:21.332 CallCtrl::eek:nSelectRouteReq [CM503014]: Call(12): Target is not registered: VoIPline:xxxxxxx dialed on (AnyLine@BV)
    10:46:21.332 Line::Line [CM303003]: There are no available outbound lines on gateway BV at this time.
    10:46:21.332 MediaServerReporting::SetRemoteParty [MS210002] C:12.2:Offer provided. Connection(transcoding mode): XXX.XXX.XXX.XXX:38862(38863)
    10:46:21.281 MediaServerReporting::SetRemoteParty [MS210000] C:12.1:Offer received. RTP connection: 192.168.0.136:2222(2223)
    10:46:21.281 CallCtrl::eek:nSelectRouteReq [CM503004]: Call(12): Calling: VoIPline:10000@[Dev:sip:xxxxxxxxxx@sip.broadvoice.com:5060, Dev:sip:xxxxxxxxxx@sip.broadvoice.com:5060]
    10:46:21.241 Extension::printEndpointInfo [CM505001]: Ext.101: Device info: Device Identified: [Man: Polycom;Mod: SoundPoint IP 330;Rev: General] Capabilities:[reinvite, replaces, able-no-sdp, recvonly] UserAgent: [PolycomSoundPointIP-SPIP_330-UA/2.1.1.0037] Transport: [sip:XXX.XXX.XXX.XXX:5060]
    10:46:21.231 CallCtrl::eek:nIncomingCall [CM503001]: Call(12): Incoming call from Ext.101 to [sip:xxxxxxx@XXX.XXX.XXX.XXX;user=phone]

    Any help is greatly appreciated
     
  10. jparisi

    Joined:
    Oct 1, 2007
    Messages:
    92
    Likes Received:
    0
    I encountered a similar problem when setting up an outside extension. We use a Sonicwall firewall and had to create NAT policies for the services that the 3CX box uses. The NAT policy will force traffic out the IP in the policy.

    For example. We have the "main" ip assign to the firewall we'll call.x.x.x.1 and the IP we want for the 3cx box x.x.x.2 When creating the rule to forward traffic to the 3cx box we forward port 5060 for SIP, etc. Say then you open a web browser and go to whatsmyip.com, you'll see the x.x.x.1 because port 80 is not part of the NAT policy.

    So, in this case, even though STUN does not require port forwarding, to get it to work on a Sonicwall you will have to create a NAT policy that maps that port to x.x.x.2
     
  11. Ralph

    Ralph Member

    Joined:
    Jun 28, 2007
    Messages:
    417
    Likes Received:
    0
    Good morning

    Good morning,

    The policies in the router are set up correctly to map the public IP to the internal IP of the 3CX server.

    I think the problem is that the 3CX server is using Stun to identify its IP (which resolves to the router IP not the pulbic IP assigned to the server) which it then sends to the VoIP provider.

    In V3.1 I could designate the IP sent to the VoIP provider and not use stun. This has worked fine for a while now with V3.1.

    Is there a way to designate the IP sent to the VoIP provider and turn off stun for the server in V5????

    Thanks again
     
  12. Ralph

    Ralph Member

    Joined:
    Jun 28, 2007
    Messages:
    417
    Likes Received:
    0
    ok I think this is the problem

    Ok I think this is the problem.

    I compared the logs for the V3.1 server that works and the V5 server that doesn't work.

    When registering the lines the V3.1 server states that it is using the "specified IP". The V5 server is using a stun resolved IP.

    How do I set the specified IP in V5? When I edit the gateway setting and click ok a page pops up that has the setting on it but it is always blank even after I enter information in it and come back to it later.

    Any ideas????
     
  13. webguyz

    webguyz New Member

    Joined:
    Jul 19, 2007
    Messages:
    126
    Likes Received:
    0
    Look up earlier today in this thread from me. I think thats what your looking for.
     
  14. Ralph

    Ralph Member

    Joined:
    Jun 28, 2007
    Messages:
    417
    Likes Received:
    0
    Good morning

    Good afternoon,

    I have uninstalled and reinstalled the V5 3CX server.

    I set up the lines and extensions again.

    This is what is happening:
    I click the following:
    "Lines/Manage" -> "Manage Gateways & Providers" -> I check the Broadvoice connection and click "Edit Selected":
    The page that pops up does not have an area for me to select "Which IP to use" for registration, It also doesnt have a field for the outbound proxy server.

    I click "OK" and an error shows up stating "Time between registration attempts must have a positive integer value" I then click "OK" again.
    This time a new page pops up that looks similar to the V3.1 configuration page. It has the outbound proxy field and the "Registration Settings" ->"Which IP to use" field. I enter the time between registration information, appropriate proxy information and the IP information. I then click ok and the phone can temporarily recieve and/or make calls for about 10-20 seconds.

    When I go back to the configuration page in the paragraph above I get the same error message and all the fields are empty again. It is as though somthing is erasing all my configuration settings. I discovered the following log entries after making a successful call:
    12:41:58.451 StunClient::process [CM506003]: Resolved SIP external IP:port has changed to (XXX.XXX.XXX.XXX:40644) on Transport xxx.xxx.xxx.xxx:5060
    12:41:58.401 StunClient::eek:nInitTests [CM506001]: STUN request to resolve SIP external IP:port mapping is sent to STUN server 64.69.76.23:3478 over Transport xxx.xxx.xxx.xxx:5060

    Immediatly after this the phone wouldn't work again. It appears that the server is defaulting back to using stun and erasing all my configuration settings.

    Any ideas on how to stop this or am I way off the mark here?

    Thanks again
     
  15. Ralph

    Ralph Member

    Joined:
    Jun 28, 2007
    Messages:
    417
    Likes Received:
    0
    More logs

    Here are the latest logs from a failed outgoing call:

    17:21:15.992 Call::Terminate [CM503008]: Call(7): Call is terminated
    17:21:15.972 Call::RouteFailed [CM503013]: Call(7): Attempt to reach [sip:xxxxxxx@xxx.xxx.xxx.xxx;user=phone] failed. Reason: Reason Unknown
    17:21:15.972 CallLeg::eek:nFailure [CM503003]: Call(7): Call to sip:xxxxxxx@sip.broadvoice.com has failed; Cause: 400 Bad Request; from IP:147.135.12.221
    17:21:15.852 MediaServerReporting::SetRemoteParty [MS210002] C:7.3:Offer provided. Connection(transcoding mode): xxx.xxx.xxx.xxx:46435(46436)
    17:21:15.802 CallLeg::eek:nFailure [CM503003]: Call(7): Call to sip:xxxxxxx@sip.broadvoice.com has failed; Cause: 403 Forbidden; from IP:147.135.12.221
    17:21:15.311 CallCtrl::eek:nSelectRouteReq [CM503014]: Call(7): Target is not registered: VoIPline:xxxxxxx dialed on (AnyLine@BV1)
    17:21:15.311 Line::Line [CM303003]: There are no available outbound lines on gateway BV1 at this time.
    17:21:15.311 CallCtrl::eek:nSelectRouteReq [CM503014]: Call(7): Target is not registered: VoIPline:xxxxxxx dialed on (AnyLine@BV1)
    17:21:15.311 Line::Line [CM303003]: There are no available outbound lines on gateway BV1 at this time.
    17:21:15.311 MediaServerReporting::SetRemoteParty [MS210002] C:7.2:Offer provided. Connection(transcoding mode): xxx.xxx.xxx.xxx:46432(46433)
    17:21:15.271 MediaServerReporting::SetRemoteParty [MS210000] C:7.1:Offer received. RTP connection: xxx.xxx.xxx.xxx:2226(2227)
    17:21:15.261 CallCtrl::eek:nSelectRouteReq [CM503004]: Call(7): Calling: VoIPline:10000@[Dev:sip:xxxxxxxxxx@sip.broadvoice.com:5060, Dev:sip:xxxxxxxxxx@sip.broadvoice.com:5060]
    17:21:15.231 Extension::printEndpointInfo [CM505001]: Ext.101: Device info: Device Identified: [Man: Polycom;Mod: SoundPoint IP 330;Rev: General] Capabilities:[reinvite, replaces, able-no-sdp, recvonly] UserAgent: [PolycomSoundPointIP-SPIP_330-UA/2.1.1.0037] Transport: [sip:xxx.xxx.xxx.xxx:5060]
    17:21:15.221 CallCtrl::eek:nIncomingCall [CM503001]: Call(7): Incoming call from Ext.101 to [sip:xxxxxxx@xxx.xxx.xxx.xxx;user=phone]

    Notice that the reason given is 400 bad request and 403 forbidden. Is it possible that it is either using the static to register and the stun ip to communicate or using the stun to register and the static to communicate so that either way the data streams are comming from 2 different IP addresses and this is the problem?
     
  16. RobLloyd

    RobLloyd Member

    Joined:
    Oct 13, 2006
    Messages:
    488
    Likes Received:
    0
    Is your 3CX server using a public IP or one you gave it?

    Usually you will have a static IP from your ISP which goes to your router/firewall. From there you poke holes in the firewall for port forwarding (5060, 9000+ etc) to your internal server.
    Example: 204.10.10.10:5060 -> 192.168.1.2:5060
    Public IP traffic on port 5060 forwards to a static internal private IP on the same port.

    Do you have both version 3 and version 5 on the same PC or on different ones for testing? If they are on different ones then your port forwarding will not work correctly unless you are changing it for each server test.

    You x'd out most of the IP addresses in your log so I wasn't able to tell what you are using.
     
  17. Ralph

    Ralph Member

    Joined:
    Jun 28, 2007
    Messages:
    417
    Likes Received:
    0
    Good morning

    Good morning everyone,

    Thanks for all the help. I finally figured out the problem (operator error of course, probably has somthing to do with an overdose of turkey, wine, sugar, ham, potatos, green beans, sausage, ....). After checking the routing tables for the nth time I realized that the router needed a routing policy and a few other settings to ensure that the return packages were traveling out on the correct route.

    The system now registers with the correct IP and calls comming in are working correctly. Calls going out are another matter and I will start a new topic for that.

    Thanks again and Happy Holidays everyone,
     
  18. mccutchen

    Joined:
    Dec 29, 2007
    Messages:
    5
    Likes Received:
    0
    Ralph, I am getting the exact same errors with Boradvoice and outbound calls. Have you made any progress in getting it resolved?

    Thanks!
     
  19. Ralph

    Ralph Member

    Joined:
    Jun 28, 2007
    Messages:
    417
    Likes Received:
    0
    Good morning

    Good morning

    Our problem stemed from the fact that our networks have multiple ISPs coming into the router(s) and the server would recieve data via the ISP with its static IP but might send out the return packets via a different ISP that would have a different IP associated with it.

    To solve the problem we iniciated some routing policies that ensure that the route for the outgoing packets from the server go out through the appropriate ISP and that the router uses the static external ip for all traffic from that server.

    Hope this helps
     
  20. mccutchen

    Joined:
    Dec 29, 2007
    Messages:
    5
    Likes Received:
    0
    I switched back to version 3.1 and everything worked fine. Something is wrong with version 5 and Broadvoice.
     

Share This Page