O2 VoIP mit Asterisk

basti1985

Neuer User
Mitglied seit
13 Mrz 2009
Beiträge
49
Punkte für Reaktionen
2
Punkte
8
Hallo,
da Infos wie Asterisk und o2 VoIP zusammenarbeiten recht dünn gesät sind, hier mal meine (zur Zeit) funktionierende Config.
Zunächst sei gesagt das ich mein eigenes DNS mache und der SIP Server sip.alice-voip.de nur über die DNS Server die man von o2 beim Verbindungsaufbau geliefert bekommt aufgelöst werden.

bind config:
Code:
# sip.alice-voip.de ist nicht public aufloesbar
# dns{3,4}.telefonica.de.
zone "alice-voip.de." IN {
   type forward;
   forward only;
   forwarders { 62.109.121.1; 62.109.121.2; };
};

sip.conf
Code:
register => 49<vorwahl><nummer>:<password>:49<vorwahl><nummer>@sip.alice-voip.de/o2

; peer
[o2]
type=peer
username=49<vorwahl><nummer>
fromuser=49<vorwahl><nummer>
secret     = <password>
host       = sip.alice-voip.de
fromdomain = sip.alice-voip.de
qualify=no
qualifyfreq=1800
dtmfmode=rfc2833
insecure=port,invite
caninvite=no
canreinvite=no
nat=yes
context=public
Die Parameter des Register strings findet man hier https://www.voip-info.org/wiki/view/Asterisk+SIP+register
Mit qualify=yes will er sich bei mir nicht verbinden.

DNS Test:
Code:
getent hosts sip.alice-voip.de

Asterisk Test:
Code:
asterisk -r
asterisk*CLI> sip show registry
sip.alice-voip.de:5060                  N      49<vorwahl><nummer>     1785 Registered           Mon, 19 Mar 2018 15:54:39

asterisk*CLI> sip show peers
o2/49<vorwahl><nummer>           195.71.31.47                                No         No             5060     Unmonitored
Nun steht zumindest die Verbindung zu o2 und man kann sich Gedanken über dem Dialplan machen.
 
Zuletzt bearbeitet:
Nachtrag:
sip.conf
Code:
nat=yes
Und in res_stun_monitor.conf eine public STUN Server eingetragen.
Sonnst ist telefonieren nach einem Reconnect nicht möglich (NAT).
 
hier mal meine (zur Zeit) funktionierende Config.

2 Monate hat das ganze gefunzt - Asterisk (FreePBX) hinter einer Fritzbox. Ab Heute morgen sehe ich für alle Rufnummer nur das:

