Asterisk auf FBF libresolv.so.0 fehlt!!!

7170 und Firmware 29.04.57 -> can't load library 'libresolv.so.0'

Hallo alle zusammen,

ich versuche auf meine 7170 mit dem Firmwarestand 29.04.57 den Asterisk zu installieren. Das installieren geht auch bestens, allerdings nicht das starten. Ich bekomme immer den Fehler das die lubrary 'libresolv.so.0' nicht gefunden werden kann.
Ich bin nach der folgender Anleitung vorgegangen, die auch hier im Forum beschrieben ist: http://www.juerging.net/projekte/Fritzbox-Asterisk/. Des Weiteren habe ich die bereits wie ihr unten sehen könnt versucht die fehlende Dateien nachzualden.

Hier ein kleiner Abriss was ich gemacht habe:

Code:
BusyBox v1.1.2 (2008.02.13-13:24+0000) Built-in shell (ash)
Enter 'help' for a list of built-in commands.

ermittle die aktuelle TTY
tty is "/dev/pts/0"
Console Ausgaben auf dieses Terminal umgelenkt
# cd var
# wget http://spblinux.de/fbox/cfg_asterisk14
Connecting to spblinux.de[62.2.86.226]:80
cfg_asterisk14       100% |*****************************| 29100       00:00 ETA
# chmod 755 cfg_asterisk14
# ./cfg_asterisk14 install
Connecting to www.spblinux.de[62.2.86.226]:80
cfg.common           100% |*****************************| 26864       00:00 ETA
              total         used         free       shared      buffers
  Mem:        30276        28864         1412            0         1824
 Swap:            0            0            0
Total:        30276        28864         1412
installing asterisk14 (http://www.spblinux.de/fbox/26) ...
Connecting to www.spblinux.de[62.2.86.226]:80
chroot               100% |*****************************| 12983       00:00 ETA
Connecting to www.spblinux.de[62.2.86.226]:80
freeramdisk          100% |*****************************| 13515       00:00 ETA
Connecting to www.spblinux.de[62.2.86.226]:80
rd.ko                100% |*****************************|  9287       00:00 ETA
Connecting to www.spblinux.de[62.2.86.226]:80
cfg.customize        100% |*****************************|   904       00:00 ETA
asterisk14.sqf -> /var/ram0: Connecting to www.spblinux.de[62.2.86.226]:80
ram0                 100% |*****************************|  1524 KB    00:00 ETA
creating symlinks in /var/asterisk14/var/lib/asterisk ... done.
              total         used         free       shared      buffers
  Mem:        30276        29128         1148            0         2204
 Swap:            0            0            0
Total:        30276        29128         1148
to use asterisk14 type ./cfg_asterisk14 start
# wget http://www.supper-network.net/fbox.new/libresolv-0.9.28.so
Connecting to www.supper-network.net[81.169.145.66]:80
libresolv-0.9.28.so  100% |*****************************|  1984       00:00 ETA
# ln -s libresolv-0.9.28.so libresolv.so.0
# ./cfg_asterisk14 start
zebedee(2334/1024):  Listening on local port 4570
# asterisk: can't load library 'libresolv.so.0'

Kann mir einer sagen was ich falsch mache?

Würde mich über schnellstmögliche Hilfe sehr freuen.

Gruß
q-stkr
 
Du musst dem Binary ja auch mitteilen, dass Du die libresolv nach /var geladen hast :rolleyes:
Code:
LD_LIBRARY_PATH=/var /var/chroot /var/asterisk14 /bin/asterisk
 
Auch das bringt mich leider nicht weiter, nur zu einem neuen Fehler :( :

Code:
...
# wget http://www.supper-network.net/fbox.new/libresolv-0.9.28.so
Connecting to www.supper-network.net[81.169.145.66]:80
libresolv-0.9.28.so  100% |*****************************|  1984       00:00 ETA
# ln -s libresolv-0.9.28.so libresolv.so.0
# LD_LIBRARY_PATH=/var /var/chroot /var/asterisk14 /bin/asterisk
# ./st[Jul 17 21:23:59] WARNING[2283]: chan_iax2.c:10224 load_module: Unable to
open IAX timing interface: No such file or directory

# ./cfg_asterisk14 start
zebedee(2366/1024):  Listening on local port 4570
# asterisk: can't load library 'libresolv.so.0'

Oder was ist daran falsch?
 
Erstmal sollte der Asterisk laufen und schauen wir uns genauer an, was mit IAX los ist.
Setze den chan_iax2.so in der modules.conf mal auf "noload => chan_iax2.so" und starte erneut, wie folgt:
Code:
LD_LIBRARY_PATH=/var /var/chroot /var/asterisk14 /bin/asterisk -cvvvvvv
 
Hallo,

zuerst möchte ich mich für deine Hilfe bedanken. ich hoffe, dass wir das Problem noch in den Griff bekommen.

Des Weiteren muss ich sagen, dass ich von Linux leider nicht sher viel verstehe. Ich komme einigermaßen damit klar, kenn mich aber mit den ganzen Modulen/Libraries nicht so aus.

Ich habe jetzt folgendes gemacht:
1.) asterisk gestoppt: cfg_asterisk stop
2.) in der /var/asterisk14/etc/asterisk/modules.conf das ; vor dem Eintrag chan_iax2.so weggenommen
3.) Dann wie beschrieben den Befehl
Code:
LD_LIBRARY_PATH=/var /var/chroot /var/asterisk14 /bin/asterisk -cvvvvvv
ausgeführt und bin im folgenden Menü gelandet:
Code:
...
app_authenticate.so => (Authentication Application)
Asterisk Ready.
*CLI>
Allerdings habe ich keine Ahnung, wo ich gelandet bin bzw. wie ich weiter verfahren soll. Ich bin aus dem Menü raus und habe versucht nochmal den Asterisk zu starten (was vermutlich falsch war) und es kam wieder selbige Fehlermeldung.

