Admin SIP and Audio (RTP) Settings

  • Login as admin in the Vodia PBX web interface.

SIP Settings

Here you can configure some general SIP settings.

  • Expand the menu SIP under "Settings".
  • From the expanded SIP menu, click on Settings.

Explanation of the Settings

  • Use Short SIP Headers: Some SIP headers have a short form (e.g., the From header gets shortened to F, the To header becomes T, and Via becomes V). Short headers have the advantage of saving space in the messages, reducing overall probability of running into problems with maximum message size in UDP. Although it is quite simple to support this, some devices do not support short headers. For this reason, the system offers both short and long. In order to maximize interoperability, keep the default value (long). If you are running into UDP packet fragmentation problems (message size above 1492 bytes), switch to the short header form.
  • Loopback detection: This setting applies only to multi-domain environments. Single-domain environments are required to leave this setting on.
  • SIP UDP Ports: If you are using SIP over UDP, you need to set this field. The default port for UDP is 5060. Multiple ports are permitted (e.g., 5060 5064).
  • SIP TCP Ports: If you are using SIP over TCP, you need to set this field. The default port for TCP is 5060.
  • SIP TLS Ports: If you are using SIP over TLS (Transport Layer Security - Security over TCP), you need to set this field. The default port for TLS is 5061.
  • Maximum number of SIP connections per second: This setting specifies the number of SIP conversations (incoming TCP or TLS connections) the system will respond to in 1 second. This setting is useful for deterring against SIP attacks. Higher values increase the load on the server, lower values reduce the chance that a successful connection can be established by a device when there are many invalid requests.
  • Maximum number of SIP connections: This setting limits the total number of SIP connections the system will support. This setting must be configured in busy environments where resource limitation is an issue.
  • SIP IP Replacement List: This setting applies to a system that is used in a DMZ zone with NAT (e.g., to connect remote phones to a system that is not on a public IP address). In this case, when the system builds the remote SIP packets, it will use the public IP address of the router. The setting should include a list of local IP addresses and their replacements. Whenever the system finds a local address in the list, it replaces the local address with the remote address, so the SIP messages from the system will look as if they were sent from the replaced IP address. The format of the list is LocalAddress/RemoteAddress [LAdr/RAdr]. Both the LAdr and the RAdr must be an IPv4 or IPv6 address (e.g., DNS addresses are not resolved here.

Example steps:

  1. Put your phone system IP address in the DMZ of your firewall.
  2. Log in to the Vodia PBX, then click Settings, then Ports.
  3. Set SIP IP Replacement List with the IP address of the PBX server separated by a forward slash & then the public IP address of your WAN. Here is an example:
  4. Click.
  5. Restart Vodia PBX service for this change.

Note: It is advisable to use the IP routing list(below) instead of the SIP IP Replacement List for better control and coverage.

    • IP Routing List: The IP Routing List setting is used to override the operating system IP routing table and is linked to the routing table (this setting will be consulted by the system before consulting/using the operating system). Whenever the system wants to find out the IP address that is being used when sending a SIP packet, it steps through the list and looks for a match (using the netmask Mask) to a destination address (DAdr). If there is a match, it uses the provided IP address (LAdr). The format of this field is DAdr/Mask/LAdr [DAdr/Mask/LAdr]... Both the DAdr and the LAdr must be an IPv4 or IPv6 address (e.g., DNS addresses are not being resolved here. The mask must also be in the form of an IP address. The PBX (starting version 65.0.5) understands the pattern "public" as a shortcut for "" (see below) and "private" expands to patterns that match private destinations with the private IP addresses of the PBX.
      • Example "private public": This example tells the PBX to use its private IP addresses when communicating to other private IP addresses addresses and use the public IP address for everything else.
      • Example "" - meaning use for 192.168.2.x addresses, use for 192.168.5.x addresses, use for everything else.
    • URL for polling the public IP address: The PBX can poll an external server for its own IP address. This is useful in environemnts where the IP address changes periodically (for example, assigning new IP addresses by the service provider to better utilize the IPv4 address pool) or when another internet connection must be used because of a failover. The address will be available in the symbol "public" that can be used in the IP Routing List (see above), for example "". The web server must return either the IP address in ASCII-format (e.g. or in JSON format with an element called "ip" (for example: {"ip":""}). You can use a service like but of course you can also just use your own service for that.
    • Interval for polling the public IP: This settings defined the frequency that the PBX should use to poll for the public IP address. Setting this value low will increase the speed for detecting an IP address change, but it will also increase the traffic.

    Audio (RTP) Settings

    Here you can configure some general audio or RTP settings like RTP ports etc.

    The Real Time Protocol (RTP) ports are used for sending and receiving media. Be sure to specify a reasonable port range so that you have enough ports for all open calls. A port range of 100 ports is not unusual. Most user agents send RTP media data from the same port on which they expect to receive data. This is useful when a user agent sends media from behind NAT. The system can use this mechanism to establish a two-way media path, even if the user agent is not able to determine its public IP address for media and is behind NAT.

    • Expand the menu SIP under "Settings".
    • From the expanded SIP menu, click on Audio.

    Explanation of the Settings

    • Port Range Start: This setting represents the starting RTP port that the system will use for media sessions. If the system is behind a firewall, these ports should be open.
    • Port Range End: This setting represents the end RTP port that the system will use for the media sessions. RTP uses UDP for transport, whereas SIP can use UDP, TCP, and/or TLS.
    • Follow RTP: Some user agents use different ports for sending and receiving. Although they will not be able to operate behind NAT, they are within the scope of the IETF standards. With this setting, these devices can be made compatible. By default, this flag is set to On. If you have trouble with devices that use different ports for sending and receiving, try turning this flag off. Some troublesome devices also have a flag that can be used to turn the usage of different ports off. This behavior can be controlled on a trunk level, as well. If only a specific trunk has this problem, use this setting only on the trunk level.
    • Codec Preference: The Codec Preference setting allows you to select the codecs that will be supported on the system. The codecs that are allowed on the system are shown at the left. If you do not want to use a particular codec, click the codec, then click Remove. This will move the codec to the right-side selection box, removing it from use. The system comes with recommended high-quality codecs like G.711 µ-law (0), G.711 A-law (8), G.722 (9), G.726 (2), or GSM 6.10 FullRate (3). Codecs can be changed without restarting the service. G.729 is a royalty-based codec and requires a fee, and it is not enabled by default.
    • Lock codec during conversation: In certain cases, the system can switch to a common codec (advertised by both end devices) to avoid the transcoding during the call setup. Even though this is legal from the protocol’s point of view, many devices still cannot change codecs midstream. To avoid this problem, you must enable this feature. Once this is set, the system will not switch the codec during the call setup. This may introduce transcoding, which is a CPU-intensive job. Default is off.
    • Packet length (in ms): This is the ptime parameter in the session description protocol (SDP). The default is 20 ms.
    • Multicast IP Addresses: By default, the operating system uses a more-or-less random interface to send multicast packets out from the system. Especially when the system has more than one IP address, it becomes random from which interface the PBX is sending out multicast packets. With this setting, you can tell the PBX from what IP addresses it should send multicast RTP packets into the network. For example, when you put “” there, it will open two sockets and bind them to the provided IP address. Then when RTP multicast packets have to be sent out, it will send them from those sockets.
    • Multicast TTL: In some networks it is important to specify how many hops the multicase packets should take. For that the PBX has the setting "Multicast TTL".
    • Bind to specific IP address (IPv4): The system opens RTP ports on this IP address only. This is useful if you have a dual NIC machine and want to use only on one interface for RTP. If this is left blank, then the system will use all the interfaces it sees in the machine.
    • Bind to specific IP address (IPv6): IPv6 equivalent of the above field.