NCS 416 Paul Brennan Mohammed Haque IAX2 Trunking



Similar documents
Implementation of a Fully Functional VoIP Server Inside of a Campus Network

Integrating Asterisk FreePBX with Lync Server 2010

Mediatrix 3000 with Asterisk June 22, 2011

OfficeMaster Gate (Virtual) Enterprise Session Border Controller for Microsoft Lync Server. Quick Start Guide

Trunks User Guide. Schmooze Com Inc.

Peer-to-Peer SIP Mode with FXS and FXO Gateways

Configuring Positron s V114 as a VoIP gateway for a 3cx system

General Guidelines for SIP Trunking Installations

Asterisk SIP Trunk Settings - Vestalink

1) How do I setup my SIP trunk for inbound/outbound calling? We authenticate IP-PBX SIP Trunking traffic by:

AudioCodes Mediant 1000 Configuration Guide

IP PBX. SD Card Slot. FXO Ports. PBX WAN port. FXO Ports LED, RED means online

Micronet VoIP Solution with Asterisk

PBX Setup Basic setup procedures

Setup Guide: on the MyNetFone Service. Revision History

IP-PBX Quick Start Guide

General Guidelines for SIP Trunking Installations

Configuring NET SatisFAXtion with Avaya IP Office

Grandstream Networks, Inc. UCM6510 Basic Configuration Guide

GW400 VoIP Gateway. User s Guide

Table of Contents. Confidential and Proprietary

Connecting with Vonage

Digium Switchvox AA65 PBX Configuration

Configuration of Applied VoIP Sip Trunks with the Toshiba CIX40, 100, 200 and 670

nexvortex SIP Trunking Implementation & Planning Guide V1.5

Grandstream Networks, Inc.

ACD: Average Call Duration is the average duration of the calls routed bya a VoIP provider. It is a quality parameter given by the VoIP providers.

Direct IP Calls. Quick IP Call Mode

IP PBX SH-500N

FreePBX R14. SIP Trunk Provisioning Guide

Integrating VoIP Phones and IP PBX s with VidyoGateway

ICE 008 IP PBX. 1. Product Information New Mini PBX Features System Features

AT&T IP Flex Reach/ IP Toll Free Configuration Guide IC 3.0 with Interaction SIP Proxy

SIP Trunking Quick Reference Document

Special-Purpose Connections

Practical Guide. How to setup VoIP Infrastructure using AsteriskNOW

Internet Telephony Terminology

Copyright ZYCOO All Rights Reserved 1 / 8

CompleteSBC: Getting Started Guide

intelligence at the edge of the network EdgeBOX V 4.5 VoIP How To

TEL 500 WRITE UP WEEK 8 FREE PBX SIP LAB SUBMITTED TO: PROF. RONNY BULL BY: ANUSHA ALIGAPALLY

Quick Installation Guide

Avaya IP Office SIP Trunk Configuration Guide

Configuring Quadro IP PBXs with "SIP Connect"

NetVanta 7100 Exercise Service Provider SIP Trunk

Using FreePBX with Twilio Elastic SIP Trunking

IP Telephony v1.0 Scope and Sequence. Cisco Networking Academy Program

Implementing Cisco IOS Telephony and Unified Communications Express (IITUCX)

Table of Contents. Cisco Mapping Outbound VoIP Calls to Specific Digital Voice Ports

VoIPon Tel: +44 (0) Fax: +44 (0)

Businesses Save Money with Toshiba s New SIP Trunking Feature

CVOICE Exam Topics Cisco Voice over IP Exam # /14/2005

FOR COMPANIES THAT WANT TO EXPAND AND IMPROVE THEIR TELEPHONE SYSTEM

AT&T SIP Trunk Compatibility Testing for Asterisk

EarthLink Business SIP Trunking. Switchvox SMB 5.5 & Adtran SIP Proxy Implementation Guide

Q&A. DEMO Version

Dramatically simplifying voice and data networking HOW-TO GUIDE. Setup VoIP & IP-PBX. edgebox version Document revision 1.1

EarthLink Business SIP Trunking. NEC SV8100 IP PBX Customer Configuration Guide

Implementing Cisco IOS Telephony and Unified Communications Express (IITUCX)

Asterisk: A Non-Technical Overview

BroadCloud Adtran Total Access Quick Start Guide

