[Gelöst] korrekte konfiguration von Aterisk asterisk-11.8.0-rc1 (svn tag 11641) auf fb7390

andreas96k

Neuer User
Mitglied seit
28 Dez 2013
Beiträge
12
Punkte für Reaktionen
0
Punkte
1
Absturz mit Fehlermeldung:
*CLI> == Using SIP RTP CoS mark 5


Hallo,
Ich versuche seit einiger Zeit Asterisk zu konfigurieren. Ausprobiert habe ich dabei jeweils die verschiedenen aktuellen trunk Versionen. Zuletzt der tag 11589 mit asterisk 11.8.0-rc1.
Die verschiedenen Forenbeiträge (u.a. die Universalanleitung) waren hilfreich, aber leider noch nicht ganz hinreichend.

Zu meiner Testumgebung:
fb1/7390 mit regulärem FRITZ!OS 06.01 und 2x eingerichteten VoIP Nebenstellen (620, 621) -- dies ist auch meine fb zum Telefonanbieter
fb2/7390 mit " recht aktuellem trunk" (tag 11589), USB-root, asterisk, Midnight Commander,
- asterisk ist konfiguriert eine Verbindung zu den VoIP Nebenstellen der fb1 (620, 621) einzurichten,
- 2x interne rufnumern 2000, 2001 in der extensions.conf
- auf der fb2 selber habe ich die Nummer 2001 angelegt und auf einem AB umgeleitet
PhonerLite ist mit der Nebenstelle 2001 auf der fb2(asterisk) verbunden

Was funktioniert:
- Asterisk verbindet sich einwandfrei mit den VoIP Nebenstellen der fb1
- fb2 verbindet sich einwandfrei mit der von Asterisk zur Verfügung gestellten Nebenstelle 2000
- PhonerLite verbindet sich einwandfrei mit der von Asterisk zur Verfügung gestellten Nebenstelle 2001

Was nicht funktioniert:
- Wenn ich z.B.: versuche mit PhonerLite (Nebenstelle 2001) die Nebenstelle 2000 anzurufen bekomme ich einen Programmabbruch von Asterisk mit der letzten Meldung:
*CLI> == Using SIP RTP CoS mark 5
- Dieses passiert auch wenn versuche an der fb1 die Nebenstelle **620 (weitergeleitet auf fb2, asterisk, 2000) anzurufen
Hat jemand eine Idee, woher das kommen kann oder hat jemand eine fertige funktionierende Konfiguration, die er teilen kann?

Was ich zuletzt gemacht habe:
Installation von asterisk über USB-root aus dem svn tag 11589 (externals statt USB-root hatte ich ebenso ausprobiert, gleiches Ergebnis)
rc.asterisk setup (in der Konsole)
umbenennen der *.conf.sample aus asterisk-11.8.0-rc1.tar im Verzeichnis \configs in *.conf
kopieren aller Dateien aus dem oben genannten Verzeichnis /configs in /var/media/ftp/uStor01/asterisk (Konfigurations Verzeichnis auf dem USB Stick meiner fb2)
austauschen von sip.conf, extensions.conf gegen einfache neue Versionen (s. unten)

Was ich im ersten Schritt erreichen möchte:
1. Asterisk auf fb2 verbindet sich mit den VoIP Nebenstellen der fb1
2. Asterisk stellt zwei Nebenstellen zur Verfügung
3. fb2 verbindet sich mit den zwei Nebenstellen von Asterisk auf der fb2
4. fb2 hat 2x eine mailbox die die Gespräche der einen Nebenstelle von Asterisk annimmt.
--> Dieses ist soweit OK eingerichtet
5. PhonerLite verbindet sich mit der zweiten Nebenstelle von Asterisk und ruft die erste an (daraufhin geht der Mailbox der fb2 an)
6. von der fb1 rufe ich die Nebenstelle **620 an, die im Asterisk an die erste Nebenstelle weitergereicht wird (daraufhin geht der Mailbox der fb2 an)
--> bei 5 & 6 bekomme ich immer den oben genannten Absturz.

