SIP trunk configureren: Asterisk en FreePBX

Kant-en-klare sip.conf, pjsip.conf en extensions.conf voorbeelden. Kopiëren, jouw gegevens invullen, klaar.

Wat je nodig hebt voordat je begint

Deze pagina is een technische configuratiegids: kopieerbare configuratieblokken voor wie zijn eigen Asterisk- of FreePBX-centrale aan CheapConnect wil koppelen. Geen marketingtekst, geen prijzen, gewoon de instellingen.

Zoek je meer achtergrond over prijzen, waarom een gratis trunk-account, of de basis-FAQ over de trunk? Kijk dan op onze VoIP Trunk-pagina. Deze gids gaat ervan uit dat je al een account hebt.

Wat je nodig hebt

• Een gratis CheapConnect trunk-account
• Je telefoonnummer (gebruikersnaam)
• Het wachtwoord uit je portal
• Asterisk 13+ of FreePBX

Trunk-account aanmaken

Optie A: chan_sip (sip.conf)

Werk je nog met het klassieke chan_sip-kanaal? Voeg dit blok toe aan sip.conf. Vervang 31851234567 door je eigen telefoonnummer in internationaal formaat, en jouwwachtwoord door het wachtwoord uit je portal.

[cheapconnect]
type=friend
host=sip.cheapconnect.net
port=5060
context=from-trunk
insecure=port,invite
qualify=yes
disallow=all
allow=ulaw
allow=alaw
allow=g729
allow=g722
username=31851234567
secret=jouwwachtwoord
fromuser=31851234567
fromdomain=sip.cheapconnect.net
nat=force_rport,comedia
dtmfmode=rfc2833

register => 31851234567:jouwwachtwoord@sip.cheapconnect.net/31851234567

De register =>-regel is verplicht. Zonder registratie weet CheapConnect niet waar inkomende gesprekken naartoe moeten, ook al kun je dan mogelijk nog wel uitbellen.

Optie B: PJSIP (pjsip.conf)

Draai je een recentere Asterisk-versie of ben je net begonnen? PJSIP is de aanbevolen stack sinds Asterisk 12 en de standaard in nieuwe FreePBX-installaties. PJSIP vereist meerdere secties: een endpoint, een aor, een auth-blok en een aparte registratie.

[transport-udp]
type=transport
protocol=udp
bind=0.0.0.0:5060

[cheapconnect]
type=endpoint
transport=transport-udp
context=from-trunk
disallow=all
allow=ulaw,alaw,g729,g722
outbound_auth=cheapconnect-auth
aors=cheapconnect-aor
from_user=31851234567
from_domain=sip.cheapconnect.net

[cheapconnect-auth]
type=auth
auth_type=userpass
username=31851234567
password=jouwwachtwoord

[cheapconnect-aor]
type=aor
contact=sip:sip.cheapconnect.net:5060
qualify_frequency=60

[cheapconnect-identify]
type=identify
endpoint=cheapconnect
match=sip.cheapconnect.net

[cheapconnect-reg]
type=registration
outbound_auth=cheapconnect-auth
server_uri=sip:sip.cheapconnect.net
client_uri=sip:31851234567@sip.cheapconnect.net
retry_interval=60

Het identify-blok zorgt dat Asterisk inkomende gesprekken van sip.cheapconnect.net herkent als afkomstig van deze trunk, ook zonder dat het inkomende bericht al geauthenticeerd is.

extensions.conf: inkomend en uitgaand routeren

De trunk staat, maar zonder dialplan gebeurt er niets. Dit voorbeeld vangt inkomende gesprekken op in context from-trunk (moet overeenkomen met de context= hierboven) en routeert uitgaande 0031-nummers via de trunk.

; --- Inkomend: gesprek van CheapConnect komt binnen op je nummer ---
[from-trunk]
exten => 31851234567,1,NoOp(Inkomend gesprek van CheapConnect)
 same => n,Goto(from-internal,600,1)
; 600 = ring group, IVR of toestel dat inkomende gesprekken afhandelt

; --- Uitgaand: nummers die met 0031 beginnen gaan via de trunk ---
[from-internal]
exten => _0031Z.,1,NoOp(Uitgaand gesprek naar ${EXTEN})
 same => n,Set(CALLERID(num)=31851234567)
; chan_sip:
 same => n,Dial(SIP/cheapconnect/${EXTEN:2})
; PJSIP (gebruik deze regel in plaats van de chan_sip-regel hierboven):
; same => n,Dial(PJSIP/${EXTEN:2}@cheapconnect)
 same => n,Hangup()

Gebruik altijd het internationale formaat (0031 of +31, niet 06 of 0) in je dial-patterns. CheapConnect verwacht binnenkomende call-outs in dat formaat.

FreePBX: trunk instellen via de admin-UI

Werk je liever met de FreePBX-webinterface in plaats van configuratiebestanden? Zo zet je de trunk op:

  1. Ga naar Connectivity > Trunks > Add Trunk en kies Add SIP (chan_pjsip) Trunk.
  2. Geef de trunk een Trunk Name, bijvoorbeeld cheapconnect.
  3. Op het tabblad pjsip Settings, vul bij Username en Secret je telefoonnummer en portal-wachtwoord in.
  4. Vul bij SIP Server in: sip.cheapconnect.net, poort 5060.
  5. Zet Register String aan en laat FreePBX deze automatisch opbouwen uit de bovenstaande gegevens.
  1. Sla de trunk op onder Submit, dan Apply Config.
  2. Ga naar Connectivity > Outbound Routes en maak een route met een Dial Pattern die 0031-nummers naar deze trunk stuurt (bijvoorbeeld 0031.).
  3. Ga naar Connectivity > Inbound Routes en koppel je CheapConnect-nummer aan de bestemming (ring group, IVR of toestel) waar inkomende gesprekken moeten landen.
  4. Test met een uitgaand gesprek naar je eigen mobiel, en bel vervolgens je CheapConnect-nummer om inkomend te testen.

Veelvoorkomende fouten

"asterisk" als useragent gebruiken

De naam asterisk is gereserveerd op ons platform. Staat je useragent nog op de standaardwaarde useragent=asterisk in sip.conf, wijzig deze dan naar iets unieks, bijvoorbeeld useragent=jouwnaamPBX.

Registratie lijkt te lukken, maar inkomend werkt niet

Vaak de oorzaak: STUN staat aan en de registratie is daardoor niet volledig correct, ook al ziet het er in de logs uit als geregistreerd. Controleer met sip show registry (chan_sip) of pjsip show registrations (PJSIP) of de status echt "Registered" is, niet alleen "Request Sent".

Firewall blokkeert RTP-verkeer

Poort 5060 (UDP) moet open staan voor signalering, en een RTP-poortbereik (standaard 10000-20000) voor de audio zelf. Sta beide toe in je firewall en, indien van toepassing, in je router se port forwarding.

Nummer niet in internationaal formaat

Gebruik 31851234567, niet 0851234567, als username, fromuser en in het register-commando. CheapConnect verwacht het internationale formaat zonder plusteken.

Nog geen trunk-account?

Maak een gratis account aan. Geen abonnement, geen aansluitkosten, je betaalt alleen gesprekskosten.

Account aanmaken

Meer over de VoIP Trunk, prijzen en FAQ →  |  Bekijk gesprekskosten →

Wil je meer weten over CheapConnect?

Bekijk onze meest gestelde vragen. Of neem contact met ons op.