Application Note Configuring the Synapse SB67070 SIP Gateway for Broadvox GO! SIP Trunking

Configuration Notes 290

VoIP Application Note:

TECHNICAL NOTE. Attaching the MAX IP SIP Phone to a Cisco CallManager Switch

Troubleshooting This document outlines some of the potential issues which you may encouter while administering an atech Telecoms installation.

ACCELERATOR 6.3 ASTERISK LINES INTEGRATION GUIDE

XO SIP Service Customer Configuration Guide for Interactive Intelligence Customer Interaction Center (CIC) with XO SIP

EZLoop IP-PBX Enterprise SIP Server

nexvortex Setup Guide

How to Configure the Avaya IP Office 6.1 for use with Integra Telecom SIP Solutions

A Guide to Connecting to FreePBX

VoIP Laboratory A Creating a local private telephony network in a rural community

Introduction to VOIP. Stephen Okay Abdus Salam Int l Center for Theoretical Physics Trieste, Italy, February 21, 2007

Switchvox. Technical Application Notes

White paper. SIP An introduction

SIP Trunk Configuration Guide. using

- Basic Voice over IP -

The Telecom Terminal Solution

Connecting Your Enterprise With Asterisk: IAX to Carriers. Dayton Turner Voxter Communications

Introduction to VoIP Technology

Asterisk Fast Start. The Asterisk Fast Start course is a three-day course. The class will consist of a combination of lectures and lab exercises.

Application Notes for Avaya IP Office 7.0 Integration with Skype Connect R2.0 Issue 1.0

3CX Guide sip.orbtalk.co.uk

Atcom MP01 and Elastix Server

Acano solution. Third Party Call Control Guide. March E

SIP Trunking with Elastix. Configuration Guide for Matrix SETU VTEP

Configuration Notes 283

Grandstream Networks, Inc. How to Integrate UCM6100 with Microsoft Lync Server

Design of PSTN-VoIP Gateway with inbuilt PBX & SIP extensions for wireless medium

Implementing Cisco IOS Unified Communications (IIUC)

VoIP 110R/200R/422R/404R/440R. User s Guide

Release Notes for NeoGate TA410/TA X

A Comparative Study of Signalling Protocols Used In VoIP

VoIP H.323 Series. VoIP Gatways: VoIP 422/404/440/800 VoIP Routers: VoIP 404R/440R/200R/110R. Quick Setup Guide

Broadband Phone Gateway BPG510 Technical Users Guide

Device SIP Trunking Administrator Manual

Intercommunication between two MyPBX (via VoIP Trunk)

Transcription:

NCS 416 Paul Brennan Mohammed Haque IAX2 Trunking

Abstract This project explores setting up a server to interface between the PSTN and multiple Asterisk PBX systems. The server interfaces with the PSTN with a set of analog Digium FXO cards, one 4 port and 8 port. The server interfaces with the PBX systems through the IAX2 protocol, or the Inter-Asterisk Exchange protocol, Version 2. The server itself runs the AsteriskNOW distribution, which installs the Asterisk PBX service and the FreePBX management interface. Through this interface, we set up not only the trunks, but also a set of rules to route calls through the system to the various trunks. The IAX2 trunks could route in either direction, but the analog cards could only call out due to the dial out only lines provided by SUNYIT. After setup and configuration, the system was demoed to a class of telephony students, who were able to connect to and utilize the server with the help of our documentation. Introduction These days setting up a PBX server for your school, place of business, or home is relatively cheap. You can set up a PBX server using Asterisk on virtually any machine, or even on a virtual machine. Setting up your own PBX server opens up a world of possibilities in telephony, and can even save you money over traditional PBXs. The AsteriskNow distribution, built on top of CentOS, can deliver Asterisk and FreePBX, making an easy to use and powerful environment. For some, the biggest reason to implement this system may be cost, since this free software can run on relatively cheap hardware. Since Asterisk harnesses the power of VoIP, you can use the existing data network to set up hard and soft phones. A few lines from the phone company can be shared across an entire company, while your PBX handles all internal calls. The flexibility allows you near endless possibilities, such as set up hunt groups dial a whole department with a single number. With your own PBX server, there isn t really a limit on how many extensions you can set up, or what you can do with those extensions. Arguably the most important tool is the ability to set up trunks, which to allow you to connect to different telephone networks and PBX servers. These trunks enable multiple call to be routed to and from outside networks simultaneously, and really increase the practicality of an Asterisk system.

