Cisco UC · CUBE / SIP trunking

Cisco SIP Dial-Peer Generator

Fill in a short form — get production-shape IOS-XE CUBE config for your SIP trunk: voice class codec, sip-profile, tenant, and inbound / outbound dial-peers.

By Faz Karim · 30 yrs Cisco voice Last updated 2026-04-20
What this tool does

Give me a SIP trunk config I can paste — not a 40-page guide

The SIP Dial-Peer Generator produces a ready-to-paste IOS-XE CUBE configuration for a typical enterprise SIP trunk: inbound and outbound dial-peers, a shared voice class codec, a voice class sip-profiles block for common header manipulations, and an optional voice class tenant for 17.x-family images. You pick the destination IP, codec list, DTMF method, SRTP, T.38, and a dial string prefix — the tool writes the config with comments you can keep in place for your change record. Use it to scaffold a net-new trunk, to onboard a second carrier, or as a sanity check when inheriting a messy existing config.

Run the tool

Inputs

Enter the carrier destination IP or FQDN.




Generated config

Fill in the form and click Generate config — the IOS-XE config appears here.

How to read your result

What this output means in practice

1

Top-down ordering matters

Apply the blocks in the order they appear: voice service voip, voice class codec, voice class sip-profile, voice class tenant, then the dial-peer stanzas. Each block refers to the ones above it by number.

2

Preference 1 wins

Cisco offers codecs in order of preference. Put the cheap codec (G.729) first only if your carrier genuinely supports it on the inbound side — otherwise you end up in codec negotiation loops.

3

Inbound must match before outbound sends

The inbound dial-peer exists so the router knows how to classify an incoming INVITE. Without it, CUBE falls back to dial-peer 0 and you'll see mysterious one-way audio. The generator always emits both.

Deep dive

Why this particular CUBE structure

CUBE configs fall into a handful of patterns. The one this tool generates is the SIP-trunk-as-tenant pattern — it scales from one carrier to N carriers with only incremental change. The shared voice class codec means every future dial-peer references codec preference by ID rather than inline, so when a carrier's contract changes you touch one line. The shared voice class sip-profiles holds the header manipulations you will eventually need — the tool seeds the three most common ones (strip From host to hide your public IP, force PAI from calling-party, downgrade unwanted SDPs).

The voice class tenant construct was introduced in IOS-XE 17.1 and makes multi-carrier life much easier. It lets you scope sip-server, session target, and credentials per trunk instead of globally. If you're on 16.x, comment out the tenant block — the rest of the config still works if you move the sip-server and session target statements up to sip-ua / directly into the dial-peer.

The inbound and outbound dial-peers are deliberately simple. Outbound matches on your dial prefix and session target ipv4: points at the carrier; inbound matches on the carrier's destination IP with incoming uri via. You will almost certainly layer translation-profiles, class-of-restriction (COR), and CAC on top — this config gives you the scaffold that works before those policies turn it into a wall of text.

If you enable SRTP, the generator adds srtp under the dial-peer and the matching srtp crypto 1 reference. Your carrier must support SRTP (most ITSPs do, some mid-market carriers don't); if they don't, you'll see 488 Not Acceptable Here on call setup. T.38 similarly requires carrier support — the generator emits the fax protocol config but if your carrier is G.711 pass-through only, comment out the T.38 lines.

FK
Faz Karim 30 years Cisco Network · UC · Data Center · LinkedIn
FAQ

Common questions

Does this work on ISR 4000 and Catalyst 8000 CUBE?

Yes. The generated config runs on IOS-XE 16.9+ CUBE on ISR 4000, Cat 8000V, Cat 8200L/8300, and CSR1000v. IOS 15.x CUBE on older ISR G2 is supported for the core dial-peer constructs but the voice class tenant block should be omitted.

Why does the tool default to rtp-nte for DTMF?

RFC 2833 / rtp-nte is the carrier interoperability default — it works with virtually every ITSP and with CUCM. sip-notify is reserved for carriers that explicitly require it, and sip-kpml is Cisco-phone-specific and not portable.

Why use voice class codec instead of a codec list under the dial-peer?

voice class codec lets you keep codec preferences centralized — one line referenced from every dial-peer. When the carrier tomorrow says "also allow G.729", you edit the voice class once instead of touching every dial-peer in the config.

Do I need a voice class tenant?

Tenants (IOS-XE 17.x+) isolate SIP behavior per trunk — useful when one CUBE fronts several carriers. The tool includes a tenant scaffold; comment it out if you're on IOS-XE 16.x.

Is the generated config production-ready?

It's a strong starting point for a standard SIP trunk. Every environment has local policy (translation rules, calling-party number normalization, call admission control, high-availability) that the tool doesn't know about — review with your voice engineer before paste.

Worked examples

Three realistic scenarios

Single-carrier SIP trunk on IOS-XE 17

Cat 8300, single ITSP, G.711 + G.729, SRTP on.

Outputs one codec class, one sip-profile, one tenant, and one pair of dial-peers. Paste and test with show dial-peer voice summary.
This is the 80% use-case. Takes 5 minutes to customize instead of 45.

Dual-carrier with failover

Two ITSPs, active/standby. Primary dial-peer preference 1, secondary preference 2.

Run the tool twice, once per carrier, and let them share the codec class. Use preference on the outbound dial-peers to prefer carrier 1.
Keep codecs identical across carriers — it avoids surprises during failover call re-negotiation.

CUCM-to-CUBE internal trunk

SIP trunk between CUCM and the CUBE, G.711 only, T.38 for faxing.

Set trunk type "CUCM ↔ CUBE", turn SRTP off (internal), T.38 on, rtp-nte for DTMF.
Most on-prem fax failures come from mismatched T.38 versions. Check for fax protocol t38 version 0 on both sides.
Sources verified against current Cisco guidance

Citations

Related tools

You might also need

Need this applied to your real CUBE?

The Network & UC Health Assessment is a written, independent review of your actual environment — not vendor marketing. Includes a SIP trunk audit covering codec negotiation, DTMF, SRTP, fax handling, CAC, and redundancy.

$4,9951 week · fixed fee · 1 deliverable
Book a 30-min call → Or email info@famoustec.com