Globale Einstellungen

Diese Einstellungen werden in der sip.conf im Abschnitt [general] vorgenommen. Hier sollen aber nur die wichtigsten und gebräuchlichsten Parameter beschrieben werden, weitere Erklärungen zu exotischen Parameter finden sich in der sip.conf.

I.d.R. ist es möglich, diese Einstellungen auch für einzelne User/Peers vorzunehmen.

context

context = Contextname

Bestimmt den Context im Dialplan für eingehende Anrufe.

context=default

allowguest

allowguest = [yes|no]

Anrufe von Gästen erlauben. Default: yes

allowguest=no

allowtransfer

allowtransfer = [yes|no]

Transfer von Verbindungen erlauben. Default: yes

allowtransfer=yes

realm

realm = Hostname

Der Systemname des Asterisk-Servers zur Authentifizierung. Default: asterisk oder ein ggf. in asterisk.conf eingestellter Systemname. Verwenden Sie hier den Host- oder Domain-Namen Ihres Servers.

realm=ast1.beispiel.de

bindport

bindport = Portnummer

Der UDP-Port, auf dem SIP-Verbindungen entgegengenommen werden sollen. Default: 5060.

bindport=5060

bindaddr

bindaddr = IP-Adresse

Die IP-Adresse, auf der SIP-Verbindungen entgegengenommen werden sollen. Default: 0.0.0.0 für alle Adressen des Rechners.

bindaddr=0.0.0.0

TOS-Flags (tos_sip, tos_audio, tos_video)

Für SIP können 3 TOS[81]-Parameter angegeben werden, um SIP-Paketen im Netzwerk eine andere Priorität als z.B. Datenübertragungen zu geben. Eine genauere Beschreibung steht unter tos. I.d.R. solle man diese Werte angeben (per Default nicht gesetzt):

tos_sip=cs3      ; für SIP-Pakete (Kommunikationsaufbau)
tos_audio=ef     ; für RTP-Audio-Pakete
tos_video=af41   ; für RTP-Video-Pakete

Sprach-Codecs (allow, disallow)

Mit allow und disallow können bestimmte Sprachcodecs erlaubt oder nicht erlaubt werden. Außer den bekannten Codecs gibt es all für alle. Dabei ist die Reihenfolge wichtig.

; Beispiel: alle Codecs ausser ilbc erlauben:
allow=all
disallow=ilbc

; Beispiel: nur die Codecs gsm und ulaw erlauben:
disallow=all
allow=gsm
allow=ulaw

language

language = Sprachkürzel

Stellt die Default-Sprache ein.

language=de

dtmfmode

dtmfmode = Modus

Verfahren, wie DTMF-Töne gesendet werden. Mögliche Werte:

rfc2833
(default) Informationsnachrichten nach RFC 2833 senden.
info
Als SIP INFO Nachrichten senden.
inband
DTMF-Töne „inband“ als Audio senden.
auto
Verwendet rfc2833 wenn möglich, sonst inband.
dtmfmode=rfc2833

videosupport

videosupport = [yes|no]

Schaltet die generelle Unterstützung von Video-Übertragungen ein (nicht getestet). Video-Unterstützung kann in den einzelnen Kanälen ausgeschaltet werden, kann aber dort nicht aktivierten werden ohne diese globale Einstellung.

videosupport=yes

maxcallbitrate

maxcallbitrate = Übertragungsrate

Bestimmt die maximale Übertragungsrate für Video-Telefonate in Kilobits pro Sekunde. Default: 384 (für 384 kb/s).

maxcallbitrate=384

g726nonstandard

g726nonstandard = [yes|no]

Stellt ein, dass, wenn ein Peer G726-32 Audio aushandelt, AAL2 packing statt RFC3551 packing verwendet wird (siehe doc/rtp-packetization.txt, ab Asterisk 1.4). Dies sollte nur eingestellt werden, wenn Sie Probleme mit z.B. Grandstream- oder Sipura-Telefonen haben, die fälschlicherweise G726-32 aushandeln, obwohl sie AAL2-G726-32 meinen.

g726nonstandard=no

rtpkeepalive

rtpkeepalive = Intervall

Sendet im in Sekunden angegebenen Intervall Keep-Alive-Pakete im RTP-Stream, um NAT[82]-Routen offenzuhalten.