Procedure Setting up AsteriskNow is as easy as burning an ISO to a disc and popping it into a computer. Once the disc is in the computer, boot up and follow the easy to understand direction. The install goes over simple things like setting up your keyboard layout, setting up your timezone, choosing how to partition your disk, and creating a root password. After rebooting, there was still some tweaking we had to do. For security reasons, we set up separate user and root accounts for each of us, and disabled root logins over SSH. We configured the network settings, assigning a static address of 10.107.6.11, as to not conflict with an old trunk server set up at 10.107.6.10. We also hooked up the to a network KVM, since it was mounted on a rack enclosure. However, this KVM was quite buggy, so we used SSH or the web interface as much as possible. Setting up trunks allowed our server to connect to the roughly 20 PBXs in the class, as well as the campus POTS. A trunk provides a shared connection to another server or network, and allows for inbound and outbound calls to the outside world, and its not too hard to set one up. A trunk is essentially a bundle of connections, and allows multiple calls to routed to outside the PBX. When setting up a trunk, Asterisk provides a few options: a) SIP Trunk b) DAHDI Trunk c) Zap Trunk d) IAX2 TRUNK e) ENUM Trunk f) DUNDI Trunk Our project mostly be explored IAX2 and Zap (DAHDI compatibility), and we will go in depth

into the advantages and disadvantages of IAX2, as well as its basic function. After the initial setup, we configure both IAX2 and the FXO ports. IAX2 is a VoIP protocol that allows the Asterisk servers to interconnect, in this case allowing the virtual machines set up by the students in the class to talk to each other. IAX2 will need to be configured on both sides of the trunk connection. Because of this, all Asterisk machines connecting to the trunk will need to be registered to allow connections to be established, and facilitate the proper routing of calls. Both machines connected to the trunk must have the IP address of the other, as well as an account set up to authenticate the connection. In testing, the two of us were able to test the IAX2 trunks to our PBXs with no issues. When it came time to set up the student's trunks, we used DNS records to point to the second IP each student's assigned range. For the purposes of the class, we assigned each student a number, 1-22, and used those numbers in trunk and route names. We set up the trunk server's side of the connection, and informed the student's of the connection convention they were to use. If the students correctly utilize the scheme we set up, they should be able to send and receive calls between extensions on each of our PBXs. IAX2 offers several advantages over other VoIP protocols when it comes to trunking. With IAX2, signaling and voice can be sent over the same connection (RFC 5456). It accomplishes this by setting a reliability flag when signaling information is sent, which changes the header slightly and enforces reliable transfer on the application layer. When that flag is set, sequence numbers are used to ensure no loss, much like in TCP, although the packet is still transmitted via UDP. When the flag is not set, and voice is being transmitted, timestamps are used to drop out of order packets, much like in RTP. Other protocols, such as SIP, merely negotiate a RTP connection between endpoints. However, IAX2 performs all communication over a single UDP connection, which has the added benefit of allowing for easy transition across

NATs. In fact, IAX2 can even concatenate multiple voice packets into one trunk packet, cutting down network overhead by eliminating redundant headers. All this makes it the ideal protocol for connecting the Asterisk boxes. As for the interface with the PSTN, the server is equipped with 12 FXO ports, or Foreign exchange Office ports. These ports connect to FXO wall ports, and essentially allow the server to act like a telephone, as it can detect a ring, and send on and off hook signals back to the PSTN, and listen or broadcast sounds across the line. The server can be set up to listen for a ring, in which case it could forward the call to based on some predefined rule, such listen for further DTMF signals to forward the call. However, our connection to the campus POTS allowed us to only dial out, but this allowed for phones connected to the trunk server (through their local Asterisk PBX) to connect to the PSTN. To ensure the lines were working, we tested their connection with a standard phone. At first it seemed that all the provided lines were dead, but it turned out we were using a digital phone (although not a VoIP phone...), the kind used in many offices. When we retested with a standard analog phone, we found all but one line worked. There was also the small issue of cord length. At first the server had been racked, but after we noticed the cords were to short to connect the server to the phone jacks, we had to de-rack the server and move to closer to the jacks. We also had some issues getting one of the Digium cards to register, and after some troubleshooting, moving it to a different PCI slot solved the issue. Once the ports had been recognized through DAHDI (Digium/Asterisk Hardware Device Interface), we had to do something with them. We put all the active ports into a group, and then set up a trunk to use that group. This part took a bit of trial and error to figure out, but once we did it worked like a charm. When a call was placed to that trunk, it would cycle through the group until it found an open line, and it would then dial out across that line. That brings us to the next step, routes. Trunks simply set up connections, routes allow those connections to be used.