Code:
[2018-08-15 11:40:50] NOTICE[1939]: chan_sip.c:15071 sip_reg_timeout:    -- Registration for '[email protected]' timed out, trying again (Attempt #56)
[2018-08-15 11:40:50] NOTICE[1939]: chan_sip.c:15071 sip_reg_timeout:    -- Registration for '[email protected]' timed out, trying again (Attempt #56)
[2018-08-15 11:40:50] NOTICE[1939]: chan_sip.c:15071 sip_reg_timeout:    -- Registration for '[email protected]' timed out, trying again (Attempt #56)
[2018-08-15 11:40:50] NOTICE[1939]: chan_sip.c:15071 sip_reg_timeout:    -- Registration for '[email protected]' timed out, trying again (Attempt #56)
[2018-08-15 11:40:50] NOTICE[1939]: chan_sip.c:15071 sip_reg_timeout:    -- Registration for '[email protected]' timed out, trying again (Attempt #56)
[2018-08-15 11:40:50] NOTICE[1939]: chan_sip.c:15071 sip_reg_timeout:    -- Registration for '[email protected]' timed out, trying again (Attempt #56)
[2018-08-15 11:40:50] NOTICE[1939]: chan_sip.c:15071 sip_reg_timeout:    -- Registration for '[email protected]' timed out, trying again (Attempt #56)
[2018-08-15 11:40:50] NOTICE[1939]: chan_sip.c:15071 sip_reg_timeout:    -- Registration for '[email protected]' timed out, trying again (Attempt #56)
 
o2 hatte heute eine Großstörung der Telefonie!
 
o2 hatte heute eine Großstörung der Telefonie!

DANKE, hab' bereits mitgekriegt - o2 Support angerufen. Was (für mich) merkwürdig ist, dass die RN von der FritzBox problemlos regiestrieren lässt, vom Asterisk aber (hinter der Box) - keinesfalls. :(
 
Seit ca. 4 Stunden alles ist wieder gut geworden. Scheint doch an o2 zu liegen. Vielen Dank für die Unterstützung!
 
Hallo,

hat jemand die basalen konfigurationsdateien von asterisk, um sich
bei o2 (sip.alice-voip.de) zu registrieren und um mit einem softphone (linphone, zoiper5 etc.) zu telefonieren.

a) wenn man deine konfig so übernimmt, wie leite ich sie dann an ein analoges Telefon, welches an der fritzbox angeschlossen ist weiter?

@basti1985 b) Wo finde ich die bind.conf? Oder kommt die in die sip.conf?

c) wenn asterisk die Registrierung vornimmt, muss ich die Anmeldung durch die Fritzbox deaktivieren, richtig?
d) Muss ich zusatzliche Freigaben (portforwarding) in der Fritzbox einrichten?
e) brauche ich eine feste ip?
f) sebst wenn ich ein softphone direkt mit den daten von o2 konfiguriere, kommt keine Registrierung zu stande.

Fur alle Tipps, ideen, Vorschläge und hilfreichen links, tuts/howtos etc. bin ich sehr dankbar

VG
ipmanasterisk
 
Zuletzt bearbeitet:
Hallo zusammen,

könnt ihr mit der o.g. Config länger am Stück telefonieren? Bei mir klappt irgendwas im Bereich NAT und Session Timer nicht: Nach ca. 15 min schickt O2 ein INVITE, mein Asterisk antwortet, re-transmittet einige Male, dann schickt O2 eine BYE ...

Kann mein Asterisk nicht mit dem Session-Timer umgehen, oder ist es ein NAT-Thema, dass meine Antwort nicht raus geht?

Mali
 
Ich habe das mit Asterisk 1.8 ausproiert. Die Konfiguration zu DNS habe ich weg gelassen. Damit sollte der Standard benutzt werden. Andere Internetseiten sind von dem Raspberry aus zu erreichen. Das Anmelden scheint funktioniert zu haben. Sip show peers bringt die gleiche Antwort, die Basti1985 gezigt hat. Allerdings kommt keine Verbindung zu Stande. Ich habe eine Nummer des Telefonnummernsatzes in der Fritzbox inaktiv geschaltet. Mit dieser Nummer hat sich Asterisk verbunden. Wenn ich sie von außen (vom Handy) anrufe, kommt die Ansage, dass die Nummer vorübergehend nicht erreichbar ist. Asterisk meldet nichts. Wenn ich über asterisk raus (zum Handy) anrufen möchte, wird in der Konsole "Forbidden..." angezeigt. Das Handy klingelt nicht. Ich habe unmittelbar vor dem Dial-Befehl eingefügt Set(CALLERID(num)=49...). Das hat leider nichts verändert. Hat jemand eine Idee zur Konfiguration? Muss mit dem Dial-Befehl noch etwas spezielles mitgegeben werden? Warum reagiert asterisk nicht auf eingehende Anrufe?
Beste Grüße
 
Hallo zusammen,

bei mir läuft es jetzt endlich, ich kann länger als 1800s telefonieren, sowohl rein als auch raus. Es hing anscheinend mit der Situation zusammen, dass der Asterisk hinter der O2 Homebox 6641 hing. Ich habe die Homebox durch ein Modem ersetzt und mache die Router-Funktionen jetzt auf dem Raspi, auf dem auch der Asterisk läuft. So klappt es jetzt. Ich würde also sagen, dass die von basti1985 beschriebene Konfiguration im Grunde klappt. Für die Akten: Bei mir läuft Asterisk 13.

Ein bisschen was zu meckern hab ich noch am Register-String, der ist nach meinem Verständnis nicht richtig so. Es geht um alles hinter dem @:

Nach dem @ kommt entweder der Name des Peer-Eintrags, der verwendet werden soll (müsste hier @o2 sein), oder der Name des Hosts, bei dem man sich registrieren will. Hier steht der Host. Das kann man so machen, man verliert aber die Verbindung zu der unten stehenden Peer-Definition. Nach dem / kommt dann aber die Extension, in die eingehende Anrufe gehen. Hier steht /o2, und das ist nach meiner Meinung nicht richtig, hier sollte irgendwas Numerisches stehen, das sich dann auch im Dialplan wieder findet. Dahinter habe - und brauche ich - noch ein ~1800 um den Abstand der neu-Registrierung von glaub ich 120s auf 1800s zu verlängern. Sonst akzeptiert O2 meine Registrierung nicht.

Der Kommentar in der sip.conf meint:
Code:

Und mein register-String sieht dann so aus:
Code:
register => 49221[rufnummer]:[secret]@alice/76~1800

Weiter unten definiere ich dann einen Peer [alice] ziemlich ähnlich, wie basti1985 das gemacht hat.

Viele Grüße,

mali
 
Zuletzt bearbeitet:
Hier ist noch der versprochene register-String aus dem Kommentar der sip.conf:

Code:
register => [peer?][transport://]user[@domain][:secret[:authuser]]@host[:port][/extension][~expiry]
 
Erst mal danke für diesen thread. Hat mich weitergebracht, letzendlich aus- und eingehende Telefonate mit o2 möglich zu machen. Nach dem Einrichten eines anderen direkt funktionierenden VoIP Anbieters und den ersten Gehversuchen mit FreePBX war das mit o2 hingegen eine harte Nuss...

Ich kann den Register-String von mali bestätigen. @trunkname oder @sip.alice-voip.de funktioniert beides (trunkname ist der bei Outgoing definierte). Welche Vor- oder Nachteile das eine oder andere hat, weiß ich nicht. Jedenfalls muss nach dem host oder peer die Extensionnummer stehen, nicht "o2". Man kommt hier also nicht mit Inbound Rules weiter, sondern muss sich anders helfen wenn z.B. eine Ring Group klingeln lassen wollte. Dann lässt man es mit dem Registry-String (@sip.alice-voip.de/99~1800) auf der 99 klingeln und macht dort nur ne Art Forwarding auf die Ring Group. Aber das nur am Rande.

Mein Problem ist jetzt, dass das Ganze zwar grundsätzlich läuft, aber nach einer Weile eingehende Anrufe nicht mehr funktionieren. Mein anrufendes Handy gibt ein Klingelzeichen und legt dann auf. Im Asterisk Log findet sich gar nichts, der Anruf kam nicht rein. Es liegt wohl daran, dass die Registrierung "verloren geht", die Verbindung nicht aufrecht gehalten oder so was. Wo kann ich da jetzt eingreifen? In Asterisk/FreePBX oder im router? Der Raspi hängt an einer FritzBox 7490, die vorher das o2 VoIP gemacht hat. Die Rufnummer ist natürlich jetzt deaktiviert und die von FreePBX eingetragen.
 
Das klingt sehr stark danach, dass das NAT-Portbinding nach einer bestimmten Inaktivität auf der Fritzbox gelöscht wird. Die Asterisk muss hier ein Keepalive mit simplen UDP-Paketen oder SIP OPTIONS senden, alternativ das Re-Regstrierungsintervall niedriger setzen, wenn möglich.
 
Das klingt sehr stark danach, dass das NAT-Portbinding nach einer bestimmten Inaktivität auf der Fritzbox gelöscht wird. Die Asterisk muss hier ein Keepalive mit simplen UDP-Paketen oder SIP OPTIONS senden, alternativ das Re-Regstrierungsintervall niedriger setzen, wenn möglich.
Genau, und wie geht das? :D
Das Re-Registrierungsintervall - ist das das, was hinten mit ~1800 angegeben wird? Wenn ja, ist das eine Vorgabe von o2, dass das nicht kleiner sein darf. Lässt man diesen Parameter weg, bekommt man im Asterisk log eine entsprechende Meldung.
 
Probiere in der sip.conf folgendes zu setzen:

qualify=yes

Dann müsstest du schauen, bspw. per Wireshark/tcpdump, ob regelmäßig OPTIONS gesendet werden.
 
Danke dir.
qualify=yes mag o2 gar nicht. Nur wenn ich qualify=no setze, geht die Registrierung überhaupt durch.
Mit Wireshark komme ich vermutlich nicht weiter, da ich das nicht auf der Fritzbox laufen lassen kann und die Pakete ja nicht an meinen Rechner gebroadcastet werden. Früher konnt man mal so nen "Paketmitschnitt" direkt auf der FritzBox starten. Muss mal sehen, ob das noch geht.

Woanders habe ich den Tipp gefunden, "keepalive=xxx" in der Trunk-Config zu setzen (https://whrl.pl/Re3dFr). das habe ich mal auf 120 gesetzt und teste es im Verlauf des Tages weiter.
 
Super, danke für den Link!
Ich meinte ja bezüglich Wireshark bloß, dass wenn ich das aufm PC laufen lasse, es nichts von dem Verkehr zwischen Asterisk und dem Internet (VoIP Anbieter) mitbekommt. Bin ja kein Man-In-The-Middle.
 
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.

IPPF im Überblick

Neueste Beiträge