rtpkeepalive=5   ; alle 5 Sekunden Keep-Alive-Pakete senden

t38pt_udptl

t38pt_udptl = [yes|no]

Erlaubt das Durchschleifen von T.38-Fax-Übertragungen von SIP- zu SIP-Kanälen. Default: no. Kann pro Kanal deaktiviert, aber nicht ohne diese Einstellung aktiviert werden.

t38pt_udptl=yes

register

register => user[:passwort[:authuser]]@host[:port][/extension]

Damit kann sich Asterisk als SIP-User bei einem anderen SIP-Proxy (z.B. einem externen Provider) registrieren.

Der Host ist entweder ein normaler Hostname, der per DNS aufgelöst werden kann, oder der Name eines Abschnitts, der weiter unten definiert ist.

Die Extension muss in der extensions.conf definiert sein, damit Anrufe von diesem Proxy empfangen werden können. Ohne Angabe der Extension gilt s.

; eingehende Anrufe von sip-provider.de an die Extension 999 leiten:
register => 123456:passwort@sip-provider.de/999

; eingehende Anrufe von sip-provider an die Extension 999 leiten:
register => 123456:passwort@sip-provider/999
[sip-provider]
...

externip

externip = IP-Adresse

Diese Einstellungen kann wichtig sein, wenn sich Asterisk hinter einem NAT-Router befindet. Die angegebene IP-Adresse wird in ausgehenden SIP-Nachrichten verwendet, damit die Empfänger unsere korrekte öffentliche Adresse wissen (statt unserer Adresse aus dem privaten Netz).

externip=123.45.67.89

externhost

externhost = Hostname

Wie externip, nur dass stattdessen der eigene öffentliche Hostname angegeben wird (der natürlich per DNS auflösbar sein muss).

externhost=hanspeter.dyndns.net

localnet

localnet = Adressraum

Gibt die lokalen, privaten Netzwerke an. Meist kann man folgendes verwenden (nach RFC 1918 und Zeroconf):

localnet=192.168.0.0/255.255.0.0
localnet=10.0.0.0/255.0.0.0
localnet=172.16.0.0/12
localnet=169.254.0.0/255.255.0.0

canreinvite

canreinvite = [yes|nonat|update|update,nonat]

Normalerweise versucht Asterisk den optimalsten „audio path“ zu wählen, d.h. bei 2 hergestellten Channels die beiden Gesprächsteilnehmer direkt zu verbinden ohne Asterisk als Mittelsmann. Das funktioniert aber nicht, wenn sich ein User in einem NAT befindet.

yes

(default) Normale Einstellung. Asterisk versucht, den kürzesten Audio-Pfad zu verwenden.

nonat

Nur umleiten, wenn sich die Teilnehmer nicht hinter einem NAT befinden (sofern das für Asterisk erkennbar ist).

update

Statt INVITE- UPDATE-Pakete zum Umleiten verwenden. Kann mit nonat als update,nonat kombiniert werden.

canreinvite=nonat

jbenable

jbenable = [yes|no]

Schaltet den „Jitter-Buffer“ für eingehendes Audio ein wenn nötig. Dadurch können unterschiedliche Latenzen von IP-Paketen ausgeglichen werden (siehe Jitter). Default: no

jbenable=yes

jbforce

jbforce = [yes|no]

Schaltet den Jitter-Buffer immer ein. (Natürlich muss auch jbenable aktiviert sein.) Default: no

jbforce=no

jbmaxsize

jbmaxsize = Länge

Maximale Größe des Jitter-Buffers in Millisekunden. Default: 200.

jbmaxsize=200

jbresyncthreshold

jbresyncthreshold = Länge

Resynchronisations-Rahmen des Jitter-Buffers. Default: 1000.

jbresyncthreshold=500

jbimpl

jbimpl = [fixed|adaptive]

Bestimmt, welcher Jitter-Buffer-Algorithmus verwendet wird. Bisher sind zwei Algorithmen implementiert:

fixed
(default) Der klassiche Jitter-Buffer mit fester Größe (immer jbmaxsize).
adaptive
Der neue Algorithmus mit variabler Größe (das ist auch der Jitter-Buffer von IAX2).
jbimpl=adaptive


[81] Type of Service, siehe ToS und DSCP

[82] Network Address Translation, wird häufig von Routern verwendet, die zwischen einem privaten Netz und dem öffentlichen Internet vermitteln