Sorry wenn ich mit sehr viel Unwissen hier rangehe. Ich hoffe, das es trotzdem eine Lösung für das Problem gibt!

Gruß
q-stkr
 
mitleidender

Hallo, ich bin im Gedanken bei Dir.
Ich kam auch heute auf die Idee asterisk auf meine FB zu installieren.

Das Menü was du siehst ist die Konsole von Asterisk. "help" listet alle Kommandos auf. du kannst auch "help sip" eingeben dann wird die Anzeige übersichtlicher.

Wenn du jetzt noch eine Telnet Verbindung zur FritzBox aufbaust kannst du mittels "netstat -a" sehen ob dein Asterisk auch lauscht. Dann sollte ein Eintrag mit "*:5061" zu finden sein.

Bei mir hat es dann auch geklappt ein Konto in der FB (über die Weboberfläsche) einzurichten. Dieses scheint auch verbunden zu sein.
Weiter bin ich leider nicht.

Habe noch versucht mich mit meinem Nokia N95 zu verbinden, klappte nicht.
Ebenso die Verwendung des Softphones Ekiga wollte nicht.
Will jetzt noch sip-communicator versuchen.

Gruß
joe74
 
Hallo Joe,

vielen Dank für deine Infos, jetzt steige ich ein bisschen mehr durch. Ich vermute mal das dann der Fehler mit der Library (libresolv.so.0) vom Startscripz herkommt.
Auch wenn mir noch nicht ganz klar ist wie ich über den Befehl
Code:
LD_LIBRARY_PATH=/var /var/chroot /var/asterisk14 /bin/asterisk -cvvvvvv
den Asterisk starte scheinst du aber recht zu haben.

Ich habe es mittlerweile auch hinbekommen, ein Softphone einzuwählen. Allerdings werden mir weder eingehende Anrufe angezeigt noch ausgehende durchgereicht.
Ich bin nach folgeder Anleitung vorgegangen: http://users.pandora.be/Asterisk-PBX/Softphones.htm


