Eingehende Anrufe über SIP werden nicht signalisiert

Master T

Neuer User
Mitglied seit
28 Aug 2006
Beiträge
22
Punkte für Reaktionen
0
Punkte
0
Hallo an alle,

es ist jetzt schon 3 Jahre her, dass ich mit Asterisk zu tun hatte. Damals habe ich per trixbox, einem älteren Rechner und 3 ISDN-Karten ein- und ausgehende Gespräche via ISDN geroutet.

Jetzt hat es mich an ein ausländisches College (also hinter eine NAT) verschlagen und ich möchte via VoIP mit der Heimat in Kontakt bleiben. Leider läuft das aber nicht so stabil habe schon SIP und IAX mit Softphones durch, die SIP Funktion der FBF funktioniert garnicht und auch Asterisk auf der FBF brachte keine schönen Ergebnisse. Aber was versucht man nicht alles um endlich ohne lästige Unterbrechungen mit der Liebsten zu telefonieren, also habe ich mir einen vServer Testaccount besorgt und war durchaus überrascht, dass es plötzlich keine immer größer werdenden Verzögerungen und Verbindungsabbrüche mehr gab.

Wie dem auch sei, offensichtlich bin ich etwas aus der Übung bei Dialplänen vielleicht kann mir jemand sagen wo mein Fehler ist.

Folgendes funktioniert:

Anwählen und telefonieren zwischen 2 "internen" Softphones
Rauswählen über Sipgate

Was nicht funktioniert:
Eingehende Anrufe über Sipgate klingeln nicht am Softphone

Code:
[general]
context=default
bindport=5060
bindaddr=X.X.X.X
srvlookup=yes

; *******************************************************
;       SICHERHEITSASPEKTE      ANFANG                  *
; *******************************************************

alwaysauthreject=yes            ; Wir lassen abgewiesene User nicht wissen DAS $
allowguest=no                   ; Allow or reject guest calls (default is yes)

; Angeschlossene Geräte über Ihre Default IP

;deny=89.32.214.0/0.0.0.0 ; ein beispiel für den ausschluss einer ip

; *******************************************************
;       SICHERHEITSASPEKTE      ENDE                    *


; *******************************************************


register => XXX:[email protected]/XXX
; hiermit registrieren wir den Asterisk bei Sipgate, um ankommene Anrufe
; entgegennehmen zu koennen

[3921391e0]
; dies ist der Context, den wir zum Raustelefonieren verwenden
; da dieser Context nur zum Raustelefonieren verwendet wird,
; ist die Angabe von "context =" hier ueberfluessig, da wir ja ohnehin
; aus der extensions.conf hierher kommen
;
type=peer
username=XXX
fromuser=XXX
secret=XXX
host=sipgate.de
fromdomain=sipgate.de
insecure=very
canreinvite=no
nat=no
disallow=all
allow=ulaw

[sipgate_de_in]
; das ist der Context für ankommende Anrufe
; von sipgate.de
; Diesen Context brauchen wir nur einmal -
; egal wieviele Sipgate-Accounts wir registrieren
; wichtig ist, dass dies der LETZTE Context von
; oben nach unten in der sip.conf  betrachtet, ist
; der einen Verweis auf sipgate.de beinhaltet !
; Durch die Angabe von "context = ankommend"
; der einen Verweis auf sipgate.de beinhaltet !
; Durch die Angabe von "context = ankommend"
; werden alle Anrufe in den gleichnamigen Context
; [ankommend] in der extensions.conf geleitet.
;
type=peer
fromdomain=sipgate.de
host=sipgate.de
disallow=all
allow=ulaw
context=ankommend

[30]
callerid=Phone 1 <30>
host=dynamic
domain=XXX.XXX.XXX.XXX
user=30
seccret=XXX
type=friend
mailbox=30
nat=yes
canreinvite=no

[31]
callerid=Phone 2 <31>
host=dynamic
domain=XXX.XXX.XXX.XXX
user=31
secret=XXX
type=friend
mailbox=31
nat=yes
canreinvite=no

[32]
callerid=Phone 3 <32>
host=dynamic
domain=XXX.XXX.XXX.XXX
user=32
secret=XXX
type=friend
mailbox=32
nat=yes
canreinvite=no

Extensions.conf
Code:
[general]
static=yes
writeprotect=no