Für jede Hilfe bin ich dankbar.
/Andreas


Meine aktuellen sip.conf, extensions.conf

sip.conf:
Code:
[global]
session-timer=refuse
srvlookup=yes

[general]
language=de
disallow=all
allow=ulaw
allow=alaw
nat=no
canreinvite=no
alwaysauthreject=yes
allowguest=no
bindaddr = 0.0.0.0:5061
;bindport=5061			; UDP Port to bind to (SIP standard port is 5060)
;bindaddr=0.0.0.0		; IP address to bind to (0.0.0.0 binds to all)
tcpenable=yes
tcpbindaddr=0.0.0.0:5061
context = fritzbox

register => 620:[email protected]/620
register => 621:[email protected]/621

[2000] 
type=friend
context=localphone
secret=1234 
host=dynamic
nat=no
qualify=no

[2001] 
type=friend
contect=localphone
secret=1234
host=dynamic
nat=no
qualify=no

[620]
type=peer
defaultuser=620
fromuser=620
secret=620
host=192.168.140.1
insecure=port,invite
canreinvite=no
dtmfmode=rfc2833
qualify=no
nat=no
context=fritzbox

[621]
type=peer
defaultuser=621
fromuser=621
secret=621
host=192.168.140.1
insecure=port,invite
canreinvite=no
dtmfmode=rfc2833
qualify=no
nat=no
context=fritzbox

extensions.conf:
Code:
[sonstige]

[localphone]
exten => 1001,1,Answer()
exten => 1001,2,Playback(hello-world)
exten => 1001,3,Hangup()

exten => 2000,1,Dial(SIP/2000,20)
exten => 2000,2,VoiceMail(2000,u)

exten => 2001,1,Dial(SIP/2001)
exten => 2001,2,VoiceMail(2001,u)

