Index | Geschiedenis | Cursus IP | Intranet | Security | Firewall | Management | Voip | Html | Faq's
Inleiding | Taci
Google

Voip, een implementatie voorbeeld.

Binnen dit onderdeel van de site wordt een voorbeeld implementatie van Voip beschreven, gebaseerd op een centrale Asterisk server, een aantal verschillende telefoons, een ingaande pstn gateway, meerdere in en uitgaande Voip providers en een redundante internet connectie.
Doel van dit hoofdstuk is niet het beschrijven van de ultime voip oplossing, maar het geven van inzicht in de (on)mogelijkheden van een basis voip implementatie. Daarnaast kom je tijdens dit verhaal de goodies, maar ook de pijnpunten tegen.

De configuratie.

In de volgende lijst wordt een kort overzicht gegeven van de configuratie onderdelen zoals die gebruikt zijn voor de implemetatie. Hierbij wordt per onderdeel een korte motivatie gegeven. Deze lijst is echter verre van zaligmakend en zeker voor de hardware geldt dat er een keur aan apparatuur verkrijgbaar is. Voor iedereen geldt dat je hierin je eigen afwegingen moet maken.
  • Een Debian Linux server. De keuze is hierbij op Debian gevallen, omdat dit een stabiel, leveranciers onafhankelijk platform is, met een uitgebreide usercommunity. Doordat het platform leveranciers onafhankelijk is, is het risico dat er in de toekomst "rare" besluiten genomen worden, vrijwel uitgesloten. Daarnaast heeft het Debian platform een zeer goed packagemanagement systeem, waardoor je snel op meestal goed geintegreerde programmatuur kunt beschikken.
  • Asterisk. Dit is een Open source PBX systeem (info te vinden op http://www.asterisk.org/), met een zeer uitgebreide usercommunity, op de diverse sites op internet. Daarnaast wordt zo'n beetje alles ondersteund wat je maar kunt wensen.
  • Linksys SPA's (3000 en 2002). SPA's, ook wel ATA's (analog telephone adapters) genoemd, zorgen voor de koppeling van een standaard telefoon (middels een fxs poort), of een telefoon lijn (middels de fxo poort), naar de IP telefooncentrale. De Linksys SPA's (voorheen Sipura), zijn klein, handzaam en je kunt er configuratie technisch ongeveer alles mee doen, wat je zou kunnen willen. Helaas blijkt de support van Linksys in de praktijk wat te wensen over te laten, je zult je info vooral uit de verschillende userfora moeten halen.
  • Voip providers. Hiervan zijn er velen. In de voorbeelden hier gebruik ik Voipbuster en Voiceworks. Hierover later meer als we een dialingplan gaan maken.
  • Een tweetal internet providers. Als je primair van internet gebruik maakt voor het voeren van telefoongesprekken, dan is het wellicht van belang een reserve provider te hebben. In de praktijk wordt een internet verbinding voor de meeste bedrijven steeds belangrijker. In de setup is gekozen voor een tweetal providers, die hun services over gescheiden netwerken leveren.
  • Aanpassingen op het netwerk. Voor de meeste netwerken geldt, dat lokale aanpassingen aan het netwerk niet strikt noodzakelijk zijn (mits je een goed en stabiel functionerend netwerk hebt, met een niet al te hoge load). Wil je echter voorkomen dat bij uitval van delen van het netwerk, ook je telefonie infrastructuur uitvalt, dan is enige aanpassing gewenst.
  • Installatie van Asterisk op Debian (notities).
    1. Pas de file /etc/default/asterisk aan, zodat asterisk boot, als je het e.e.a. stabiel hebt.
    2. Gebruik je de debian asterisk versie, let er dan op dat bijvoorbeeld de sound files te vinden zijn onder /usr/share/asterisk/sounds/ en niet zoals default?? /var/lib/asterisk/sounds. rest volgt.......

Voorbeeld configuratie instellingen Voiceworks

Zorg ervoor dat verkeer op udp poort 5060 doorgezet wordt naar je Asterisk server. Stel vervolgens de volgende zaken in:
sip.conf
[general]
context=from-outside
port=5060
bindaddr=0.0.0.0
srvlookup=yes
localnet=10.0.0.0/255.0.0.0
tos=lowdelay
disallow=all
allow=ulaw
allow=alaw
allow=gsm
allow=g729
maxexpirey=180
defaultexpirey=160
tos=reliability
; test
;canreinvite=no
rtpholdtimeout=300 ; Beeindig call na 300 sec call in de wacht.
rtptimeout=30      ; na deze tijd call beeindigen.

register => wsprx01.xxxxxxx:passwd@wsprx01.voiceworks.nl/12345678

[sip_voiceworks]
type=friend
secret=passwd
username=wsprx01.xxxxxxx
fromuser=wsprx01.xxxxxxx
host=wsprx01.voiceworks.nl
qualify=yes
insecure=very
canreinvite=no

extensions.conf
[macro-alleToestellen]
 exten => s,1,LookupCIDName
 exten => s,2,Dial(SIP/00&SIP/01&SIP/03&SIP/04&SIP/08,60,t)
 exten => s,3,Congestion
 exten => s,4,Hangup


[from-outside]
 exten => 12345678,1,Macro(alleToestellen)             ; Voiceworks

Nog in opbouw

bernard@netwerkinformatie.com