Fritz!Box an Asterisk

rollo

IPPF-Promi
Mitglied seit
5 Jul 2004
Beiträge
8,321
Punkte für Reaktionen
5
Punkte
38
Ich packe das mal in einen neuen Thread, damit man es besser findet:

Angeregt durch verschieden Threads habe Ich noch mal ein wenig ausprobiert um die Fritz!Box am Asterisk anzumelden. Zunächst hat mich erstaunt, dass das connecten auf die interne IP nur mit nat=yes funtioniert, bei nat=no wird immer auf die externe registiert. Bei näherm hinsehen ist das aber richtig, da die Fritz!Box ja NAT vom DSL Interface, an dem der voipd hängt, nach innen macht.

Ausgehende Anrufe waren ok, eingehende nur ca. 3 min nach Registrierung. sip show peers zeigt mir dann auch, dass die Verbindung nicht besteht.

Abhilfe: In der voip.conf auf der Box ttl = 1m;
gesetzt (defaut ist 30m), damit erneuert die Box noch vor dem timeout beim Asterisk (180s) die Registrierung.


sip.conf
Code:
[2003]
type=friend
username=2003
secret=sachichnich
host=dynamic
context=internal
mailbox=103
auth=md5
nat=yes
reinvite=no
canreinvite=no
qualify=yes

Code:
2003/2003        192.168.178.1    D   N      255.255.255.255  5060     OK (7 ms)

voip.conf
Code:
voipcfg {
        dnsport = 7077;
        rtpport_start = 7078;
        ua1 {
                enabled = yes;
                username = "2003";
                authname = "2003";
                passwd = "sachichnich";
                registrar = "192.168.178.33:5050";
                ttl = 1m;
                sipping_enabled = no;
                sipping_interval = 280s;
                name = "jo";
                authenticatemode = authenticate_mode_allow;
                infodtmfnotsupported = no;
                register_failwaitmax = 30m;
                stunserverport = 3478;
        }

jo
 
rollo schrieb:
Abhilfe: In der voip.conf auf der Box ttl = 1m;
gesetzt (defaut ist 30m), damit erneuert die Box noch vor dem timeout beim Asterisk (180s) die Registrierung.
Schlauer Plan, probiere ich gerade aus. Ich hatte mal versucht, beim * das Timeout hochzusetzen, hast Du 'ne Ahnung, warum das nicht hilft (qualify=1800)?

Du hast in der voip.conf noch folgende Werte geändert, gegenüber den defaultwerten. Was haben die für eine Auswirkung:

> authname = "2003";
> registrar = "192.168.178.33:5050";
Warum ein anderer Port?

> authenticatemode = authenticate_mode_allow;
???

Udo
 
Der Asterisk sagt mir bei längeren TTLs von sich aus eine Lebensdauer von 180s, in der Box habe ich es jetz von 1m auf 175s gesetzt.

Der Wert hinter qualify gibt nicht das Abfrageintervall an sondern die Toleranzgrenze, ab wann ein Peer unrechable bzw. lagged ist. Evtl. gibt es da auch min/max Werte. Die Abfrageintervalle kann man AFAIK nicht konfigurieren.

5050 ist der Port meines Asterisks, 5060 ist ja schon durch die Fritz!Box belegt (habe den zweiten Anschluss noch direkt auf 1&1). Ausserdem habe ich noch den Pulver Communicator im Netz, der sich auch gern auf 5060 tummelt aber per UpnP seinen Weg findet.


jo
 
Hallo,

Ich nutze die Fritz! Box an einem Asterisk-Server, der zur Überbrückung
einer Firewall hier in einem Wohnheimsnetz dient - außerdem hat nicht
jeder User eine eigene IP-Adresse, ist alles hinter NAT.

Die Ping-Zeiten von der Fritz-Box zum Asterisk sind, da eine Standleitung zwischen beiden Rechnern liegt, entsprechend hoch: Mindestens 30 ms, ab und zu auch viel mehr.

Ich hatte auch das Problem, daß die Fritz! Box sehr oft nach einiger Zeit nicht mehr anrufbar war. Alles funktionierte, aber nach ein paar Stunden war
das Telefon für den Asterisk weg.

Wenn ich

asterisk -r -x "database show"
ausgeführt habe, konnte ich sehn, daß keine /SIP/Registry/<Meinenummer>
Zeile mehr vorhanden war.

Ich habe In der voip.conf auf der Box ttl = 1m; gesetzt, das hat aber nicht
geholfen. Auch ein Hochsetzen von

maxexpirey=1801
und
defaultexpirey=120

In der Asterisk-Config hat noch nicht geholfen. Erst ein zusätzliches
qualify=30000

In der Asterisk sip.conf Hat das Problem gelöst. Der Default
Wert war wesentlich niedriger.
Möglicherweise ist der Wert von 30000 ms zu hoch (30 Sek),
ist mir aber egal, hauptsache es tut! :)