Wenn wir/ich das Thema gelöst bekommen können wir ja ein kleines HowTo verfassen, was die Installation von Asterisk auf dem aktuellen Firmwarestand inkl. Softphone beschreibt?!?!


Würde mich sehr freuen, wenn jemand vielleicht schon weiter wäre oder weiß wo es haken mir mit ein paar Tipps weiterhelfen könnte.

Gruß
q-stkr
 
1) nein, das Problem hat nichts mit dem cfg_asteriskxx Start-Script zu tun, sondern mit der Tatsache, dass AVM in gewissen FW Versionen die libresolv rausgenommen hat, diese aber von * benötigt wird
2) LD_LIBRARY_PATH wird hier lediglich als workaround genutzt, um auf ein zusätzliches Verzeichnis für libs zu verweisen ( in Deinem fall /var )
3) Die Anweisung unten bedeutet folgendes:
Code:
[COLOR=Red]LD_LIBRARY_PATH=/var[/COLOR] [COLOR=Lime]/var/chroot /var/asterisk14[/COLOR] [COLOR=Blue]/bin/asterisk -cvvvvvv[/COLOR]
a) via LD_LIBRARY_PATH=/var wird dem Binary ein zusätzlicher Pfad /var für die Suche nach libs mitgeteilt, damit wir auch die libresolv.so unter /var finden :)
b) via /var/chroot wird der Root-Pfad für das aufgerufene Binary "verschoben". Der erste Parameter von chroot (hier /var/asterisk14 ) gibt den neuen Root-Pfad an. Das aufgerufene Binary sieht alles nur noch relativ zu /var/asterisk14/ ( daher sind u.a. /usr, lib, /etc. usw. hierher verlinkt )
c) der zweite chroot Parameter ( hier /bin/asterisk -cvvvvv ) gibt das aufzurufende Binary an. Auch wenn hier /bin/asterisk angegeben ist, wird eigentlich /var/asterisk14/bin/asterisk aufgerufen.

Soooo, das zum Verständnis.
Unter http://www.spblinux.de/fbox.new gibt es eigentlich schon neuere Versionen der Installaitionsscripte, bei denen u.a. auch die libresolv Problematik behoben ist ;)

Ferner kann via Install-Option "-x" direkt in das Root-Verzeichnis installiert werden, wonach der Umweg über eine "chroot" entfällt.
Das alles ( und vieles mehr ) steht eigentlich im "Sticky-Thread: Anleitung: Asterisk on FBF 7170 / 7050" ...

Gruß
dynamic
 
Hallo,

vielen Dank für deinen Tipp und die ausführliche Erklärung. Steige jetzt eher durch!
Jetzt läuft er zumindest schonmal ohne Probleme an! :)
es lag an dem -x der hat da Problem warscheinlich behoben!

Allerdings habe ich noch eine andere Frage in dem Zusammenhang:
Ich möchte gerne einen SIP-Client, also ein Softphone, an Asterissk koppeln. Ich habe auch versucht in der sip.conf folgende Funktion hinzuzufügen:
Code:
[41]
context=from_fritzbox
callerid="Fritzbox" <41>
host=dynamic
domain=192.168.178.1
type=friend
user=41
secret=password
disallow=all
allow=gsm
allow=ulaw
allow=alaw

X-Lite meldet sich auch ohne Probleme an und ist auch im State Ready. (Mit anderen Clients war das leider nicht der Fall!) Leider kann ich aber weder rauswählen noch "bimmelt" mein Softphone bei einem eingehenden Anruf.

Es liegt vermutlich an der Konfiguration! Gibt es eine Testkonstellation mit Configs die mir vielleicht helfen könnte?

Gruß
q-stkr
 
es lag an dem -x der hat da Problem warscheinlich behoben!
Jein, das "-x" bewirkt lediglich, dass der Asterisk direkt im "Root-Pfad" der Fritzbox installiert wird und da die Root-Pfade als Beschreibbar erscheinen, sind einige Sachen etwas "transparenter"
Das Problem tritt nicht mehr auf, da in der aktuelleren Version des cfg_asterisk14 Pakets vorsorglich die libresolv mitgebracht wird ... ;)

