Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • For TLS to work, a Trusted CA (Certificate Authority) is required. For this interop, GoDaddy is used as a Trusted CA.
  • Add an entry in the Public DNS to resolve Ribbon SBC Core FQDN to Public IP Address.
  • In the trust store of the SBC, ensure you have the following certificates as part of the root certificate trust.
    • GTS Root R1
    • GlobalSign R2 Root CA (if required)
Info
titleNote

Refer to Google Voice SIP Link documentation for other compatible CAs.

...

Code Block
set profiles signaling sipAdaptorProfile GOOGLE_ADP state enabled
set profiles signaling sipAdaptorProfile GOOGLE_ADP advancedSMM disabled
set profiles signaling sipAdaptorProfile GOOGLE_ADP profileType messageManipulation
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 1 applyMatchHeader one
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 1 criterion 1 type message
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 1 criterion 1 message
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 1 criterion 1 message messageTypes requestAll
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 1 action 1 type header
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 1 action 1 operation add
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 1 action 1 headerPosition last
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 1 action 1 from
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 1 action 1 from type header
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 1 action 1 from value <trunk_secret_key>
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 1 action 1 to
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 1 action 1 to type header
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 1 action 1 to value X-Google-Pbx-Trunk-Secret-Key
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 2 applyMatchHeader one
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 2 criterion 1 type message
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 2 criterion 1 message
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 2 criterion 1 message messageTypes request
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 2 criterion 1 message methodTypes [ cancel invite ack ]
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 2 criterion 2 type header
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 2 criterion 2 header
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 2 criterion 2 header name request-line
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 2 criterion 2 header condition exist
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 2 criterion 2 header numberOfInstances number 1
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 2 criterion 2 header numberOfInstances qualifier equal
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 2 action 1 type token
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 2 action 1 operation regsub
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 2 action 1 from
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 2 action 1 from type value
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 2 action 1 from value trunk.sip.voice.google.com
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 2 action 1 to
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 2 action 1 to type token
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 2 action 1 to tokenValue urihostname
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 2 action 1 regexp
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 2 action 1 regexp string "^((25[0-5]|(2[0-4]|1[0-9]|[1-9]|)[0-9])(\.(?!$)|$)){4}$"
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 2 action 1 regexp matchInstance one
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 3 applyMatchHeader one
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 3 criterion 1 type message
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 3 criterion 1 message
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 3 criterion 1 message messageTypes request
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 3 criterion 1 message methodTypes [ cancel invite ack ]
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 3 criterion 2 type header
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 3 criterion 2 header
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 3 criterion 2 header name To
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 3 criterion 2 header condition exist
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 3 criterion 2 header numberOfInstances number 1
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 3 criterion 2 header numberOfInstances qualifier equal
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 3 action 1 type header
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 3 action 1 operation regsub
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 3 action 1 headerInfo fieldValue
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 3 action 1 from
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 3 action 1 from type value
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 3 action 1 from value trunk.sip.voice.google.com
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 3 action 1 to
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 3 action 1 to type header
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 3 action 1 to value To
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 3 action 1 regexp
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 3 action 1 regexp string siplink.telephony.goog
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 3 action 1 regexp matchInstance one
commit

The SMM SIP_OPTIONS is used to modify the FQDN in request URI and To header of OPTIONS to Google specified FQDN, trunk.sip.voice.google.com

Code Block
set profiles signaling sipAdaptorProfile SIP_OPTIONS state enabled
set profiles signaling sipAdaptorProfile SIP_OPTIONS advancedSMM disabled
set profiles signaling sipAdaptorProfile SIP_OPTIONS profileType messageManipulation
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 1GOOGLE_ADP rule 4 applyMatchHeader one
set profiles signaling sipAdaptorProfile SIPGOOGLE_OPTIONSADP rule 14 criterion 1 type message
set profiles signaling sipAdaptorProfile SIPGOOGLE_OPTIONSADP rule 14 criterion 1 message
set profiles signaling sipAdaptorProfile SIPGOOGLE_OPTIONSADP rule 14 criterion 1 message messageTypes request
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 4 criterion 1 message methodTypes [ cancel invite ack ]
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 4 criterion 2 type header
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 4 criterion 2 header
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 4 criterion 2 header name request-line
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 4 criterion 2 header condition exist
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 4 criterion 2 header numberOfInstances number 1
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 4 criterion 2 header numberOfInstances qualifier equal
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 4 action 1 type token
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 4 action 1 operation regsub
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 4 action 1 from
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 4 action 1 from type value
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 4 action 1 from value trunk.sip.voice.google.com
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 4 action 1 to
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 4 action 1 to type token
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 4 action 1 to tokenValue urihostname
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 4 action 1 regexp
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 4 action 1 regexp string siplink.telephony.goog
set profiles signaling sipAdaptorProfile GOOGLE_ADP rule 4 action 1 regexp matchInstance one
commit