Laut http://www.voip-info.org/wiki-asterisk+sip+qualify
legt der Qualify-Wert fest, nach welchem Zeitraum ohne
Antwort auf ein OPTIONS Kommando von Seiten des Asterisk
die Box als unreachable aus der Registry des Asterisk geworfen
wird.

Liegt entweder an den Ping-Zeiten, oder ist die Fritz-Box nicht
schnell genug im Antworten auf OPTIONS?

Hoffe, dies hilft jemand. Bei mir scheint es nun zu klappen.Dasselbe
gilt auch für z.B. Grandstream-Telefone, auch hier flog das Telefon
ab und zu aus der Asterisk-Registry.

Wer kann mir einen Tip geben, wie ich BEIDE Anschlüsse für
Analogtelefone an der Fritz-Box mit dem Asterisk nutzen kann?
Bei meiner Config haben sie dieselbe IP und Portnummer,
kann das klappen?

Gruß
Phil
 
birdy schrieb:
Wer kann mir einen Tip geben, wie ich BEIDE Anschlüsse für
Analogtelefone an der Fritz-Box mit dem Asterisk nutzen kann?
Bei meiner Config haben sie dieselbe IP und Portnummer,
kann das klappen?

Gruß
Phil

Hallo Phil,

kein Problem wenn Du unterschiedliche Benutzerdaten eingibst.

Qualify sorgt dafür, dass ein peer als erreichbar oder nicht erreichbar markiert wird, wenn innerhalb der festgelegten Zeitspanne keine Antwort erfolgt. Der Wert sagt nicht aus, wie oft abgefragt wird. Das ist irgendwo fest codiert. Mit "sip show peers" lässt sich der aktuelle Status überprüfen und auch, ob die Fritzbox mit interner oder mit externer IP angemeldet ist.
Die langen Pingzeiten könnten auf letzteren Fall hindeuten.

jo
 
birdy schrieb:
Ich hatte auch das Problem, daß die Fritz! Box sehr oft nach einiger Zeit nicht mehr anrufbar war. Alles funktionierte, aber nach ein paar Stunden war
das Telefon für den Asterisk weg.

Wenn ich

asterisk -r -x "database show"
ausgeführt habe, konnte ich sehn, daß keine /SIP/Registry/<Meinenummer>
Zeile mehr vorhanden war.

Ich habe In der voip.conf auf der Box ttl = 1m; gesetzt, das hat aber nicht
geholfen. Auch ein Hochsetzen von

maxexpirey=1801
und
defaultexpirey=120

In der Asterisk-Config hat noch nicht geholfen. Erst ein zusätzliches
qualify=30000

In der Asterisk sip.conf Hat das Problem gelöst. Der Default
Wert war wesentlich niedriger.
Möglicherweise ist der Wert von 30000 ms zu hoch (30 Sek),
ist mir aber egal, hauptsache es tut! :)


Phil

Leider trat das Problem immer noch auf. Es lang nicht an den Pingzeiten,
denn 30 ms ist deutlich niedriger als z.B. ein normaler DSL-Anschluss hat.

Hier ein Workaround:
In der fritz Box voip.conf : ttl = 1500m (Minuten, das ist mehr als 24h)
authname = 2003 (also nochmal dieselbe Telefonnummer wie bei username)
und im Asterisk in der sip.conf maxexpirey=87000 (Sekunden, ebenfalls mehr als 24h) setzen. Dann die Fritz! Box mittels Zeitschaltuhr oder Skript jeden Morgen um 3 Uhr resetten (Strom kurz unterbrechen). So bleibt sie den ganzen Tag erreichbar.