; --------------------------------------------------------------------
; Es hat sich als gute Praxis erwiesen, die Inhalte der Datei
; extensions.conf modular aufzubauen. Diese Praxis wollen
; wir auch hier anwenden
;

[lokal]
; Erreichbarkeit der Nebenstellen 30-39
; untereinander herstellen

exten => _3X,1,NoCDR()
exten => _3X,n,Dial(SIP/${EXTEN},55,Ttr)

[sipgate_out]
; Diesen Context verwenden wir zum waehlen von abgehenden
; Rufnummern über den Sipgate Account XXX

exten => _0.,1,Dial(SIP/${EXTEN}@XXX,45,r)

[ankommend]
; alle Anrufe mit einer ID 3921391e0  sollen an das SIP Endgeraet 30
; signalisiert werden

exten => XXX,1,Dial(SIP/30,45,r)


; --------------------------------------------------------------------
;
; hier kommt der default-Context, in dem alle Geraete in der
; Grundkonfiguration erstmal laufen.
; Alle Geraete können sich gegenseitig anrufen

[default]
include => lokal
include => sipgate_out

(Basiert auf der Anleitung von Betateilchen)
Vielen Dank für eure Hilfe

Und wenn wir gerade dabei sind kann mir auch noch jemand sagen wie ich das einstellen kann mit deny bzw. allow also wenn ich weiß, dass meine private IP mit 84.59.X.X anfängt was muss ich dann angeben?
allow= 84.59.0.0/255.255.0.0?


Nicht das noch jemand eine Standleitung nach China einrichtet. ;-)
Greetz und gn8

PS hier noch die ausgabe des Asterisk wenig aufschlussreich für mich.
Code:
root@vs1190020:~# asterisk
root@vs1190020:~# asterisk -rvvv
Asterisk 1.6.2.11, Copyright (C) 1999 - 2010 Digium, Inc. and others.
Created by Mark Spencer <[email protected]>
Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details.
This is free software, with components licensed under the GNU General Public
License version 2 and other licenses; you are welcome to redistribute it under
certain conditions. Type 'core show license' for details.
=========================================================================
  == Parsing '/etc/asterisk/asterisk.conf':   == Found
  == Parsing '/etc/asterisk/extconfig.conf':   == Found
Connected to Asterisk 1.6.2.11 currently running on vs1190020 (pid = 16251)
Verbosity was 0 and is now 3
  == Using SIP RTP CoS mark 5

PPS: Ok komisch jetzt funktioniert das untereinander anwählen auch nicht mehr. Keine Ahnung was das jetzt sein kann. Ich bin mir keiner Schuld bewusst und doch muss ich es gewesen sein :-D

Naja morgen sehen wir weiter.
 
Wie dem auch sei, offensichtlich bin ich etwas aus der Übung bei Dialplänen vielleicht kann mir jemand sagen wo mein Fehler ist.

also was schon mal auffaellt ist, dass wohl die Reihenfolge der Sipgate-relevanten Contexte falsch ist.

"Asterisk kann einfach nur einen Context pro Host verarbeiten. Bis 1.4 war der letzte, seit 1.6 ist der erste Context-Eintrag für einen Host entscheidend"

Entnommen aus diesem Post:
http://www.ip-phone-forum.de/showthread.php?p=1567061#post1567061

du hast ja offenbar mal von 1.4. auf 1.6. umgestellt?

- sparkie
 
dass wohl die Reihenfolge der Sipgate-relevanten Contexte falsch ist

Ne, das müsste schon passen. Wenn er in 3921391e0 einen context definiert hätte, würde Asterisk den nehmen. Da dort aber keiner steht, nimmt Asterisk den aus sipgate_de_in. Schlimmsten Falls landet er im default, das würde man im CLI sehen.

[ankommend]
exten => _XXX.,1,Dial(SIP/30,45,r)

Vor ein Pattern muss ein _ und die sipgate-ID ist länger als drei Ziffern.

insecure=very
Muss bei 1.6 insecure=port,invite heißen.

[default]
include => sipgate_out
siehe hier

wie ich das einstellen kann mit deny bzw. allow

allow ist für Codecs, für Adressbereiche ist deny und permit.

Hab ich noch was übersehen?
 
Zuletzt bearbeitet von einem Moderator:

Statistik des Forums

Themen
246,273
Beiträge
2,249,292
Mitglieder
373,862
Neuestes Mitglied
904lte
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.