The SMM SIP_OPTIONS is used to modify the FQDN in request URI and To header of OPTIONS to Google specified FQDN, trunk.sip.voice.google.com

Code Block
set profiles signaling sipAdaptorProfile SIP_OPTIONS state enabled
set profiles signaling sipAdaptorProfile SIP_OPTIONS advancedSMM disabled
set profiles signaling sipAdaptorProfile SIP_OPTIONS profileType messageManipulation
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 1 applyMatchHeader one
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 1 criterion 1 type message
set profiles signaling sipAdaptorProfile SIP_SIP_OPTIONS rule 1 criterion 1 message
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 1 criterion 1 message messageTypes request
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 1 criterion 1 message methodTypes [ options ]
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 1 criterion 2 type header
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 1 criterion 2 header
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 1 criterion 2 header name request-line
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 1 criterion 2 header condition exist
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 1 criterion 2 header numberOfInstances number 1
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 1 criterion 2 header numberOfInstances qualifier equal
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 1 action 1 type token
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 1 action 1 operation regsub
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 1 action 1 from
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 1 action 1 from type value
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 1 action 1 from value trunk.sip.voice.google.com
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 1 action 1 to
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 1 action 1 to type token
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 1 action 1 to tokenValue urihostname
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 1 action 1 regexp
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 1 action 1 regexp string siplink.telephony.goog
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 1 action 1 regexp matchInstance one
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 2 applyMatchHeader one
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 2 criterion 1 type message
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 2 criterion 1 message
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 2 criterion 1 message messageTypes request
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 2 criterion 1 message methodTypes [ options ]
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 2 criterion 2 type header
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 2 criterion 2 header
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 2 criterion 2 header name To
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 2 criterion 2 header condition exist
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 2 criterion 2 header numberOfInstances number 1
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 2 criterion 2 header numberOfInstances qualifier equal
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 2 action 1 type header
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 2 action 1 operation regsub
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 2 action 1 headerInfo fieldValue
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 2 action 1 from
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 2 action 1 from type value
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 2 action 1 from value trunk.sip.voice.google.com
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 2 action 1 to
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 2 action 1 to type header
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 2 action 1 to value To
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 2 action 1 regexp
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 2 action 1 regexp string siplink.telephony.goog
set profiles signaling sipAdaptorProfile SIP_OPTIONS rule 2 action 1 regexp matchInstance one
commit

...

Code Block
set addressContext default zone GOOGLE sipSigPort 3 ipInterfaceGroupName LIF2 ipAddressV4 x.x.x.x portNumber 5061 transportProtocolsAllowed sip-tls-tcp
set addressContext default zone GOOGLE sipSigPort 3 tlsProfileName TLS_PROF
set addressContext default zone GOOGLE sipSigPort 3 tcpKeepaliveTime 100
set addressContext default zone GOOGLE sipSigPort 3 tcpKeepaliveInterval 60
set addressContext default zone GOOGLE sipSigPort 3 tcpKeepaliveProbes 2
set addressContext default zone GOOGLE sipSigPort 3 mode inService state enabled
commit

Trunk Group

Info
titleNote

IngressIpPrefix must be entered with Google Voice SIP Link's Signaling IP address.


Code Block
set addressContext default zone GOOGLE sipTrunkGroup GOOGLE_TG media mediaIpInterfaceGroupName LIF2
set addressContext default zone GOOGLE sipTrunkGroup GOOGLE_TG signaling timers sessionKeepalive 1800
set addressContext default zone GOOGLE sipTrunkGroup GOOGLE_TG signaling timers sessionMinSE 90
set addressContext default zone GOOGLE sipTrunkGroup GOOGLE_TG ingressIpPrefix x.x.x.x x
set addressContext default zone GOOGLE sipTrunkGroup GOOGLE_TG policy media packetServiceProfile GOOGLE_PSP
set addressContext default zone GOOGLE sipTrunkGroup GOOGLE_TG policy signaling ipSignalingProfile GOOGLE_IPSP
set addressContext default zone GOOGLE sipTrunkGroup GOOGLE_TG services natTraversal tcpKeepaliveTimer 240
set addressContext default zone GOOGLE sipTrunkGroup GOOGLE_TG signaling messageManipulation outputAdapterProfile GOOGLE_ADP
set addressContext default zone GOOGLE sipTrunkGroup GOOGLE_TG mode inService state enabled
commit

...