Perimeta has a feature named dynamic peer routing which allows the Perimeta to automatically select the correct adjacency for an outbound call based on the destination IP address.
Before this existed, you needed to update the call policy set every time you add a new PBX / SIP trunk, which could become tiresome really quickly. But with dynamic peer routing, you can configure the Perimeta to look at the destination IP (e.g. 10.20.30.40) then scan through the adjacencies to find the one configured with 10.20.30.40 as its dynamic-routing-domain-match, and you’re all set.
I’m sure many of the technicians out there will know about this topic already, but I learned something new today, which I figured I’d share with you. (Only step 3 below was news to me, but I’ll start at the beginning.)
Today I was setting up a new Perimeta, and I couldn’t get it to work. For some reason the SBC just wasn’t noticing my dynamic peer match, and I couldn’t figure out why.
Here’s what I had configured:
1. On the adjacency itself I’d added the following line, which tells the SBC which adjacency it should match for this particular IP address.
2. In the active call-policy-set, in an appropriate place (for me, this was in the AccessDomains table) I had an entry that invokes dynamic routing:
entry 301 match-domain * dst-adjacency dynamic-peer-routing action complete
And yet it wasn’t working. After searching through a handful or known-working configuration files, I eventually discovered, that you need to configure this in a third location.
My adjacency was using the ManagedAccess SIP interop-profile (since it was a SIP connection to a PBX), which included the line:
What I hadn’t realized until today, was that you also need to configure dynamic-peer-routing as a feature within the interop settings of your adjacency. In my case it made most sense to add it to the ManagedAccess interop-profile, as follows:
sip interop-profile ManagedAccess description "for use with a managed adjacency" header-settings via passthrough-inbound registration fast-register tcp fully-supported registration min-expiry-time 3600 dynamic-peer-routing
If you’re a non-technical person reading this, then I’m impressed you stuck with me this long. If you’re a technical person and you already knew all this, then you can feel all smug and superior for being better informed than me. Otherwise, I hope you find this useful, and that one day it will pop into your mind at the most opportune moment when you are troubleshooting this kind of problem.
If you’re in the mood to learn more about the Perimeta, be sure to check out our message manipulation guide for beginners.