GuideSIP & Integration

SIP Trunking Configuration Guide

Step-by-step instructions for integrating Mokrina SIP trunks with popular PBX systems including FreePBX, 3CX, Cisco CUCM, and Avaya.

March 14, 2026
12 min read
SIP, Integration, PBX

Before You Begin

Before configuring your SIP trunk, ensure you have the following from your Mokrina onboarding pack:

  • Your SIP trunk username and authentication password
  • Your Mokrina SIP proxy address (e.g. sip.mokrina.com)
  • Your assigned DID numbers or number ranges
  • Your account's allowed IP addresses (if using IP authentication)

Mokrina supports both credential-based (username/password) and IP-based authentication. For production deployments, IP authentication combined with credential authentication provides the strongest security posture.

Network Prerequisites

Ensure the following network conditions are met before proceeding:

  • Firewall rules: Allow UDP/TCP port 5060 (SIP signalling) and UDP ports 10000-20000 (RTP media) to and from Mokrina's IP ranges. Contact support for our current IP whitelist.
  • NAT traversal: If your PBX is behind NAT, enable SIP ALG on your firewall or configure your PBX to use STUN. Most modern PBX platforms handle NAT internally — consult your PBX documentation.
  • Codec support: Mokrina supports G.711 (ulaw/alaw), G.722 (wideband), and G.729. G.711 ulaw is recommended for North American deployments; G.711 alaw for international.

FreePBX / Asterisk Configuration

FreePBX is one of the most widely deployed open-source PBX platforms. Configuration is performed via the web UI under Connectivity > Trunks.

Step 1: Create a New Trunk

Navigate to Connectivity > Trunks > Add Trunk > Add SIP (chan_pjsip) Trunk. Assign a descriptive name such as "Mokrina_SIP".

Step 2: Configure General Settings

Set the outbound CallerID to your primary DID. Under Maximum Channels, set a value appropriate to your call concurrency requirement — Mokrina imposes no arbitrary channel limits; set a value that reflects your expected peak concurrent calls with headroom.

Step 3: PJSIP Settings

In the pjsip Settings tab, configure the following under the Auth tab: authentication username and password from your Mokrina credentials. Under the Advanced tab, set the SIP Server to your Mokrina proxy address and ensure Registration is set to "Send Registration".

Step 4: Inbound Routes

Create an inbound route for each DID pointing to the appropriate destination (IVR, extension, ring group). Set the DID number field to match the E.164 format of your Mokrina DID.

3CX Configuration

3CX uses a SIP trunk template system. While a dedicated Mokrina template may be available from the 3CX marketplace, manual configuration is straightforward.

Step 1: Add a Generic SIP Trunk

In the 3CX management console, navigate to SIP Trunks > Add SIP Trunk > Generic. Enter a friendly name and your main DID number.

Step 2: Registrar and Authentication

Set the Registrar/Server/Gateway hostname to your Mokrina SIP proxy. Enter your authentication ID and password. Set the Number of SIP Lines to match your expected concurrent call volume.

Step 3: Outbound Rules

Create an outbound rule routing calls via the Mokrina trunk. Apply prefix stripping or transformations as required for your dial plan. Mokrina expects E.164 format for international calls; local format for domestic calls should include the correct country code prefix.

Cisco CUCM

Cisco Unified Communications Manager uses SIP trunks defined under Device > Trunk. Create a new SIP Trunk device, configure the SIP Trunk Security Profile to permit NTLM or basic authentication, and point the Destination Address to your Mokrina SIP proxy. Consult your Cisco documentation for SIP normalisation script requirements specific to your CUCM version.

Testing Your Configuration

After completing configuration, perform the following tests before going live:

  • Registration check: Confirm the trunk registers successfully (green status in your PBX dashboard).
  • Outbound test call: Place a test call to a mobile number, confirming audio quality and correct CLI presentation.
  • Inbound test call: Call your DID from an external number and confirm the call routes correctly.
  • Codec negotiation: Use your PBX's call detail logs to confirm the expected codec is negotiated.
  • Failover test: If you have configured multiple trunks for failover, test that calls route correctly when the primary trunk is unavailable.

Troubleshooting Common Issues

  • Registration fails (403 Forbidden): Check authentication credentials and ensure your IP address is whitelisted in your Mokrina account settings.
  • One-way audio: Almost always a NAT or firewall issue. Verify RTP port ranges are open in both directions.
  • Calls connect but immediately drop: Check for SIP ALG interference on your firewall. Disable SIP ALG if present.
  • Incorrect CLI presented: Verify that your PBX is sending the correct P-Asserted-Identity or From header. Mokrina honours P-Asserted-Identity where permitted.

Need configuration assistance?

The Mokrina technical team can assist with SIP trunk configuration for any PBX platform. Contact us for hands-on support.