Skip to content

Instantly share code, notes, and snippets.

@sbezpalov
Last active January 22, 2025 20:23
Show Gist options
  • Select an option

  • Save sbezpalov/87c30f95036f8d58758f43c88fa34daa to your computer and use it in GitHub Desktop.

Select an option

Save sbezpalov/87c30f95036f8d58758f43c88fa34daa to your computer and use it in GitHub Desktop.
Configuration of trunk between Cisco UCM and 3CX
# Configuration for setting up a bidirectional trunk between Cisco CM and 3CX
# Agenda
# 10001 — Bridge number / id in 3CX
# 1xxx — Dial plan in Cisco UCM
# 2xxx — Dial plan 3CX system
# 10.0.1.2 — Voice router / gateway
# 10.0.2.2 — Cisco UCM
# 10.0.3.2 — 3CX
# Tested on Cisco ISR 2921, SW: "c2900-universalk9-mz.SPA.157-3.M8.bin"
!
class-map match-any voip-med
match protocol rtp
class-map match-any voip-sig
match protocol sip
!
policy-map policy-voip
class voip-med
set dscp ef
class voip-sig
set dscp af41
!
!
interface FastEthernet0/0
description VoIP Network
ip address 10.0.1.2 255.255.255.0
service-policy output policy-voip
!
!
voice service voip
ip address trusted list
ipv4 10.0.2.2 255.255.255.255
ipv4 10.0.3.2 255.255.255.255
srtp fallback
allow-connections sip to sip
supplementary-service h450.12
no supplementary-service sip moved-temporarily
supplementary-service media-renegotiate
redirect ip2ip
signaling forward none
sip
min-se 600 session-expires 600
header-passing
error-passthru
registrar server
asserted-id pai
history-info
midcall-signaling passthru
privacy-policy passthru
privacy-policy send-always
!
voice class codec 1
codec preference 1 g722-64
codec preference 2 g711alaw
codec preference 3 g711ulaw
codec preference 4 g729r8
!
!
voice class sip-profiles 1
request INVITE sip-header From modify "sip:....@10.0.1.2" "sip:10001@10.0.1.2"
request INVITE sip-header Contact modify "sip:....@10.0.1.2" "sip:10001@10.0.1.2"
!
!
dial-peer voice 1000 voip
description = CUCM =
destination-pattern ^1...
rtp payload-type comfort-noise 13
session protocol sipv2
session target ipv4:10.0.2.2
incoming called-number .T
voice-class codec 1
no voice-class sip early-offer forced
voice-class sip options-keepalive
voice-class sip pass-thru content sdp
dtmf-relay rtp-nte
ip qos dscp cs3 signaling
no vad
!
!
dial-peer voice 2000 voip
description = 3CX =
destination-pattern ^2...
rtp payload-type comfort-noise 13
session protocol sipv2
session target ipv4:10.0.3.2
incoming called-number .T
voice-class codec 1
no voice-class sip asserted-id
no voice-class sip early-offer forced
voice-class sip profiles 1
voice-class sip options-keepalive
voice-class sip pass-thru content sdp
dtmf-relay rtp-nte
ip qos dscp cs3 signaling
no vad
!
!
sip-ua
credentials username 10001 password 123P realm 3CXPhoneSystem
authentication username 10001 password 123P realm 3CXPhoneSystem
timers connect 1000
timers register 300
registrar 1 ipv4:10.0.3.2 expires 3600
!
# More info you can found here https://blog.bezpalov.com/archives/866
@sbezpalov
Copy link
Author

Configuration for setting up a bidirectional trunk between Cisco CM and 3CX

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment