You da M.A.N. Voice, over IP, over stuff Lawrence Stewart Warren Harrop lastewart@swin.edu.au wazz@swin.edu.au Outline Network design & provisioning Network topology & hardware Network applications Security VoIP & Asterisk Future work & possibilities Live demonstration http://caia.swin.edu.au {wazz,lastewart}@swin.edu.au March 23th, 2005 Page 2
Design Initial design came quickly Request For Heckles (RFH) Define the standards that allow the network to inter-operate RFH 1,2 & 3 1 - WNIC proposed common numbering scheme 2 - Proposed services for routing and services network 3 - Telephony systems layout Implementation took much longer than planned http://caia.swin.edu.au {wazz,lastewart}@swin.edu.au March 23th, 2005 Page 3 Network topology Comprised of: FreeBSD 5.3 routers Mixed end hosts FreeBSD, Mac OS X, Windows, cisco IP phones Link layer 802.11g Switched ethernet ADSL http://caia.swin.edu.au {wazz,lastewart}@swin.edu.au March 23th, 2005 Page 4
Network topology (Simplified) Law & Shell Jim & Beth Home network Trem Wazz & Mon Gateway SWIN INTERNET http://caia.swin.edu.au {wazz,lastewart}@swin.edu.au March 23th, 2005 Page 5 Network topology (Swinnet) 136.186.49.123 136.186.49.47 136.186.49.77 (DHCP: 136.186.49.x) 136.186.49.35 SWIN INTERNET Swin Cisco VPN concentrator (136.186.13.6) http://caia.swin.edu.au {wazz,lastewart}@swin.edu.au March 23th, 2005 Page 6
Network topology (Swinnet) 10.254.1.6/24 136.186.49.47 136.186.49.77 (DHCP: 136.186.49.x) 10.254.1.3/24 SWIN INTERNET Swin Cisco VPN concentrator (136.186.13.6) http://caia.swin.edu.au {wazz,lastewart}@swin.edu.au March 23th, 2005 Page 7 Network topology Law & Shell 802.11g AP fxp1 10.254.7.129/25 10.254.7.1/25 Law & Shell ath0 10.254.1.7/24 http://caia.swin.edu.au {wazz,lastewart}@swin.edu.au March 23th, 2005 Page 8
Network topology Law & Shell http://caia.swin.edu.au {wazz,lastewart}@swin.edu.au March 23th, 2005 Page 9 Network topology Law & Shell http://caia.swin.edu.au {wazz,lastewart}@swin.edu.au March 23th, 2005 Page 10
Network topology Law & Shell http://caia.swin.edu.au {wazz,lastewart}@swin.edu.au March 23th, 2005 Page 11 Network Topology (Daniel) ath0 10.254.1.5/24 10.254.5.10/24 Trem http://caia.swin.edu.au {wazz,lastewart}@swin.edu.au March 23th, 2005 Page 12
Network topology (Jim & Beth) Xl0 10.254.6.1/24 Jim & Beth wi0 10.254.1.6/24 http://caia.swin.edu.au {wazz,lastewart}@swin.edu.au March 23th, 2005 Page 13 Network topology (Swin Gateway) SWIN 136.186.229.x/24 wi0 10.254.1.3/24 Gateway INTERNET http://caia.swin.edu.au {wazz,lastewart}@swin.edu.au March 23th, 2005 Page 14
Network topology (Wazz & Mon) 136.186.229.x/24 wi0 10.254.1.3/24 Gateway SWIN tun0 10.1.0.2/24 INTERNET tun1 10.1.0.1/24 tun0 Internet Wazz & Mon 10.254.4.1/24 http://caia.swin.edu.au {wazz,lastewart}@swin.edu.au March 23th, 2005 Page 15 Network topology (Wazz & Mon) http://caia.swin.edu.au {wazz,lastewart}@swin.edu.au March 23th, 2005 Page 16
Network topology So what does it look like when it's all on the same page? http://caia.swin.edu.au {wazz,lastewart}@swin.edu.au March 23th, 2005 Page 17 802.11g AP 10.254.7.1/25 fxp1 10.254.7.129/25 Law & Shell ath0 10.254.1.7/24 Xl0 10.254.6.1/24 Jim & Beth wi0 10.254.1.6/24 SWIN 136.186.229.x/24 wi0 10.254.1.3/24 Gateway tun0 10.1.0.2/24 10.254.5.10/24 ath0 10.254.1.5/24 Trem INTERNET tun1 10.1.0.1/24 tun0 Internet Wazz & Mon 10.254.4.1/24 http://caia.swin.edu.au {wazz,lastewart}@swin.edu.au March 23th, 2005 Page 18
Hardware List 4 x D-Link DWL-G520 (Hardware Version: B2) PCI Wireless card 1 x D-Link DWL-2100AP 108/54 Mbps Wireless Access Point 1 x D-Link DWL-G810 108/54 Mbps Wireless Bridge 1 x PCI to PCMCIA Cradle 1 x 802.11b PCMCIA Wireless Network Card 4 x 10/00 Ethernet Switches 6 x Intel 10/100 Pro/100 S NICs 5 x FreeBSD 5.3 Routers (Mix machine types) 1 x Dell Inspiron 600m laptop 2 x Cisco 7910 VoIP Phones 2 x Generic X100P FXO Cards 10+ x End Hosts... http://caia.swin.edu.au {wazz,lastewart}@swin.edu.au March 23th, 2005 Page 19 Network Applications VoIP SAMBA file sharing Mail http proxy (Caching & peered with swin) DNS NTP... http://caia.swin.edu.au {wazz,lastewart}@swin.edu.au March 23th, 2005 Page 20
Security IPSEC (IETF RFC2401) Secures links between boarder routers and gateway Uses ESP for IP encryption and raccoon for automated key exchange VTUN (http://vtun.sourceforge.net/) Used to create and secure an IP over UDP tunnel from Wazz & Mon to gateway http://caia.swin.edu.au {wazz,lastewart}@swin.edu.au March 23th, 2005 Page 21 802.11g AP 10.254.7.1/25 fxp1 10.254.7.129/25 Law & Shell ath0 10.254.1.7/24 Xl0 10.254.6.1/24 Jim & Beth wi0 10.254.1.6/24 SWIN 136.186.229.x/24 wi0 10.254.1.3/24 Gateway tun0 10.1.0.2/24 10.254.5.10/24 ath0 10.254.1.5/24 Trem INTERNET tun1 10.1.0.1/24 tun0 Internet Wazz & Mon 10.254.4.1/24 http://caia.swin.edu.au {wazz,lastewart}@swin.edu.au March 23th, 2005 Page 22
VoIP Voice over Internet Protocol http://caia.swin.edu.au {wazz,lastewart}@swin.edu.au March 23th, 2005 Page 23 VoIP using Asterisk Asterisk (http://www.asterisk.org/) Platforms Linux, FreeBSD, Mac OS X... Features Trunking between asterisk servers Hardware compatibility Digital: SIP & SKINNY Phones, ISDN line cards, T1/E1 line cards, GSM bridge Analog: Multi port FXO & FXS cards Call waiting, transfer, on hold (mp3s)... There are many more!... http://caia.swin.edu.au {wazz,lastewart}@swin.edu.au March 23th, 2005 Page 24
Asterisk feature list Asterisk Features * Fax Transmit and Receive (3rd Party OSS Package) Call Features * Flexible Extension Logic * Interactive Directory Listing * ADSI On-Screen Menu System * Interactive Voice Response (IVR) * Alarm Receiver * Local and Remote Call Agents * Append Message * Macros * Authentication * Music On Hold * Automated Attendant * Music On Transfer * Blacklists o Flexible Mp3-based System * Blind Transfer o Random or Linear Play * Call Detail Records o Volume Control * Call Forward on Busy * Predictive Dialer * Call Forward on No Answer * Privacy * Call Forward Variable * Open Settlement Protocol (OSP) * Call Monitoring * Overhead Paging * Call Parking * Protocol Conversion * Call Queuing * Remote Call Pickup * Call Recording * Remote Office Support * Call Retrieval * Roaming Extensions * Call Routing (DID & ANI) * Route by Caller ID * Call Snooping * SMS Messaging * Call Transfer * Spell / Say * Call Waiting * Streaming Media Access * Caller ID * Supervised Transfer * Caller ID Blocking * Talk Detection * Caller ID on Call Waiting * Text-to-Speech (via Festival) * Calling Cards * Three-way Calling * Conference Bridging * Time and Date * Database Store / Retrieve * Transcoding * Database Integration * Trunking * Dial by Name * VoIP Gateways * Direct Inward System Access * Voicemail * Distinctive Ring o Visual Indicator for Message * Distributed Universal Number Discovery (DUNDi ) Waiting * Do Not Disturb o Stutter Dialtone for Message * E911 Waiting * ENUM o Voicemail to email o Voicemail Groups o Web Voicemail Interface * Zapateller Computer-Telephony Integration * AGI (Asterisk Gateway Interface) * Graphical Call Manager * Outbound Call Spooling * Predictive Dialer * TCP/IP Management Interface Scalability * TDMoE (Time Division Multiplex over Ethernet) o Allows direct connection of Asterisk PBX o Zero latency o Uses commodity Ethernet hardware * Voice-over IP o Allows for integration of physically separate installations o Uses commonly deployed data connections o Allows a unified dialplan across multiple offices Codecs * ADPCM * G.711 (A-Law & -Law) * G.723.1 (pass through) * G.726 * G.729 (through purchase of commercial license through Digium) * GSM * ilbc * Linear * LPC-10 * Speex Protocols * IAX (Inter-Asterisk Exchange) * H.323 * SIP (Session Initiation Protocol) * MGCP (Media Gateway Control Protocol * SCCP (Cisco Skinny ) Traditional Telephony Interoperability * E&M * E&M Wink * Feature Group D * FXS * FXO * GR-303 * Loopstart * Groundstart * Kewlstart * MF and DTMF support * Robbed-bit Signaling (RBS) Types PRI Protocols * 4ESS * BRI (ISDN4Linux) * DMS100 * EuroISDN * Lucent 5E * National ISDN2 * NFAS http://caia.swin.edu.au {wazz,lastewart}@swin.edu.au March 23th, 2005 Page 25 Asterisk config files Examples extensions.conf exten => 400,1,Dial(Skinny/400@MonWar,20) exten => 400,2,Voicemail(u400) exten => 401,1,Voicemail(u400) exten => 410,1,Dial(Sip/MonWarSip) exten => 410,2,Dial(Sip/test) sip.conf [cisco] type=friend username=cisco secret=blah nat=yes http://caia.swin.edu.au {wazz,lastewart}@swin.edu.au March 23th, 2005 Page 26
Our implementation FXO http://caia.swin.edu.au {wazz,lastewart}@swin.edu.au March 23th, 2005 Page 27 Our implementation FXO http://caia.swin.edu.au {wazz,lastewart}@swin.edu.au March 23th, 2005 Page 28
Our implementation FXO http://caia.swin.edu.au {wazz,lastewart}@swin.edu.au March 23th, 2005 Page 29 802.11g AP 10.254.7.1/25 fxp1 10.254.7.129/25 Law & Shell ath0 10.254.1.7/24 Xl0 10.254.6.1/24 Jim & Beth wi0 10.254.1.6/24 SWIN 136.186.229.x/24 wi0 10.254.1.3/24 Gateway tun0 10.1.0.2/24 POTS Swin Exten 4558 10.254.5.10/24 ath0 10.254.1.5/24 Trem INTERNET tun1 10.1.0.1/24 tun0 Internet zap1 Wazz & Mon 10.254.4.1/24 http://caia.swin.edu.au {wazz,lastewart}@swin.edu.au March 23th, 2005 Page 30
CISCO IP phones http://caia.swin.edu.au {wazz,lastewart}@swin.edu.au March 23th, 2005 Page 31 SIP Software Phones Free download: http://xten.com/ http://caia.swin.edu.au {wazz,lastewart}@swin.edu.au March 23th, 2005 Page 32
SIP Software Phones http://caia.swin.edu.au {wazz,lastewart}@swin.edu.au March 23th, 2005 Page 33 Current capabilities POTS 0 to get an outside line Incoming call routing using menu Calls between hardware phones Calls between software SIP phones Calls between hardware and software SIP phones Voice mail http://caia.swin.edu.au {wazz,lastewart}@swin.edu.au March 23th, 2005 Page 34
Future work Warren needs a static IP or dynamic DNS QoS To allow SIP calls from the wider Internet Strict priority queuing Expansion Peering with other SIP providers http://www.engin.com.au Grenville has had success http://caia.swin.edu.au {wazz,lastewart}@swin.edu.au March 23th, 2005 Page 35 Demonstration http://caia.swin.edu.au {wazz,lastewart}@swin.edu.au March 23th, 2005 Page 36
802.11g AP 10.254.7.1/25 fxp1 10.254.7.129/25 Law & Shell ath0 10.254.1.7/24 Xl0 10.254.6.1/24 Jim & Beth wi0 10.254.1.6/24 Ndis0 10.254.1.25/24 VR SWIN 136.186.229.x/24 wi0 10.254.1.3/24 Gateway tun0 10.1.0.2/24 Ndis0 10.254.1.26/24 POTS 10.254.5.10/24 ath0 10.254.1.5/24 Trem INTERNET tun1 10.1.0.1/2 4 tun0 Internet Wazz & Mon 10.254.4.1/24 http://caia.swin.edu.au {wazz,lastewart}@swin.edu.au March 23th, 2005 Page 37