exten => 2999,1,VoiceMailMain(${CALLERID(num),s}

exten => _0[1-9].,1,Dial(SIP/${EXTEN}@sips) ;ext-sip-account

[fritzbox]
exten => 620,1,Dial(SIP/2000)
exten => 621,1,Dial(SIP/2001)
 
Zuletzt bearbeitet:
Using SIP RTP CoS mark 5 ist keine Fehlermeldung, sondern lediglich eine Info, dass RTP Pakete mit Serviceklasse 5 gekennzeichnet werden. Da muss drum rum noch mehr passieren. Stell die verbosity auf 3 (core set verbose 3 oder CLI mit asterisk -rvvv aufrufen), dann wird die Ausgabe deutlich gesprächiger.

Außer den sehr beschränkten Codecs seh ich auf den ersten Blick keine Fehler in der Config. Aktiviere mal mehr Codecs, oder mach ein SIP Debug (sip set debug on) damit man den Gesprächsaufbau im Detail sehen kann.
 
Ich hab das ganze einmal ausprobiert.
Unten sind meine Ergebnisse.

Zu den Einträgen resultieren auf "sip set debug on" möchte ich noch folgendes erklären
192.168.140.1:5060 -- VoIP auf fb1
From: "Mobilteil 2" <sip:**[email protected]> -- Dect Telefon an fb1 (**611)
To: <sip:[email protected]:5061> -- Verbunden mit dem VoIP Telefon (**620) der fb1



###############################################################################################
Fall A - verbinden zu Asterisk mit -rvvv
Starten des Asterisk über freetz
Beim Anrufen der Nebenstelle bekomme ich folgendes Ergebnis in der Konsole:
Code:
------------------------- start console -------------------------------------------------------
  == Using SIP RTP CoS mark 5
fritz*CLI>
Disconnected from Asterisk server
Asterisk cleanly ending (0).
Executing last minute cleanups
root@fritz:/var/mod/root# 
------------------------- stop console -------------------------------------------------------
Anschliessend ist der Asterisk Service gestoppt.




###############################################################################################
Fall B: mit "sip set debug on"
Starten des Asterisk über freetz
Verbinden über asterisk -rvvv
Beim Anrufen der Nebenstelle bekomme ich folgendes Ergebnis in der Konsole:
Code:
------------------------- start console -------------------------------------------------------
root@fritz:/var/mod/root# asterisk -rvvv
Asterisk 11.8.0-rc1, Copyright (C) 1999 - 2013 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.
=========================================================================
Connected to Asterisk 11.8.0-rc1 currently running on fritz (pid = 4337)
fritz*CLI> sip set debug on
SIP Debugging enabled

<--- SIP read from UDP:192.168.140.1:5060 --->
INVITE sip:[email protected]:5061 SIP/2.0
Via: SIP/2.0/UDP 192.168.140.1:5060;branch=z9hG4bKB380226BABF73518
From: "Mobilteil 2" <sip:**[email protected]>;tag=031BA44ADE2B74FF
To: <sip:[email protected]:5061>
Call-ID: [email protected]
CSeq: 350 INVITE
Contact: <sip:[email protected]>
Max-Forwards: 70
Expires: 120
User-Agent: AVM FRITZ!Box Fon WLAN 7390 84.06.01 TAL (Nov 21 2013)
Supported: 100rel,replaces,timer
Allow-Events: telephone-event,refer
Allow: INVITE,ACK,OPTIONS,CANCEL,BYE,UPDATE,PRACK,INFO,SUBSCRIBE,NOTIFY,REFER,MESSAGE,PUBLISH
Content-Type: application/sdp
Accept: application/sdp, multipart/mixed
Accept-Encoding: identity
Content-Length: 417

v=0
o=user 250182 250182 IN IP4 192.168.140.1
s=call
c=IN IP4 192.168.140.1
t=0 0
m=audio 7086 RTP/AVP 9 8 0 2 102 100 99 97 120 121 101
a=sendrecv
a=rtpmap:2 G726-32/8000
a=rtpmap:102 G726-32/8000
a=rtpmap:100 G726-40/8000
a=rtpmap:99 G726-24/8000
a=rtpmap:97 iLBC/8000
a=fmtp:97 mode=30
a=rtpmap:120 PCMA/16000
a=rtpmap:121 PCMU/16000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-15
a=rtcp:7087
<------------->
--- (17 headers 18 lines) ---
Sending to 192.168.140.1:5060 (no NAT)
Sending to 192.168.140.1:5060 (no NAT)
Using INVITE request as basis request - [email protected]
Found peer '620' for '**611' from 192.168.140.1:5060
  == Using SIP RTP CoS mark 5
fritz*CLI>
Disconnected from Asterisk server
Asterisk cleanly ending (0).
Executing last minute cleanups
root@fritz:/var/mod/root#
------------------------- stop  console -------------------------------------------------------
Anschliessend ist der Asterisk Service gestoppt.




###############################################################################################
Fall C: mit "sip set debug on" und ändern in sip.conf "allow all" in [general]
Das ist hoffentlich die notwendige Änderung zum erlauben weiterer Codecs.
Starten des Asterisk über freetz
Verbinden über asterisk -rvvv
Beim Anrufen der Nebenstelle bekomme ich folgendes Ergebnis in der Konsole:
Code:
------------------------- start console -------------------------------------------------------
root@fritz:/var/mod/root# asterisk -rvvv
Asterisk 11.8.0-rc1, Copyright (C) 1999 - 2013 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.
=========================================================================
Connected to Asterisk 11.8.0-rc1 currently running on fritz (pid = 4625)
fritz*CLI> sip set debug on
SIP Debugging enabled

<--- SIP read from UDP:192.168.140.1:5060 --->
INVITE sip:[email protected]:5061 SIP/2.0
Via: SIP/2.0/UDP 192.168.140.1:5060;branch=z9hG4bKFF7CBFF30158F77F
From: "Mobilteil 2" <sip:**[email protected]>;tag=F13E3FC5F2E5A91D
To: <sip:[email protected]:5061>
Call-ID: [email protected]
CSeq: 358 INVITE
Contact: <sip:[email protected]>
Max-Forwards: 70
Expires: 120
User-Agent: AVM FRITZ!Box Fon WLAN 7390 84.06.01 TAL (Nov 21 2013)
Supported: 100rel,replaces,timer
Allow-Events: telephone-event,refer
Allow: INVITE,ACK,OPTIONS,CANCEL,BYE,UPDATE,PRACK,INFO,SUBSCRIBE,NOTIFY,REFER,MESSAGE,PUBLISH
Content-Type: application/sdp
Accept: application/sdp, multipart/mixed
Accept-Encoding: identity
Content-Length: 419

v=0
o=user 4644864 4644864 IN IP4 192.168.140.1
s=call
c=IN IP4 192.168.140.1
t=0 0
m=audio 7082 RTP/AVP 9 8 0 2 102 100 99 97 120 121 101
a=sendrecv
a=rtpmap:2 G726-32/8000
a=rtpmap:102 G726-32/8000
a=rtpmap:100 G726-40/8000
a=rtpmap:99 G726-24/8000
a=rtpmap:97 iLBC/8000
a=fmtp:97 mode=30
a=rtpmap:120 PCMA/16000
a=rtpmap:121 PCMU/16000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-15
a=rtcp:7083
<------------->
--- (17 headers 18 lines) ---
Sending to 192.168.140.1:5060 (no NAT)
Sending to 192.168.140.1:5060 (no NAT)
Using INVITE request as basis request - [email protected]
Found peer '620' for '**611' from 192.168.140.1:5060
  == Using SIP RTP CoS mark 5
fritz*CLI>
------------------------- stop  console -------------------------------------------------------
Anschliessend ist der Asterisk Service gestoppt.
 
Aha, wenn gleich der ganze Service den Geist aufgibt, liegt das eher nicht an der Konfig. Da ist schon beim bauen was schief gegangen, oder Dein RAM stößt an seine Grenzen, oder irgendwas in der Art.
Jedenfalls bin ich an der Stelle raus.
 
Hallo "rentier-s"

erst einmal vielen Dank für deine Mühe. Wenigstens sind die Config Dateien korrekt. Damit ist zumindest ein Teil ausgeschlossen.
- das mein RAM an seine Grenzen stößt kann ich mir fast nicht vorstellen. Nachdem ich Asterisk gestartet habe, meldet mir das System http://192.168.140.29:81/cgi-bin/status.cgi noch 28MB frei.
- das beim Build etwas schiefgegangen ist, vielleicht schon eher -- evtl. eine fehlende Bibliothek?!


Vielleicht hat ja jemand noch eine Idee, was ich ggf. falsch gemacht haben könnte. Daher habe ich meine Schritte heute noch einmal wie folgt wiederholt:
Code:
1. updaten meiner trunk Version auf den head (aktueller tag 11627; mittels "svn up")
2. löschen der letzten '.config'
3. make menuconfig mit folgenden Änderungen (USB-root basis system)
- Level of user competence 
  = expert
- replace kernel
- removal patches ->
  = AHA
  = FHEM
- other patches 
  = ext2
packages -> packages ->
  = bftpd
  = USB root
4. speichern und build der aktuellen konfiguration "make"
5. make menuconfig (erstellen der Asterisk Umgebung -- nur die Änderungen zu oben sind aufgeführt)
- packages -> unstable ->
  = Asterisk
 - packages -> web interface ->
  = AVM-forewarding
- firmware packaging (fwmod) -> 
  = skip packing modified firmware
  = pack file system into archives
6. speichern und build der aktuellen konfiguration "make"

Jetzt habe ich ein USB-Basis image und meine Asterisk konfiguration.
Ich denke, das soweit alles OK gelaufen ist.

7. USB sticks mit ext3 formatieren:
8. das system mit dem Image aus (4) flashen
9. reboot und anschliessend herrichten des USB sticks
mkdir -p /var/media/ftp/uStor01/asterisk
mkdir -p /var/media/ftp/uStor01/asterisk.root/usr/lib/asterisk
mkdir -p /var/media/ftp/uStor01/asterisk.root/usr/share/asterisk
mkdir -p /var/media/ftp/uStor01/asterisk.root/var/lib/asterisk
mkdir -p /var/media/ftp/uStor01/asterisk.root/var/log/asterisk
mkdir -p /var/media/ftp/uStor01/asterisk.root/var/run/asterisk
mkdir -p /var/media/ftp/uStor01/asterisk.root/var/spool/asterisk
mkdir -p /var/media/ftp/uStor01/rootfs
10. kopieren des packages aus (6) in das rootfs Verzeichnis über ftp
11. entpacken des packages über tar -xzf <fielname>
12. aktivieren von USB-root und reboot
13. setup von asterisk über rc.asterisk setup.
14. sicherstellen, das die Verzeichnisse aus asterisk.conf alle existieren und entsprechend anlegen
ln -s /var/media/ftp/uStor01/asterisk.root/usr/lib/asterisk /usr/lib/asterisk
ln -s /var/media/ftp/uStor01/asterisk.root/usr/share/asterisk /usr/share/asterisk
ln -s /var/media/ftp/uStor01/asterisk.root/var/lib/asterisk /var/lib/asterisk
ln -s /var/media/ftp/uStor01/asterisk.root/var/log/asterisk /var/log/asterisk
ln -s /var/media/ftp/uStor01/asterisk.root/var/run/asterisk /var/run/asterisk
ln -s /var/media/ftp/uStor01/asterisk.root/var/spool/asterisk /var/spool/asterisk
mkdir -p /usr/lib/asterisk/modules
mkdir -p /usr/share/asterisk/firmware/iax
mkdir -p /var/lib/asterisk/agi-bin
15. starten von asterisk über "asterisk -vvvvvc"
16. einschalten des sip debugging "*CLI> sip set debug on"
17. anrufen der nebenstelle "2000"
Das Ergebnis ist das gleiche wie im Beitrag 3.
 
Hallo Andreas,

so richtig helfen kann ich Dir im Moment leider nicht, aber versuche mal folgendes:
- um auszuschließen bzw. zu bestätigen, dass es an dem Freetz-Build liegt oder an Deiner Konfiguration, richte asterisk in derselben bzw. vergleichbaren Konfiguration auf einem PC ein (so wie ich verstanden habe, funktionieren bei Dir Box unabhängige Dinge nicht).
- google mal nach "Using SIP RTP CoS mark 5" und versuche mal aus den recht vielen Treffern, was rauszufischen, was helfen könnte.

Grüße,
Gene
 
Hallo Gene,

Vielen Dank für deinen Tip.
Ich habe mich erst einmal an Asterisk in einer virtuellen Maschine gewagt.

Das Ergebnis war vielversprechend. Asterisk hat nach kopieren meiner 'sip.conf' und 'extensions.conf' genau das gemacht was es sollte.
Nachdem ich alle Konfigurationsdateien auf meine Asterisk Instalaltion auf der fb zurück gespielt habe, gab es weiterhin den gleichen Absturz.
Das ganze war soweit allerdings nicht ganz fair. Ich habe eine Asterisk 11.7 konfiguration (virtueller PC) auf meine fb installation 11.8rc1 kopiert.
Morgen mach ich noch einen korrekten Test mit 11.8c1 auf dem virtuellen PC und auf meiner fb (aus einem factory default).


Für alle die es interessiert, hier die Installationshinweise für meine virtuelle PC installation:
Code:
- How to Install Asterisk 11 on a Virtual Machine -- http://www.bubblews.com/news/621216-how-to-install-asterisk-11-on-a-virtual-machine
- Die Linux installation habe ich dann erweitert um:
  = sudo apt-get install telnetd (ich arbeite lieber mit telnet)
  = sudo apt-get install libglib2.0 (benötigt von Midnight Commander)
  = How to install Midnight Commander? -- http://geektnt.com/how-to-install-midnight-commander.html
  = sudo apt-get install ftpd (vereinfacht den Transfer der Konfigurationsdateien vom virtuellen PC zur fb.
     --> chmod -R a+w /etc/asterisk (wegen der FTP Zugriffsrechte)

Beim Kopieren der Konfigurationen ist darauf zu achten, dass die asterisk.conf entsprechend angepasst werden muss.
 
Absturz mit Fehlermeldung:
*CLI> == Using SIP RTP CoS mark 5

Das Problem ist gelöst.

Der letzte Schritt den ich unternommen habe, ist folgenden Haken bei der Asterisk-konfiguration im menuconfig zu entfernen:
- "optimize asterisk for low-memory usage (NEW)" (https://dev.openwrt.org/ticket/12179#comment:3)

Darüber hinaus habe ich alles auf default gelassen.

-------------------------------------
Für alle Nachahmer möchte ich hier noch einmal zusammenfassen, was ich soweit habe:
-primäre fb7390 -- pures AVM FRITZ!OS 06.01, u.a. 2x IP Telefone, die von Asterisk abonniert werden / Rufnummern 2000, 2001 von asterisk / AB der auf die Rufnummern 2000 / 2001 reagiert
-sekundäres fb7390 -- freetz (svn tag 11641) mit folgenden Pakete: 'Asterisk' (disable: "optimize asterisk for low-memory usage (NEW)"), 'AVM-forewarding', 'BFTPD', 'USB-root', Midnight Commander', removed 'AHA', 'FHEM'--
-wenn ich jetzt die erste Nebenstelle (**620) anrufe, nimmt Asterisk das Gespräch entgegen, stellt es an '2000' durch, wodurch der FB an der primären fb7390 abnimmt (siehe SIP.conf, extensions.conf oben)
-darüberhinaus habe ich mir die Verzeichnisse in asterisk.conf angeschaut und sichergestellt, das diese Vorhanden sind. Nicht vorhandene habe ich auf meinem USB Stick angelegt und über symbolic links verbunden
-beim starten von asterisk über asterisk -vvvvvc gab es Fehlermeldung über fehlende Verzeichnisse. Auch diese habe ich auf meinem USB Stick angelegt und über symbolic links verbunden
Ob all diese Schritte notwendig waren, kann ich im Moment leider nicht nachvollziehen, da das AVM Recovery Image aktuell bei mir nicht funktioniert.


------------------------------------
zur Info: Folgende Punkte waren mir zu Beginn nicht klar:
- Unter anderem bei http://das-asterisk-buch.de/1.6/kapitel-hello-world.html wurde immer nur auf SIP.conf und extensions.conf verwiesen, Asterisk benötigt allerdings noch eine Reihe mehr.
- Die Konfigurationsdateien hebe ich zuerst aus dem Paket 'asterisk-11.8.0-rc1.tar' im Unterverzeichnis 'configs' entnommen (.sample aus Dateiname entfernt)
- Meine aktuellen Konfigurationsdateien habe ich der Ubuntu Testinstallation (s.o. entnommen) -- Beide Verzeichnisse sind ansonsten identisch
 

Zurzeit aktive Besucher

Statistik des Forums

Themen
244,696
Beiträge
2,216,700
Mitglieder
371,316
Neuestes Mitglied
realbluethunder
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.