SIP
Version 1.3 by Aaron Blackburn on 2026/09/01 18:33
@import url('https://fonts.googleapis.com/css2?family=Host+Grotesk:wght@300;400;500;600;700;800&display=swap');
.fd-sip-doc, .fd-sip-doc * { box-sizing: border-box; }
.fd-sip-doc {
--fd-navy: #003366;
--fd-dark-navy: #001a33;
--fd-blue: #307ab2;
--fd-sky: #38b2e3;
--fd-bright-cyan: #5ed2ff;
--fd-red: #cf333d;
--fd-slate: #2e404d;
--fd-grey: #8f9499;
--fd-lightgrey: #e2e8f0;
--fd-offwhite: #f8fafc;
--fd-max-w: 1140px;
font-family: 'Host Grotesk', system-ui, -apple-system, sans-serif;
color: var(--fd-slate);
background: #ffffff;
max-width: var(--fd-max-w);
margin: 0 auto;
padding: 24px 16px;
}
/* Header */
.fd-sip-doc .doc-header {
background: radial-gradient(circle at 50% 35%, rgba(13, 71, 128, 0.78) 0%, rgba(0, 51, 102, 0.93) 60%, rgba(0, 26, 51, 0.98) 100%),
url('Fiber Optic Theme.JPG') center/cover no-repeat;
padding: 40px 32px;
border-radius: 20px;
text-align: center;
color: #ffffff;
box-shadow: inset 0 0 60px rgba(0, 26, 51, 0.6), 0 12px 32px rgba(0, 51, 102, 0.12);
margin-bottom: 32px;
}
.fd-sip-doc .doc-header p.kicker {
color: var(--fd-bright-cyan);
font-weight: 800;
font-size: .8rem;
text-transform: uppercase;
letter-spacing: .18em;
margin: 0 0 8px;
text-shadow: 0 2px 10px rgba(0, 26, 51, 0.8);
}
.fd-sip-doc .doc-header h1 {
font-weight: 800;
font-size: 2.25rem;
margin: 0 0 10px;
letter-spacing: -0.02em;
text-shadow: 0 3px 12px rgba(0, 26, 51, 0.9);
}
.fd-sip-doc .doc-header p.sub {
color: #f8fafc;
font-weight: 400;
font-size: 1rem;
max-width: 680px;
margin: 0 auto;
line-height: 1.5;
text-shadow: 0 2px 8px rgba(0, 26, 51, 0.95);
}
/* Notice Banner */
.fd-sip-doc .disclaimer-box {
background: #f0f7fc;
border-left: 5px solid var(--fd-blue);
padding: 16px 20px;
border-radius: 8px;
margin-bottom: 28px;
font-size: 0.9rem;
line-height: 1.5;
}
/* Specifications Grid */
.fd-sip-doc .section-title {
color: var(--fd-navy);
font-size: 1.35rem;
font-weight: 700;
margin: 32px 0 16px;
border-bottom: 2px solid var(--fd-lightgrey);
padding-bottom: 8px;
}
.fd-sip-doc .specs-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
gap: 16px;
margin-bottom: 32px;
}
.fd-sip-doc .spec-card {
background: var(--fd-offwhite);
border: 1px solid var(--fd-lightgrey);
border-radius: 12px;
padding: 16px 20px;
}
.fd-sip-doc .spec-card .label {
font-size: 0.75rem;
text-transform: uppercase;
font-weight: 700;
color: var(--fd-grey);
letter-spacing: 0.05em;
margin-bottom: 4px;
}
.fd-sip-doc .spec-card .val {
font-size: 1rem;
font-weight: 700;
color: var(--fd-navy);
}
.fd-sip-doc .spec-card .subtext {
font-size: 0.8rem;
color: var(--fd-slate);
margin-top: 4px;
}
/* Rules & Requirements */
.fd-sip-doc .rules-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 20px;
margin-bottom: 32px;
}
.fd-sip-doc .rule-box {
border: 1px solid var(--fd-lightgrey);
border-radius: 12px;
padding: 20px;
background: #ffffff;
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.03);
}
.fd-sip-doc .rule-box h4 {
margin: 0 0 12px;
color: var(--fd-navy);
font-size: 1.05rem;
}
.fd-sip-doc .rule-box ul {
margin: 0;
padding-left: 20px;
font-size: 0.88rem;
line-height: 1.6;
}
/* Troubleshooting Table */
.fd-sip-doc .tb-table {
width: 100%;
border-collapse: collapse;
margin-bottom: 32px;
font-size: 0.9rem;
}
.fd-sip-doc .tb-table th {
background: var(--fd-navy);
color: #ffffff;
text-align: left;
padding: 12px 16px;
font-weight: 700;
}
.fd-sip-doc .tb-table th:first-child { border-top-left-radius: 8px; }
.fd-sip-doc .tb-table th:last-child { border-top-right-radius: 8px; }
.fd-sip-doc .tb-table td {
padding: 14px 16px;
border-bottom: 1px solid var(--fd-lightgrey);
line-height: 1.5;
}
.fd-sip-doc .tb-table tr:nth-child(even) { background: var(--fd-offwhite); }
.fd-sip-doc .symptom { font-weight: 700; color: var(--fd-red); width: 28%; }
@media (max-width: 768px) {
.fd-sip-doc .rules-grid { grid-template-columns: 1fr; }
}
FirstDigital Voice Operations
SIP Trunking Technical Specifications
Configuration standards, firewall policies, and troubleshooting procedures for enterprise SIP trunks.
Customer Responsibility Notice: Customers are responsible for the configuration and fine-tuning of their own edge routers, firewalls, and PBX equipment.
Standard Trunk Specifications
Signaling Protocol
UDP 5060
Standard SIP port
Primary Codec
G.711u
20ms packetization
DTMF Mode
RFC 2833
Out-of-band touch tones
DNIS Digits
10 Digits
+1 stripped; Intl disabled by default
Authentication
IP Registration-less
No user/password required
SIP Advanced
Peer Path / Re-invite
Disabled / No re-invites permitted
Network & Firewall Rules
Outbound Signaling & Caller ID
- Outbound requests to FirstDigital must source directly from the Customer Public IP provided during turn-up.
- Outbound calls must present a Caller ID number assigned to the specific trunk instance.
- Ensure outbound NAT egress matches the registered public IP address.
Firewall & Perimeter Setup
- SIP ALG: Must be DISABLED globally on customer routers/firewalls.
- Inbound Rules: Allow traffic from FirstDigital's SBC subnet across
UDP 5000 - 65000. - Egress Routing: Verify NAT routing for FirstDigital's subnet exits out of the designated public IP.
SIP Trunk Troubleshooting Matrix
| Symptom | Root Cause & Resolution Step |
|---|---|
| No Inbound Calls | Verify firewall permits UDP 5060 from FirstDigital's subnet. Confirm SIP ALG is disabled on edge devices. |
| No Outbound Calls | Confirm destination SIP target and port (UDP 5060). Verify outbound traffic sources from your designated public IP. Ensure Caller ID matches an active number on the trunk. |
| One-Way or No Audio | Common Issue: PBX is sending private IP addresses (e.g., 10.x.x.x or 192.168.x.x) inside the SIP SDP header. Check PBX NAT settings, SBC Media Address Override, or STUN. Disable SIP ALG. |
| DTMF Tones Not Recognized | Configure PBX and endpoints to send DTMF out-of-band using RFC 2833 (telephony-event). |
| Calls Not Ringing Correct Extension | Inspect sent/received DNIS digit delivery. FirstDigital defaults to sending 10 digits. Adjust PBX inbound routing rules to match. |
| Forwarded Calls Have One-Way Audio | Typically caused when FirstDigital enables "NAT Media" as a temporary workaround for private IP leaks. Resolving the PBX private IP header leak allows FirstDigital to remove NAT Media settings, restoring call transfer audio. |