Ich habe mal dem Fritz Support gemailt, ob es ein FW-Update gibt, das
nicht mehr rumzickt.....

Gruß
Phil
 
birdy schrieb:
Ich habe mal dem Fritz Support gemailt, ob es ein FW-Update gibt, das
nicht mehr rumzickt.....

Hier die Antwort:

Sehr geehrter Herr Haeuser,

Eine Änderung dieses Verhaltens mit einer kommenden Firmware ist eher
unwahrscheinlich, da die FRITZ!Box Fon für dieses Einsatzszenario weder
entwickelt wurde, noch in einem solchen Szenario getestet wird.

Für diesen Einsatzbereich eigenet sich das Produkt FRITZ!Box Fon ATA
eher, da diese Hardware zum Einsatz an vorhandenen Netzwerken gebaut
wurde und keine DSL Verbindung aufbauen muss.

Mit freundlichen Grüßen

... (AVM Support)
 
Fritz Fimware 08.03.22: Probleme!

Hallo zusammen,

Mit der neuen Fritz! Firmware (Fritz Box WLAN) 08.03.22 bekomme
ich beim Registrieren am Asterisk die Meldung:

-- Registered SIP '4317679' at 10.24.28.3 port 5060 expires 87000
-- Got SIP response 489 "Bad Event" back from 10.24.28.3

und

Beim Anwählen:

-- Called 4317679
-- Got SIP response 488 "Not Acceptable Here" back from 10.24.28.3
== No one is available to answer at this time

Es kommt keine Verbindung zustande.