In testing, we set up routes on our class PBXs to forward calls of a certain pattern to the trunk server. Once the call reached the trunk server, it was matched to a rule that forwarded it to the other PBX. Through this system of forwarding, a call from a phone connected to one PBX could call a phone connected to the other PBX. We were able to accomplish this with relative ease, as it was easy to coordinate on this small scale. To make calls across the DAHDI trunk, a route was set up with three patterns to match to. To dial an on campus number, the pattern 7XXX was used. To dial off campus, the 7-digit pattern was used, with the addition of 8 used to escape the campus network. The rule would prepend an 8 to standard 7-digit numbers, and would accept numbers that had already prepended an 8. With these rules in place, Paul was able to call both Nick Merante's office and Ronny's cell phone. Calling a student's PBX was a bit trickier. We decided using a scheme similar to the campus's escape digit would work. Each student was assigned a three digit code, ranging from 101-122. The server would match any number that began with one of these codes, strip the code with a prefix, and call the remaining destination number on the associated trunk. For example, to call extension 3000 on student-01's PBX, the server would match on the destination 101-3000, and call 3000 on the trunk for student-01. With this new scheme, student's could set up routes on their own machines that either match numbers beginning with that range, or use some other escape code to send a number to the trunk server to be processed. To wrap up the project, after everything was set up and tested, we produced a lab explaining briefly how the system works and how the students are to connect to and use it. As long as the student's follow the conventions set up for them, which were outlined in the lab, then it should be a rather straight forward lab for them to complete.

Conclusion Overall, this project was not too difficult from start to finish. There were a few hiccups, but setting up simple trunks and routes was rather easy. Deciding on conventions to bring the project up to the classroom scale took some thought, but implementing it was mostly just tedious. The last set of issues we had were installing new FXO cards into our physical servers which Paul took care of. After that, all we had to do is come up with the lab portion, which was not too difficult. This project was more than a project because it provided us with a real world experience on how to set up a trunk. Initially, it sounded a bit difficult and wasn t sure where to start but as the project progressed, it became much simpler. By understanding how a trunk works, how to setup a trunk, advantages and disadvantages of different trunking protocol, you are able to better manage and set up an entire phone system if you needed to. Setting up routes within the trunk allowed us to view Asterisk as more than just a system for local connections, but as switch within a larger network. It began to put things in perspective, and let us see how both peer and hierarchical networks could be set on any scale. With the flexibility and cost of Asterisk, it is clear why VoIP is becoming an increasingly cheap yet powerful solution. This was a great topic, a good project that has a real world application.

Works Cited Spencer, Mark. "IAX: Inter-Asterisk EXchange Version 2." Rfc-editor.org. N.p., Feb. 2010. Web. 20 Nov. 2012. <http://www.rfc-editor.org/rfc/rfc5456.txt>. Madsen, Leif, Jim Van. Meggelen, and Russell Bryant. Asterisk: The Definitive Guide. Sebastopol, CA: O'Reilly Media, 2011. Print. Spencer, Mark. "IAX versus SIP." Voip-Info. N.p., 5 July 2004. Web. <http://www.voip-info.org/wiki/view/iax+versus+sip>. "PBX in a Flash for Newbies." Connecting Two Asterisk PBX Servers Using an IAX2 Trunk -. N.p., n.d. Web. 15 Nov. 2012. <http://www.cadvision.com/blanchas/asterisk/iax2trunk.html>. "Asterisk Config Iax.conf." - Voip-info.org. N.p., n.d. Web. 15 Nov. 2012. <http://www.voip-info.org/wiki/view/asterisk config iax.conf>. "IAX." - Voip-info.org. N.p., n.d. Web. 16 Nov. 2012. <http://www.voip-info.org/wiki/view/iax>.