SIP Failover and Redundancy
How automatic failover works, dual signaling IPs, route priority, failover triggers, and DNS practices.
How Automatic Failover Works
AIVO Connect is built for high availability. Every SIP connection has access to multiple signaling endpoints across geographically distributed data centers. If one endpoint becomes unavailable, your PBX automatically routes to the next available endpoint.
The Failover Process
- Your PBX sends a SIP request to the primary endpoint.
- If the primary does not respond or returns an error, the PBX retries on the secondary endpoint.
- The secondary endpoint handles the call using the same configuration and credentials.
- Once the primary recovers, new calls resume on the primary. Active calls on the secondary continue uninterrupted.
Dual Signaling IPs Per Region
Each region provides two independent signaling endpoints:
| Region | Primary | Secondary |
|---|---|---|
| US East | us-east-1.sip.aivo.bz | us-east-2.sip.aivo.bz |
| US West | us-west-1.sip.aivo.bz | us-west-2.sip.aivo.bz |
| Europe | eu-west-1.sip.aivo.bz | eu-west-2.sip.aivo.bz |
The primary and secondary run in separate data centers. A data center outage only affects one endpoint, and your traffic fails over to the other.
Route Priority Configuration
Configure your PBX with multiple SIP routes in priority order:
Example: US Business with European Backup
| Priority | Endpoint | Use Case |
|---|---|---|
| 1 (highest) | us-east-1.sip.aivo.bz | Primary - nearest region |
| 2 | us-east-2.sip.aivo.bz | Failover - same region, different DC |
| 3 | eu-west-1.sip.aivo.bz | Disaster recovery - different continent |
In FreePBX
Add multiple trunk entries with different SIP servers, then list them in order in your Outbound Route's Trunk Sequence.
In 3CX
Edit the SIP Trunk and add multiple registrar/outbound proxy entries. 3CX will try them in order.
What Triggers Failover
Your PBX should failover when it receives these SIP response codes:
| Code | Meaning | Action |
|---|---|---|
| 408 | Request Timeout | Primary is not responding. Retry on secondary. |
| 480 | Temporarily Unavailable | Endpoint is overloaded or in maintenance. Try next. |
| 503 | Service Unavailable | Endpoint is down. Fail over immediately. |
| 504 | Server Timeout | Gateway did not respond in time. Try next. |
Timeout Settings
Configure your PBX to fail over quickly:
- SIP Invite Timeout: 4-6 seconds (how long to wait for a response before trying the next server).
- Registration Timeout: 30 seconds (how long to wait before declaring registration failed).
- Retry Interval: 30-60 seconds (how often to retry the primary after failover).
Tip: Do not set the Invite Timeout too low (under 3 seconds) as network jitter could cause false failovers.
DNS Best Practices
Use SRV Records
SRV records let your PBX discover and prioritize SIP endpoints automatically:
_sip._udp.yourdomain.com IN SRV 10 10 5060 us-east-1.sip.aivo.bz
_sip._udp.yourdomain.com IN SRV 20 10 5060 us-east-2.sip.aivo.bzTTL Settings
- Set DNS TTL to 300 seconds (5 minutes) for SIP records.
- Lower TTLs mean faster failover but more DNS queries.
- Higher TTLs reduce DNS load but delay failover.
Avoid Caching Issues
- Do not hardcode IP addresses in your PBX. Always use hostnames.
- If your PBX caches DNS, set the cache TTL to match or be lower than the DNS TTL.
- Periodically verify your PBX resolves the correct IPs (
dig sip.aivo.bzornslookup sip.aivo.bz).
Monitoring
AIVO Connect provides real-time status on the dashboard:
- Connection status - Shows whether your PBX is registered.
- Endpoint health - Green/yellow/red indicators for each signaling endpoint.
- Failover events - Log of when failovers occurred and why.
You can also set up webhook alerts for failover events. See API Keys and Developer Access for webhook configuration.
Was this article helpful?