Es liegt vermutlich an der Konfiguration! Gibt es eine Testkonstellation mit Configs die mir vielleicht helfen könnte?
In der Default-Konfiguration von spblinux ist schon alles so aufgesetzt, dass alles reibungslos funktioniert. Du solltest daher, die SIP-ID verwenden die in der gesamten Konfiguration bereits eingebunden ist, z.B. SIP-ID=771 ( PW kannst Du aus der sip.conf ja entnehmen ).
 
Hallo,

erstmal ein kurzes Sorry: Ich habe eben vergessen etwas zu erwähnen.
Mit der asterisk14 bekomme ich immernoch die gleichen Fehler. Allerdings habe ich es jetzt mit dem http://spblinux.de/fbox.new/cfg_asterisk16 Config-Script probiert. Das geht wie beschrieben ohne Probleme.

Egal ob ich einen eigenen Account anlege oder den 771-Account der Standartmäßig vorhanden ist benutze: Ich kann mich mit meinem SIP-Client registrieren (zumindest mit x-lite), aber bekomme weder Anrufe rein noch kann ich welche rauswählen. Es funktioniert nur das anlalog angeschlossene Telefon.
Kann es sein, dass ich noch eine Umleitung einbauen muss, da ich keinen SIP-Telefon-Anbieter verwende sondern einen analogen Anschluss über die Fritzbox schleife?

Gruß
q-stkr
 
Eigentlich sind die cfg_asterisk14 und cfg_asterisk16 Install-Scripts identisch aufgebaut ... muss mal reinschauen, ob evtl. im sqf-Files des asterisk14 die libresolv fehlt.

Wenn Du einen analogen Anschluß nutzt, musst Du ein Paar Konfigurationsanpassungen durchführen, da die Default-Konfiguration von einem ISDN Anschluss ausgeht. Siehe dazu folgendes Posting ...

Bei analogem Anschluß ist man natürlich hinsichtlich der Möglichkeiten recht eingeschränkt ;-)

Gruß
dynamic
 
Hallo,

vielen Dank für den Tipp!
Endlich ein Erfolgserlebnis! Es klingelt wenn mich jeand anruft! :dance:

Rauswählen kann ich leider aber immer noch nicht! Fehlt dafür noch eine Settings-Zeile in einer der *.conf-Files?

Soll ich für weitere Fragen dazu lieber in den anderen Post Thread wechseln?
Wie sieht das eigentlich aus, wenn man hinter der FB noch einen anderen Router hängen hat und da keine Ports freigeben kann?
Ich bekomme nur, wenn ich direkt an die FB gehe kontakt mit meinem Softphone aber leider nicht anders? Ich möchte nicht unbedingt den Port komplett aufmachen oder Routen pushen. UPnP scheint auch hier nicht das Mittel zur Wahl zu sein!

Gruß
q-stkr
 
Poste mal Deine sip.conf ... ich gehe davon aus, dass Du dort mehr geändert hast, als von mir vorgeschlagen.
 
Ich habe an der sip.conf nichts geändert, lediglich wie in Link des letzten Posts beschrieben die capi.conf udn die extensions.conf.
Somit sieht meine sip.conf noch folgendermaßen aus:

Code:
[general]
context=default			; Default context for incoming calls
; port 5060 already used by fritzbox, so use 5061 
; and reconfigure local sip phones (remote sip goes through asterisk!)
;                 ^^^^^
; XLITE in same subnet example config (fritzbox 192.168.222.100) 
; - System Settings / SIP Proxy / Default
;   - Enabled: Yes
;   - Display Name=Username=Auth. User=: 771
;   - Password: 771
;   - Domain/Realm: 192.168.222.100
;   - SIP Proxy: 192.168.222.100:5061
;                                ^^^^
;   - Outbound Proxy: (empty)
;   - Use Outbound Proxy: Never
;   - Send Internal IP: Always
;                       ^^^^^^
;   - Register: Default
; - Advanced System Settings / Audio / Silence Settings
;   - Transmit Silence: Yes

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)
srvlookup=yes			; Enable DNS SRV lookups on outbound calls
language=de

;using external sip provider
;and coping with dynamic ip address (the entry localnet=127...
;is required if the avm sip client is registered at localhost:5061)
;(idea taken from [email protected])
;externhost=my.dynamic.host
;localnet=127.0.0.0/255.0.0.0
;nat=yes
;canreinvite=no
;localnet=192.168.179.0/255.255.255.0
;register => bluesip/username:[email protected]/sip1
;...(http://www.ip-phone-forum.de/showpost.php?p=500468&postcount=12)

[771]
context=sip771
callerid="TestSIP 771" <771>
host=dynamic
domain=192.168.222.100
;nat=yes  
qualify=no                     ; X-Lite is behind a NAT router
type=friend
user=771
secret=771
;mailbox=771
;canreinvite=no                ; Typically set to NO if behind NAT

;regexten=1234                 ; When they register, create extension 1234
;username=xlite1
disallow=all
allow=gsm                     ; GSM consumes far less bandwidth than ulaw
allow=ulaw
allow=alaw

[772]
context=sip772
callerid="TestSIP 772" <772>
host=dynamic
domain=192.168.222.100
;nat=yes                       ; X-Lite is behind a NAT router
type=friend
user=772
secret=772
;mailbox=772
;canreinvite=no                ; Typically set to NO if behind NAT

;regexten=1234                 ; When they register, create extension 1234
;username=xlite1
disallow=all
allow=gsm                     ; GSM consumes far less bandwidth than ulaw
allow=ulaw
allow=alaw

[773]
context=sip773
callerid="TestSIP 773" <773>
host=dynamic
domain=192.168.222.100
;nat=yes                       ; X-Lite is behind a NAT router
type=friend
user=773
secret=773
;mailbox=773
;canreinvite=no                ; Typically set to NO if behind NAT

;regexten=1234                 ; When they register, create extension 1234
;username=xlite1
disallow=all
allow=gsm                     ; GSM consumes far less bandwidth than ulaw
allow=ulaw
allow=alaw

[774]
context=sip774
callerid="TestSIP 774" <774>
host=dynamic
domain=192.168.222.100
;nat=yes                       ; X-Lite is behind a NAT router
type=friend
user=774
secret=774
;mailbox=774
;canreinvite=no                ; Typically set to NO if behind NAT

;regexten=1234                 ; When they register, create extension 1234
;username=xlite1
disallow=all
allow=gsm                     ; GSM consumes far less bandwidth than ulaw
allow=ulaw
allow=alaw

; sip external outgoing
[sip1_out]
type=peer
;username=bluesip/username
;fromuser=username
;secret=password
;host=bluesip.net
;fromdomain=bluesip.net
insecure=port,invite
caninvite=no
canreinvite=no
nat=no
disallow=all
allow=gsm

; sip external incoming
[sip1_in]
type=peer
;fromdomain=bluesip.net
;host=bluesip.net
context=sip_in

Was muss ich da noch ändern?

Gruß
q-stkr
 
Kannst Du den z.B. den internen Echotest ( einfach die 80 wählen ) erreichen und Dich selber hören ?
Welche Meldungen kommen denn auf der Asterisk-Console ?

1) Verbinde Dich an der Asterisk-Console via
Code:
asterisk -rvvvvvvv
2) Versuche ein ausgehendes Gespräch zu führen
3) Poste hier den CLI-Log des Fehlversuches
 
Hallo,

hier der CLI-Auszug:
Code:
...
Connected to Asterisk 1.6.0-beta4 currently running on fritz (pid = 3500)
No entry for terminal type "vt102";
using dumb terminal settings.
Verbosity is at least 7

  == Using SIP RTP CoS mark 5

[Jul 20 19:31:00] WARNING[3505]: pbx.c:2667 pbx_extension_helper: No application
 'SetCallerID' for extension (sip771, XXXXXXXXXX, 1)

  == Spawn extension (sip771, XXXXXXXXXXX, 1) exited non-zero on 'SIP/771-006419
38'

Des weiteren sind mir noch 2 Dinge aufgefallen:
1. Es wird gar nicht mehr auf den Anrufsbeantworter der Firmware von AVM umgeschaltet
2. Obwohl das folgende Script in der debug.cfg drinsteht wird Asterisk nicht nachgeladen
Code:
wait_seconds=10
cd /var
while ! wget http://spblinux.de/fbox.new/cfg_asterisk16; do
sleep $wait_seconds
done
chmod +x cfg_asterisk16
./cfg_asterisk -x install
while ! [ -x asterisk/bin/asterisk ]; do
./cfg_asterisk16 remove
sleep $wait_seconds
./cfg_asterisk16 -x install
done
Will ich das ganze händig nachladen muss ich das erst duch ein cfg_asterisk16 enable wieder entsperren sonst geht gar nichts.

Sorry das mir immer mehr Fehler auffallen!

Gruß
q-stkr
 
@q-stkr
Code:
[Jul 20 19:31:00] WARNING[3505]: pbx.c:2667 pbx_extension_helper: No application
 'SetCallerID' for extension (sip771, XXXXXXXXXX, 1)
 
  == Spawn extension (sip771, XXXXXXXXXXX, 1) exited non-zero on 'SIP/771-006419
38'
Zwei Möglichkeiten:
a) In extensions.conf, Context [festnetz_out] SetCallerID durch "NoOp" ersetzen, oder
b) in modules.conf sicherstellen, dass func_callerid.so geladen wird
1. Es wird gar nicht mehr auf den Anrufsbeantworter der Firmware von AVM umgeschaltet
2. Obwohl das folgende Script in der debug.cfg drinsteht wird Asterisk nicht nachgeladen
1) ... und wenn Du Asterisk stoppst, funktioniert der AB wieder ?
2) Schau im Sticky-Thread ... dort ist ein Beispiel, welches funktionieren müsste. Dein Beispiel hat Typos und mach m.E. so auch keinen Sinn
 
Zuletzt bearbeitet:
Hallo,

die Einstellungen in der extension.conf (exten => _0X.,1,NoOp) hat hat perfekt geholfen! :D:D:D Danke!!!

Ich habe noch ein neues Problem gefunden, wobei sich ein altes in Luft aufgelöst hat:
Die Umschaltung auf den AB der AVM-Firmware funktioniert. Allerdings bemerke ich immer wieder ein das die Fritzbox "abstürzt". Kurz nachdem ich meinen Testanruf getätigt habe bricht die telnetverbindung weg und die Fritzbox startet neu. Komischerweise wird Asterisk was ich durch das debug.cfg-Script nachladen will nicht nachgeladen, obwohl andere Commands die sich firekt davor befinden ausgeführt werden.

2) Schau im Stick-Thread ... dort ist ein Beispiel, welches funktionieren müsste.
Welche Thread ist hier gemeint?

Gruß
q-stkr
 
Eine Frage möchte ich noch ergänzen:
Ich installiere den Asterisk über die debug.cfg nach. Sowie ich jedoch zusätzlich meine angepassten *.conf-Filkes nachziehen möchte funktioniert das nicht und stattdessen steht in der debug.cfg nur:

###DON'T REMOVE. PUTS FOLLOWING APP INTO MAINT-MODE: cfg_asterisk16

ich habe mal versucht über cofig2flash Einstellung dort einzuspielen. Ich vermute es liegt daran. Aber wie kann ich das rückgänig machen? Ich habe in meinem Config-Script alle flash2config-Zeilen rausgeworfen, da ich damit ja nicht meine eigenen Settings in den conf-Files anpassen kann.

Oder bin ich da auf dem Holzweg?

Gruß
q-stkr
 
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.