- Nearly half of Gen AI adopters want it open source - here's why
- VisionLab lanza los primeros cristales con IA ‘made in Spain’
- I tried replacing Twitter with Bluesky, Threads, and Mastodon: Here's what I found
- The Role of Security Configuration Management in Achieving Zero Trust
- Did you play Pokémon Go? You didn't know it, but you were training AI to map the world
Using SRV records for redundancy and server discovery in Presence, Jabber and CUCM
Using SRV records for redundancy and server discovery in Presence, Jabber and CUCM
As most of the time, I stumbled across this topic, and I was really thinking about posting something about UCCX again, but things change dont they. Especially when working on tightly scoped, well documented and designed implementation, ;-).
I have never really given the possibilities of using SRV records much thought, so most of this post is a bit of research for myself as well
Before I go into SRV records, here is a definition, for those who are not yet familiar with the mechanism.
Service | DNS SRV Record |
---|---|
Cisco WebEx Messenger | _xmpp-client._tcp |
Cisco Unified Presence | _cuplogin._tcp |
Cisco Unified Communications Manager TFTP | _cisco-phone-tftp._tcp |
Cisco Unified Communications Manager CCMCIP | _cisco-phone-http._tcp |
Cisco TelePresence Video Communication Server (Internal) | _sip._tcp.internal |
Cisco TelePresence Video Communication Server (External) | _sip._tcp.external |
Cisco Jabber Video for TelePresence | _ciscowtp._tcp |
Cisco WebEx TelePresence | _ciscowtp._tcp |
(On Jabber TFTP and CCMCIP will not be used as they are pushed out by CUPS as soon as a user logs in, through CCMCIP profile and TFTP server settings in CUPS).
Applications:
As you can see below, the SIP trunk configured on the CUCM side, is configured as presence.lala.com.au. The Destination address is SRV is ticked.
The DNS SRV record for _sip._tcp is set up to point to two different CUPS servers, with varying priority.
Test redundancy and SRV records out, by issuing:
nslookup
> set type=srv
> _sip._tcp.presence.lala.com.au <—–this is your SRV destination address
Server: lala.com.au
Address: 89.10.10.10
_sip._tcp.presence.lala.com.au SRV service location:
priority = 20
weight = 0
port = 5060
svr hostname = bun-cups-sub.lala.com.au
_sip._tcp.presence.lala.com.au SRV service location:
priority = 10
weight = 0
port = 5060
svr hostname = bun-cups-pub.lala.com.au
lala.com.au nameserver = s1.lala.com.au
lala.com.au nameserver = s2.lala.com.au
bun-cups-pub.lala.com.au internet address = 10.11.255.21
bun-cups-sub.lala.com.au internet address = 10.11.255.41
s1.lala.com.au internet address = 89.10.10.10
s2.lala.com.au internet address = 89.10.10.10
as you can see, the SRV record returns two servers, one CUPS subscriber and one CUPS Publisher.
Automatic Server discovery (Jabber for Windows only)
It is my understanding that this will also use _sip._tcp, but according to the
> _cuplogin._tcp.lala.com.au
Server: s2.lala.com.au
Address: 131.172.2.2
_cuplogin._tcp.lala.com.au SRV service location:
priority = 20
weight = 0
port = 8443
svr hostname = bun-cups-sub.lala.com.au
_cuplogin._tcp.lala.com.au SRV service location:
priority = 10
weight = 0
port = 8443
svr hostname = bun-cups-pub.lala.com.au
lala.com.au nameserver = s1.lala.com.au
lala.com.au nameserver = s2.lala.com.au
bun-cups-pub.lala.com.au internet address = 10.11.255.21
bun-cups-sub.lala.com.au internet address = 10.11.255.41
s1.lala.com.au internet address = 89.172.2.10
s2.lala.com.au internet address = 89.172.2.11
>
Hope this post is usefull, and inspired you to look into the possibilities that SRV record can provide