Was stimmt denn da nicht mehr? :( Hat das mit dem neuen Codec (ich glaube, die Fritz! Box hat doch einen neuen) zu tun?

Ein Zurückflashen auf die alte Firmware läßt das Webinterface
nicht zu!

Gruß
Phil
 
Re: Fritz Fimware 08.03.22: Probleme!

birdy schrieb:
Hallo zusammen,

Mit der neuen Fritz! Firmware (Fritz Box WLAN) 08.03.22 bekomme
ich beim Registrieren am Asterisk die Meldung:

-- Registered SIP '4317679' at 10.24.28.3 port 5060 expires 87000
-- Got SIP response 489 "Bad Event" back from 10.24.28.3

und

Beim Anwählen:

-- Called 4317679
-- Got SIP response 488 "Not Acceptable Here" back from 10.24.28.3
== No one is available to answer at this time

Es kommt keine Verbindung zustande.

Was stimmt denn da nicht mehr? :( Hat das mit dem neuen Codec (ich glaube, die Fritz! Box hat doch einen neuen) zu tun?

Ein Zurückflashen auf die alte Firmware läßt das Webinterface
nicht zu!

Gruß
Phil

Problem gelöst. Offenbar mag der Asterisk ein paar der neuen Codecs,
die die Fritz Box kann, nicht.

Hier auch nochmal die komplette Anleitung, wie man die Fritz Box
FON WLAN ohne DSL am LAN betreibt. ( Fast alles habe ich von
http://www.akk.org/~enrik/fbox/ geklaut ! :))

ANLEITUNG FRITZ BOX FON AM LAN MIT DHCP OHNE VERWENDUNG VON DSL

!WARNUNG! Wer hier einen Fehler macht oder nicht weiß, was er tut, kann seine Fritz Box leicht in einen sehr teuren Briefbeschwerer verwandeln!


Die Information in den folgenden Absätzen ist zwar noch relevant, mittlerweile
kann man jedoch die Box als DHCP-Client auch über das Webinterface
konfigurieren! Einfacher und sicherer. Sie holt sich dann eine IP-Adresse vom vorhandenen Router, wenn dieser als DHCP Server konfiguriert ist.
Per Webinterface geht das so: (Siehe Attachment!)
Dann muß man nur noch herausfinden, welche IP die Box bekommen
hat (probieren oder im Webinterface des Routers?) und kann unter
dieser IP auf die Box zugreifen (oder halt über USB :)).


Hier nun noch die "alte" Anleitung, mit dem Zeug für den Asterisk
und wie man den DHCP von Hand einstellt. Besser ist's wohl,
das mit dem DHCP über das Webinterface zu machen.

Also:
- Firmware ( 08.03.22 vom 24.12.04) flashen, damit habe ich es getestet.
Vorsicht, es ist nicht möglich, auf eine ältere Firmware zurück zu
gehen (ich weiss jedenfalls nicht, wie!)
- Zur Sicherheit: Per Webinterface die Box zurücksetzen auf Factory defaults.
- Man muß am Webinterface mal irgendwas ändern, sonst
bekommt man weiter unten bei den jeweils ersten cat Anweisungen
nur die Fehlermeldung "File not found" o.ä. - hier also gleich mal den
Voip-Anbieter Deiner Wahl eintragen.
- Firmware-Update mit dem bekannten starttelnet.image aufrufen
- telnet fritz.box (oder wie die IP eben jetzt heißt, die der DHCP Server vergibt)
und einloggen als root.

Erst die übliche Änderung (ich habe einen DHCP-Server in meinem
LAN, von dem soll sich die Fritz! Box eine IP geben lassen, und soll
nicht als DHCP Server agieren. DSL habe ich keines.

- cat /var/flash/ar7.cfg > /var/tmp/ar7.cfg
- vi ar7.cfg

dort unter Punkt brinterfaces zwei Sachen ändern:
dhcp = yes;
und
dhcpenabled = no;

und das File speichern, dann:
- cat /var/tmp/ar7.cfg > /var/flash/ar7.cfg


Damit bekommt die Box ihre IP-Adresse via DHCP, agiert aber selber
nicht als DHCP Server. Denn in meinem Netz gibt es bereits einen
DHCP Server.

dann die neue Änderung für die Codec-Config:

- cat /var/flash/voip.cfg > /var/tmp/voip.cfg
- vi /var/tmp/voip.cfg

dort folgende Zeilen wie folgt abändern:
use_audiocodecs = no;
ändern in
use_audiocodecs = yes;

audiocodecs = "PCMA", "PCMU", "G726-32", "G726-40", "G726-24";
ändern in
audiocodecs = "PCMA", "PCMU";

- cat /var/tmp/voip.cfg > /var/flash/voip.cfg
- reboot

Damit will die Fritz! Box nur noch die beiden Codecs PCMA und PCMU,
damit klappt es bei meinem Asterisk.

Die Box hält sich auch an die gemachten Änderungen der
Codecs, es ist also nicht nötig, jedesmal voipd -i 0 oder ähnliches
von Hand zu starten, wie ich das bei früheren Firmwares in Posts
im Internet gelesen habe.

Viel Spaß!
Phil
 

Anhänge

  • fritzbox-new1.png
    fritzbox-new1.png
    117.7 KB · Aufrufe: 222
Prima Anleitung Phil, vielen Dank.!

Ich habe mir das Update bisher nicht angetan, werde es aber wohl nächste Woche mal wagen ;)

jo
 
Hallo,

@birdy: FritzBox auf eine ältere Version geht mit recovery.exe oder recovery.pl
Einfach mal danach im AVM-Forum suchen.

Hab auch schon mehrmals damit geflasht. Aber man sollte sich die Anleitungen runterladen, um die FritzBox wieder hinzubekommen, wenn man sie zerschossen hat (dann geht ja auch das Internet nicht, wenn man kein extra DSL Modem hat).

Gruß,
Robert
 
Wegen eines neuen Problems hole ich den Thread mal wieder hoch.

Ich habe meiner Fritz!Box Fon inzwischen ein update auf die aktuelle Version angetan. Ausserem läuft sie wieder als Router und nicht mehr als "ATA". (2 Änderungen gleichzeitig sollte man besser nicht machen.)

Ich kann mich prima am * anmelden und Anrufe kommen durch. Nur ausgehende Telefonate kommen bei der Box nicht mehr an.

Aus meinem Eingangsthread weiss ich, dass es mit Version *.18 noch geklappt hat. Die Box schickt laut log einen invite raus, der aber nicht am * ankommt. Was auffällt, ist die fehlende Portnummer (abweichend 5050), die stand aber laut meinen alten logfiles sonst auch nicht dabei.

Code:
Feb  1 22:57:52 avalon  voipd[778]: incoming(4:appl=2 plci=0x204 ncci=0x0 incoming): 11  <- 0
Feb  1 22:57:52 avalon  voipd[778]: disconnected(appl=2 plci=0x204 ncci=0x0 incoming): remote: 0x0000 (0x0000) - No additional information
Feb  1 22:57:54 avalon  voipd[778]: incoming(4:appl=2 plci=0x204 ncci=0x0 incoming): 11 45 <- 0
Feb  1 22:57:54 avalon  voipd[778]: >>> Request: INVITE sip:[email protected]
Feb  1 22:58:15 avalon last message repeated 5 times
Feb  1 22:58:27 avalon  voipd[778]: call to sip:[email protected] terminated (0)
Feb  1 22:58:27 avalon  voipd[778]: disconnected(appl=2 plci=0x204 ncci=0x0 incoming): local: 0x0000 (0x0000) - No additional information

Hat jemand noch mit Erfolg eine Fritz!Box mit aktueller Firmware am * angemeldet?

jo
 
rollo schrieb:
Hat jemand noch mit Erfolg eine Fritz!Box mit aktueller Firmware am * angemeldet?
Nein :lol: zwei FritzBoxen.

Code:
Feb  1 23:13:02 voipd[304]: <<< Request: OPTIONS sip:[email protected]
Feb  1 23:13:02 voipd[304]: >>> Status: 200 OK
Feb  1 23:14:02 voipd[304]: <<< Request: OPTIONS sip:[email protected]
Feb  1 23:14:02 voipd[304]: >>> Status: 200 OK

Feb  1 23:21:42 voipd[842]: <<< Request: OPTIONS sip:[email protected]
Feb  1 23:21:42 voipd[842]: >>> Status: 200 OK
Feb  1 23:21:42 voipd[842]: <<< Request: OPTIONS sip:[email protected]
Feb  1 23:21:42 voipd[842]: >>> Status: 200 OK

Habe bei den FW-Updates nie was geändert. Wir telefonieren mit diesen 4 Accounts ständig intern. Alles prima! Sag an, wenn Du irgendwelche Config-Details brauchst.

Udo
 
Udo, ich nehme an, Dein * läuft auf port 5060 ?

Es sieht so aus, als ob die neue Firmware den Port ignoriert. Mit Kurzwahl klappt es merkwürdigerweise, da steht auch der port in der SIP URI:

Code:
Feb  2 09:04:40 avalon  voipd[778]: >>> Request: INVITE sip:[email protected]:5050
Feb  2 09:04:41 avalon  voipd[778]: <<< Status: 407 Proxy Authentication Required
Feb  2 09:04:41 avalon  voipd[778]: >>> Request: ACK sip:[email protected]:5050
Feb  2 09:04:41 avalon  voipd[778]: 2003: my address 192.168.178.1
Feb  2 09:04:41 avalon  voipd[778]: >>> Request: INVITE sip:[email protected]:5050
Feb  2 09:04:41 avalon  voipd[778]: <<< Status: 100 Trying
Feb  2 09:04:41 avalon  voipd[778]: 2003: my address 192.168.178.1
Feb  2 09:04:42 avalon  voipd[778]: <<< Status: 200 OK
Bei "normaler" Wahl fehlt der Port:
Code:
Feb  2 09:08:34 avalon  voipd[778]: >>> Request: INVITE sip:[email protected]

Code:
        ua1 {
                enabled = yes;
                username = "2003";
                authname = "2003";
                passwd = "xxxxxxx";
                registrar = "192.168.178.33:5050";
                ttl = 10m;
                sipping_enabled = no;
                sipping_interval = 280s;
                name = "jo";
                authenticatemode = authenticate_mode_allow;
                infodtmfnotsupported = no;
                register_failwaitmax = 30m;
                stunserverport = 3478;
        }

Mein erste Vermutung, dass die Route nicht gefunden wird bestätigt sich damit nicht.

Ratlos

jo
 
rollo schrieb:
Udo, ich nehme an, Dein * läuft auf port 5060 ?
Ja, bei mir läuft alles auf 5060.
Ich hatte nie Probleme damit, trotzdem kann jedes Endgerät gezielt von außen auch per VoIP angerufen werden.
(Es wär jetzt übertrieben, wenn ich sagen würde, daß ich verstehe, warum das so ist).
Bei manchen Providern steht nämlich auch in den Anleitungen, dass man den zweiten VoIP-Client auf 5062 usw. legen soll. Ein Freund von mir hat das gemacht, aber später festgestellt, dass es gar nicht nötig war.

Udo
 
In der Tat merkwürdig. Wenn Fritz!Box als Router und * beide auf 5060 laufen, kommen nach meinem Verständins eingehende Anrufe ausschließlich auf der Fritz!Box an. Ich kann ja auch kein Portforwarding für 5060 einstellen.

Ich habe das in den letzten Tagen nicht weiterverfolgt, für mich ist wichtig das ich über den Weg * -> Fritz!Box angerufen werden kann, was ja funktioniert.

jo
 
Hi,

sorry wenn ich ein altes Topic mal wieder hochhole aber versteh ich dies richtig das ich eine fritzbox!fon als Gateway fuer eine Asterisk verwenden kann...?

Hintergrund ist ich habe

1x Fritzbox!Fon hier in England am DSL
1x Optipoint SIP
1x Cisco 7960 SIP


Danke & Ciao
 
Hallo zusammen,
auch wenn das Thema schon etwas älter ist: ich habe gerade zufällig genau das Problem, dass ich mit einer FritzBox 7170 und einem Softphone telefonieren möchte - beide hängen an Asterisk 1.2.4.
So weit, so gut... mit dem Softphone kann ich die Fritz anrufen, aber anders herum geht es nicht: ich höre ein Freizeichen, währe und nach ein paar Sekunden gibt's ein Besetztzeichen. In der Asterisk-Console taucht nix auf - kein Hinweis, keine Warnung, kein Überhauptnix.
Ich habe den Verdacht, dass die Fritz gar nicht erst versucht hat, über Asterisk zu wählen. Die internen Telefonnummern (30 - 39) sollten zumindest alle per Wählregel über SIP gehen.

Hat jemand einen Tipp für mich?

Danke
Torsten
 
Versuchs mal mit 30# - 39#.

Hab mich auch mal damit beschäftigt.

Wie es geht stoht irgendwo im Forum.

Bis bald

Hans
 
Hallo,
meine Frage passt so gut zu diesem Threadtitel,daher poste ich sie hier:

Ich versuche folgende Konfiguration zu erstellen:

Internet - Asterisk - Fritz7170 - ISDN-Telefon.

Asterisk zeigt mir mit sip show peers an, daß die FritzBox 7170 mit der Rufnummer 106 registriert ist.

Code:
106/106               192.168.178.2    D          5060     OK (6 ms)
Die 7170 zeigt mir in ihrer Übersicht aber, daß die Rufnummer nicht registriert ist.
Telefonieren von SIP-Phone an Asterisk zum ISDN Tel an der 7170 geht, aber wenn ich vom ISDN-Tel rufen will, klappt es nicht.
Mein Fritz-Eintrag in der SIP-CONF sieht wie folgt aus:
Code:
[106]
callerid=106 <106>
host=dynamic
username=106
secret=106
type=friend
nat=no
canreinvite=no
context=fritz_in
qualify=yes

Der LAN-Tracer zeigt an, daß Asterisk mit Info 401 (Unauthorized) antwortet.

Kann man nur durch Konfigurationen überhaupt die Fritzbox an einem Asterisk registrieren ? Oder muß man die Fritz!Box modfiziere ?

Danke für die Hilfe.

Gruß muckbert
 
Zuletzt bearbeitet:

Zurzeit aktive Besucher

Statistik des Forums

Themen
244,831
Beiträge
2,219,105
Mitglieder
371,533
Neuestes Mitglied
ipeee
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.