I actually sat down last night to try to figure out “the best” way to interface PJ-SIP to VOIP Innovations.
BACKGROUND: Unlike other ITSPs, VI uses different discontiguous servers for their “inbound” and “outbound” services, and they also move the IP addresses they use depending on your specific rate plan. In addition, VI uses IP Authentication, allowing you to set up as many server locations as you could want. This flexibility comes at a price, and that price is the many-to-many relationship that the configuration ends up using.
Here’s how I set up VI to maximize their services and ensure the best outcome for my dialing needs.
One of the things that makes this work is understanding that inbound calling and outbound calling are almost entirely unrelated. Calls coming from your ITSP can come from almost anywhere, as long as you know where the anywhere is. Outbound calls, on the other hand, have to go to one place (at a time). Because of this disconnect, it’s often hard to get the full range of functionality from your ITSP.
The easy way: Use Chan-SIP and set up User and Peer connections for each of the addresses involved. This can get a little confusing, though, since the “host=” line for the “User” section of the configuration is often different than the “Peer” host address. Tried that. Lost the ball many times before I got it to work. It sounds easy, but it rapidly gets convoluted. Also, the “type=friend” thing doesn’t work very well with VI since there is no combination where the inbound and outbound actually use the same IP address for the primary connections.
Next way: Use PJ-SIP and set up one trunk for each “outbound” (from you) address. This allows you to have all four (or whatever) possible destinations for your connections and allows you to prioritize the sending of your calls to your ITSP.
Here’s the short version (I’ll try to get pictures later):
- Download the VI PDF File about VOIP IP Addresses. This document includes all of their connection addresses for each of their rate plans. Find yours. There are four or five IP addresses across that are “your” termination destinations for sending calls.
- Add a new PJ-SIP Trunk and name it something obvious like “VOIP_INNOVATIONS_1”.
- In the PJ-SIP settings, select the “General” tab
- Set the Authentication Type to “None”.
- Set the SIP Server to the “Primary” IP for your rate group termination. Mine is “Conversational”, so mine primary termination address is “64.136.174.30”.
- Set the SIP Server Port to 5060.
- Go back to the top and select the “Advanced” tab.
- Find the “Match (Permit)” field. Fill in all of the addresses from the “Origination” row that applies to you (if you are the Advanced Server, use the second line). I use “copy/paste” and then modify each one by appending “/32,” (the netmask for the server and a comma) since this is a Comma Separated list of addresses to expect calls from.
- Everything else is usually OK.
So, with that done, “Submit” your work.
Next, re-open your VI trunk and use the “Duplicate” option to make a copy. Change the name so that it’s not silly (not “*_COPY_1”) and once again go to PJ-SIP options General tab. Change the Server IP to the Secondary address (“64.136.173.22” in mine). Submit, reopen, and Duplicate.
Repeat for each of the addresses. At the end of the process, you will have four or five independent trunks that you can use for your outbound calling.
I’m writing this down for two reasons:
- We (the forum) get questions from time to time about using ITSPs that have multiple IP addresses.
- I can never remember whether “Origination” means originating here or at the ITSP.
Hope that helps.