April 5

Telekom VoIP mit Asterisk & FreePBX als SIP Trunk

Dank etwas mangelhafter Dokumentation seitens des großen T▪ schien es mir bisher
kaum möglich, einen SIP Trunk bei einem Telekom Call & Surf Anschluss
ordentlich ans Laufen zu bringen.
Mittlerweile habe ich endlich eine funktionierende Konfiguration
auf Basis meines FreePBX mit Asterisk Unterbau gefunden,
die auch dem Telekom SIP Server schmeckt.

*Update*: Mittlerweile scheinen die DTAG-SBC’s ein bisschen
umgänglicher geworden zu sein. Ich habe vor kurzem einen Trunk mit chan_pjsip
und etwas weniger umständlichen Einstellungen zum Laufen bekommen.
Die entsprechende Variante gibt es hier.

Da die alte Variante aber auch noch funktioniert, lasse ich sie hier mal
noch zum nachlesen, falls es mit dem pjsip-Trunk nicht klappt:

 

Im FreePBX im Menü Connectivity einen neuen chan_SIP Trunk anlegen,
dort dann folgendes eintragen:

Wichtig: Die Rufnummer immer (falls nicht anders beschrieben) mit Vorwahl und
führender 0 angeben!

  • General Settings
    • Trunk Name <- einen eindeutigen Namen für den Trunk eingeben,
      z.B. DTAG SIP
    • Outbound CallerID: Die Rufnummer, mit der es nach außen geht
      (inkl. Vorwahl und führender 0)
    • CID Options sind euch überlassen
    • Maximum Channels: ich habe 1 gewählt. Gut möglich,
      dass auch mehr gehen
  • Dial Number Manipulation Rules können auch leer bleiben
    bzw. nach euren Wünschen angepasst werden
  • Outgoing Settings
    • Trunk Name nach Belieben
    • bei den „PEER Details“ wird’s nochmal spannend:
      type=friend
      username=RUFNUMMER
      fromuser=RUFNUMMER
      secret=PASSWORT
      host=tel.t-online.de
      nat=yes
      dtmfmode=rfc2833
      canreinvite=update
      fromdomain=tel.t-online.de
      insecure=very
      qualify=yes
    • das qualify=yes kann auch auf no gesetzt werden, da der tel.t-online.de derzeit
      auf ein OPTIONS Paket ohnehin nur mit einem 403 Forbidden antwortet…
      (uncool, liebe Telekom.)
      Update: Mittlerweile antwortet der tel.t-online.de korrekt auf die Options-Pakete!
  • Incoming Settings
    • USER Context bekommt erneut eure Rufnummer
    • USER Details können leer bleiben
  • Registration
    • Register String:
      RUFNUMMER:PASSWORT:RUFNUMMER@tel.t-online.de/RUFNUMMER OHNE VORWAHL
    • Beispiel (als Rufnummer nehmen wir die 0123-4567, Passwort: pass):
      01234567:pass:01234567@tel.t-online.de/4567

 

Soweit zu den Trunk Einstellungen. Per tcpdump (oder sniffer eigener Wahl)
sollte jetzt schon ein Register, ähnlich wie dieser zu erkennen sein:

REGISTER sip:tel.t-online.de SIP/2.0
Via: SIP/2.0/UDP 192.168.0.1:5060;branch=xxxxxxx;rport
Max-Forwards: 70
From: <sip:01234567@tel.t-online.de>;tag=xxxxxx
To: <sip:01234567@tel.t-online.de>
Call-ID: xxxxxxx@127.0.1.1
CSeq: 104 REGISTER
Supported: replaces, timer
User-Agent: FreePBX
Authorization: Digest username="01234567", realm="tel.t-online.de", algorithm=MD5, uri="sip:tel.t-online.de", nonce="xxxxx", response="xxxxx"
Expires: 480
Contact: <sip:4567@192.168.0.1:5060>
Content-Length: 0


SIP/2.0 200 OK
Via: SIP/2.0/UDP 192.168.0.1:5060;received=87.XXX.XXX.XX;rport=62664;branch=xxxxx
To: <sip:+491234567@tel.t-online.de>;tag=xxxxxxx
From: <sip:+491234567@tel.t-online.de>;tag=wavfr34tv3
Call-ID: asdfvwev3@127.0.1.1
CSeq: 104 REGISTER
Contact: <sip:4567@192.168.0.1:5060>;expires=480
Contact: <sip:01234567@87.XXX.XXX.XX;uniq=xxxxx;eribindingid=xxxxx>;expires=2585
P-Associated-Uri: <sip:01234567@tel.t-online.de>
P-Associated-Uri: <sip:00491234567@tel.t-online.de>
P-Associated-Uri: <tel:1234567>
P-Associated-Uri: <sip:+491234567@tel.t-online.de>
Service-Route: <sip:217.0.23.100:5060;transport=udp;lr>
Content-Length: 0

Dazu müssen natürlich noch Inbound und Outbound Routes angelegt werden,
diese folgen jedoch nun ohne Besonderheiten dem normalen Ablauf.

Wenn euch zeitweilen ein SIP 423 (Interval too brief) wie dieser entgegenkommt, sollte um des
lieben Friedens willen noch der defaultexpiry Wert in den SIP Einstellungen auf den passenden
Wert eingetragen werden:
SIP/2.0 423 Interval Too Brief
Via: SIP/2.0/UDP 192.168.0.1:5060;received=87.XXX.XXX.XX;rport=63689;branch=xxxx
To: <sip:+491234567@tel.t-online.de>;tag=xxxx
From: <sip:+491234567@tel.t-online.de>;tag=xxxx
Call-ID: xxxx@127.0.1.1
CSeq: 107 REGISTER
Content-Length: 0
Min-Expires: 480

Dazu einfach in die Asterisk SIP Settings gehen und bei den chan_sip Einstellungen
unter Registration Settings, Registration Times den defaultexpiry auf 480 setzen.

Wenn man das nicht macht, hat das zwar keine Auswirkungen auf die Funktionalität,
aber sowohl der DTAG SIP Server, als auch euer PBX freut sich, wenn er keine unnötigen
Register Pakete verarbeiten muss.

Mit diesen Einstellungen funktioniert es zumindest bei mir auch nach umfangreichen
Tests ganz gut. Falls doch Probleme auftreten oder es Verbesserungsvorschläge gibt, freue ich
mich immer über Rückmeldungen!


Schlagwörter: , ,

Veröffentlicht5. April 2015 von gerger in Kategorie "Allgemein

37 COMMENTS :

  1. By Matthias on

    Hi, bin gerade auf deinen wertvollen Beitrag gestoßen. Habe auch alles so, wie Du und es geht. Füge ich aber einen weiteren Trunk hinzu, so wird dieser nie registriert. hast Du das mal bei Dir probiert?
    Matthias

    Antworten
    1. By gerger (Beitrag Autor) on

      Danke für die nette Rückmeldung!
      Habe ich noch nicht ausprobiert, versuche ich aber die Tage mal nachzustellen.
      Ist der 2. Trunk ebenfalls ein DTAG Zugang? Wird das Register abgelehnt
      oder versucht der PBX es gar nicht erst?

      Antworten
      1. By Matthias on

        War ein User Error. Ein neuer Trunk wird beim Anlegen „disabled“. Das habe ich vor lauter „Bäumen“ übersehen. Aber Dein Beitrag hat doch zur Lösung beigetragen….
        Danke dafür!
        Macht man den Haken bei disabled weg, geht alles. Habe jetzt für meine 8 MSNs 8 Trunks registriert, das geht.
        Jetzt wird weiter konfiguriert.
        Matthias

        Antworten
  2. By Serkan on

    Hallo,
    versuche gerade Telekom IP Anschluss mit FreePBX zum laufen zu kriegen.
    Leider verstehe ich Deine ANleitung nicht ganz, speziell das mit der Rufnummer!! Vorwahl und führender 0. Was ist das?
    Kannst Du mir anhand dieser Rufnummer helfen, das korrekt hinzubekommen?
    03096080611

    Danke und beste Grüße
    Serkan

    Antworten
    1. By gerger (Beitrag Autor) on

      Hallo Serkan,
      Vorwahl ist in deinem Fall die 30 und die führende 0 eben die 0 ganz am Anfang. Also genau so, wie du es auch schon geschrieben hast.
      Bei Outbound CallerID trägst du also die 03096080611 ein.
      In die Outgoing Settings kommt bei den PEER details dann folgendes rein:
      type=friend
      username=03096080611
      fromuser=03096080611
      secret=DeinPasswort
      host=tel.t-online.de
      nat=yes
      dtmfmode=rfc2833
      canreinvite=update
      fromdomain=tel.t-online.de
      insecure=very
      qualify=yes

      Bei den incoming settings kommt in den USER Context auch nochmal die 03096080611 rein
      und ganz unten bei Registration kommt als Register string dann folgendes:
      03096080611:deinpasswort:03096080611@tel.t-online.de/96080611

      Antworten
  3. By lewald on

    Hallo, erstmal danke für die tolle Anleitung. Als Neuling habe ich allerdings noch eine Frage. Ich würde gerne meine FreePBX am SpeedportHybrid direkt betreiben. Kann das so funktionieren oder brauche ich dazu immer noch eine Fritzbox

    Antworten
    1. By gerger (Beitrag Autor) on

      Hallo,
      das Setup ist unabhängig von der FritzBox. Die FreePBX übernimmt mit diesen Einstellungen direkt die SIP Verbindung zur Telekom, sodass dies hinter jedem Router funktionieren sollte.

      Antworten
  4. By Freedo on

    Hi Gerger,
    vielen Dank für die ausführliche Beschreibung. Leider haben deine obigen Einstellungen mit einem Voice Data Anschluss bei mir nicht den erhofften Erfolg gebracht.

    Die Konsole meldet immer das die Authentifizierung fehlgeschlagen ist und das Kennwort nicht stimmt.

    Im Kundencenter habe ich die Einstellung vorgenommen, dass alle Dienste der Telekom via Authentifizierung über die T-Online E-Mail Adresse erfolgen können.

    Da ich bereits das Internet regelrecht durchforstet habe und dein Eintrag der am besten erklärteste und Neuste ist wollte ich dich um Hilfe bitten.

    Erfolgt bei dir die Authentifiezurung mit dem Kemnwort von den Zugangsdaten?
    Kannst du mir ein Bespiel zusenden wie die Konfiguration mit der T-Online E-Mail Adresse aussehen würde?

    Steht deine PBX hinter einer Firewall?

    Hoffentlich kannst du mir weiterhelfen, der T* Suppirt ist nicht wirklich eine große Hilfe.

    Gruß

    Antworten
  5. By Chris on

    Hat jemand schon mal Beitrag gesehen, wie das mit O2 oder Mnet gehen könnte? Diese Anschlüße haben Vlan40 für Inet und Vlan200 für Voip.
    Habe mir schon überlegt da an einem Router 2x PPPOE einrichten und Loadbalancing machen, damit nur 5060 ( welche ports benötigt asterisk noch? ) auf Voip geroutet werden. Habe mir mal die Voip.cfg aus der Fritzbox geladen werde aber nicht richtig schlau daraus,…

    Antworten
    1. By gerger (Beitrag Autor) on

      Hi Chris,
      mit den Carriern habe ich persönlich in der Hinsicht noch keine Erfahrungen. Was die Ports angeht, wird neben 5060 aber sicherlich noch eine ganze Range an UDP Ports für den RTP Datenstrom benötigt. Welche das allerdings sind, kann sich von Anbieter zu Anbieter unterscheiden.

      Antworten
  6. By Patrick on

    Hi Gerger,

    ich hätte ebenfalls Interesse an der Konfiguration mit der e-Mail Adresse von T-Online.

    Gruß

    Antworten
  7. By Michael on

    Super, danke. Hat bestens geklappt, vor allem die ausführliche Erläuterungen des Register Strings (mit / ohne Vorwahl) war sehr hilfreich.

    Antworten
  8. By Christian on

    Hallo Leute,

    ich bin zufällig hierauf gestoßen.
    Der Post hat mir sehr geholfen und ich habe erfolgreich meine drei Nummern vom großen T an FreePBX angemeldet:

    XXXXX33/030XXXXX33 217.0.23.100 Yes Yes 5060 OK (20 ms)
    XXXXX51/030XXXXX51 217.0.23.100 Yes Yes 5060 OK (20 ms)
    XXXXX52/030XXXXX52 217.0.23.100 Yes Yes 5060 OK (19 ms)

    Allerdings komme ich bei den Outbound Routes nicht weiter.
    Hab eine neue Route angelegt:
    Name angelegt (OutXXXXX51)
    Route CID (030XXXXX51)
    Trunk Sequence (passen zu o.g. Nummer gewählt)
    Dial Pattern (X.)
    sonst alles auf Standard gelassen.

    Bekomme immer den Hinweis: All circuits are busy…

    Kann wer helfen?

    Danke im Voraus und schöne Weihnachten

    Antworten
    1. By gerger (Beitrag Autor) on

      Hi Christian, kannst du auf dem FreePBX (per tcpdump/ngrep/wireshark/…) sehen,
      ob er bei einem ausgehenden Call überhaupt einen Invite Richtung DTAG sendet?
      Und wenn dem so ist: was kommt zurück?

      Antworten
      1. By Christian on

        Moin,
        danke für die schnelle Antwort.
        Hat sich aber schon erledigt. Hatte im String das @ vergessen. *schäm*
        Bin jetzt weiter am einrichten.

        Wie schon oben gesagt Schöne Weihnachten und einen guten Start ins neue Jahr

        Antworten
  9. By Bruno on

    Hallo,

    ich habe auch noch ein kleines Problem mit der FreePBX. Nach der tollen Anleitung hier, funktioniert das interne telefonieren und ich kann auch nach extern telefonieren. Nur die PBX reagiert auch keine externen Anrufe. Kann mir jemand ein Beispiel für die Incoming Routes zuschicken. Und eventuell noch die benötigten Ports, die ich am Speedport 920V noch öffnen müsste.

    Danke im Voraus.

    Antworten
  10. By Adel on

    Hallo.

    Könnte ich mein telekom voip zugangsdaten auf einem linux server (asterisk) benutzen ?

    MFG

    Antworten
    1. By gerger (Beitrag Autor) on

      Hi,
      klar. Die Server der Telekom interessieren sich nicht dafür, ob ein Windows oder Linux dahintersteckt.
      Hauptsache, die Daten passen und der Login erfolgt auch von einer Telekom-Leitung (von Fremdleitungen lassen sie es nicht durch).

      Antworten
  11. By Adel on

    Hallo.
    Könnten Sie es für mich konfigurieren ? gegen bezahlung,natürlich.

    Antworten
  12. By Thomas on

    Hallo,
    vielen Dank für die Info. Habe eine Freepbx hinter einem Speedport Hybrit. Der Trunk registriert sich auch und es werden beide (In+Out) als registriert angezeigt. Man kann anrufen und die Verbindung steht, wird aber nach 6 Sekunden wieder beendet.
    Im Log steht dieser Fehler:
    WARNING[1705] chan_sip.c: Retransmission timeout reached on transmission p65565t1466259359m595776c248129487s2 for seqno 1 (Critical Response) … Packet timed out after 6401ms with no response

    Antworten
    1. By gerger (Beitrag Autor) on

      Hallo Thomas,
      das sieht mir eher nach einem Leitungsproblem als nach einem Problem im FreePBX aus.
      Offenbar kommt es hier zu Paketverlusten, der FreePBX versucht dann eine erneute Übertragung (Retransmission), diese
      schlägt jedoch auch fehl. Dadurch bricht der Datenstrom ab und damit auch das Telefonat.
      Sind es immer 6 Sekunden und ist in dieser Zeit die Gegenseite zu hören?
      Interessant wäre auch, ob auch andere Geräte Verbindungsprobleme haben. Ein Dauerping auf den Telekom SIP-Server
      (in der Eingabeaufforderung: ping -t tel.t-online.de) von Anfang bis Ende des Gesprächs oder einen
      noch längeren Zeitraum könnte das etwas beleuchten. Hier dürften keine Zeitüberschreitungen auftreten.

      Antworten
      1. By Thomas on

        Hallo,
        habe ein Dauerping zum tel.t-online.de geschickt. Immer ca. 20ms und dann mit dem Handy die FreePBX angerufen. Verbindung wurde aufgebaut, abgenommen, Ton in beide Richtungen war da, dann nach 6-7 Sekunden war das Gespräch wieder weg, Ping während dessen 20ms gleichbeleibend und durchgehend.
        Diese 6400ms sind +/- 1-2ms immer gleich.
        Habe auch mit den NAT Einstellungen probiert und auch die aktuelle IP als feste IP eingetragen. Problem bleibt das gleiche. Der Hybrid Router überträgt alle Daten der FreePBX nur über die DSL-Leitung (25 MBit), nicht über LTE. Ping-Statistik: 794 gesendet, …, Verloren = 0.

        Antworten
        1. By Thomas on

          Irgendwie scheint der Trunk nicht richtig angemeldet zu sein, habe jetzt einen iax2 trunk hinterlegt und der steht in der grafik als online (und funktioniert auch) und der Telekom trunk nur als registriert.

          Antworten
  13. By freedos on

    Hallo Gerger,
    leider habe ich massive Probleme bei der Anmeldung über die T-Online E-Mail-Adresse. Ausgehende Anrufe funktionieren einwandfrei. Allerdings kann ich mich nicht für eingehende Anrufe registrieren.

    Könntest du bitte ein Beispiel (Outgoing Setting, Incoming Settings und Registration String) für einen SIP Trunk posten?

    Danke und Gruß

    Antworten
  14. By Marc on

    Ich bekomme mit den o.g. einstellungen immer

    NOTICE[23336]: chan_sip.c:15227 sip_reg_timeout: — Registration for ‚02311811111@tel.t-online.de‘ timed out, trying again (Attempt #3)

    Antworten
      1. By Marc on

        Ich habe heute es auf der FreePBX 13 versucht. Bekomme leider noch immer das = tel.t-online.de:5060 0XXXXXXXXX 120 Request Sent PROBLEM.

        (Komisch ist das ich mich mit meinen Softclient Problemlos anmelden und telefonieren kann.)

        [Hier ist meine Konfig]

        username=0231******1
        fromuser=0231******1
        type=friend
        secret=**********
        qualify=yes
        nat=yes
        insecure=very
        host=tel.t-online.de
        fromdomain=tel.t-online.de
        dtmfmode=rfc2833
        canreinvite=update

        [Register String]
        0231******1:Passwort:0231******1@tel.t-online.de/0231******1

        Antworten
  15. By Karo on

    Dial Patterns Outboud Routes
    +ZNX. (inland)
    00ZNX. (ausland)
    0221 NXX. (inland)
    das funktioniert bei mir, fals jemand schwierigkeiten hat

    ich habe gleiche einstellung im „trunk“, allerdings weiss ich nicht, ob man es braucht oder nicht…

    Antworten
  16. By Karo on

    leider höre ich kein eingehende sound
    gegenstelle kann mich hören
    wie habt ihr das eingestellt?

    Antworten
  17. By Markus on

    Hallo zusammen,
    ich habe Freepbx mit Asterisk 11.21.0 (Elastixs) am laufen. Ich versuche derzeit ein Telekom SIP Trunk einzurichten. Die eingehende Telefonie klappt nur die ausgehende telefonie klappt nicht. Ich habe mitlerweile schon etliche KOnfigs getestet daher bitte ich euch um Mithilfe. Fehler laut ssh lautet: SIP 2.0 403 bzw SIP RTP CoS mark 5. Die Trunks sind laut sip Show registry alle korrekt registriert. Meine Konfig:
    type=friend
    username=023142715767
    fromuser=023142715767
    secret=Passwort
    host=tel.t-online.de
    nat=yes
    dtmfmode=rfc2833
    canreinvite=update
    fromdomain=tel.t-online.de
    insecure=very
    qualify=yes

    Meine Reg: 023142715767:Passwort:023142715767@tel.t-online.de/42715767

    Hat hier jemand eine Idee?

    Antworten
  18. By freedos on

    Hallo Markus,

    genau das gleiche Problem hatte ich auch. Was ich feststellen konnte ist, dass für die ausgehende Telefonie Sonderzeichen im Kennwort (trotz escapen) bei der Elastix nicht funktionieren. Weiter sieht mein registry String wie folgt aus:
    VorwahlUndRufnummer:Kennwort(ohne Sonderzeichen):T-online-EMail-Adresse@tel.t-online.de/Rufnummer

    z.B: 0890342567:Password:Max@t-online.de@tel.t-online.de/342567

    Das Kennwort für die Internet-Telefonier lässt sich Neuerdings im E-Mail-Center wie folgt ändern:
    1. http://www.t-online.de
    2. Auf den Button Telekom-Login klicken
    3. Auf E-Mail klicken
    4. Auf den Punkt Menü –> Einstellungen klicken
    5. Auf Passwörter klicken
    6. Das Web-Kennwort ändern (wird zusammen mit der E-Mail-Adresse für die Internet-Telefonie verwendet)

    Bitte teile uns doch mit ob dies dein problem gelöst hat.
    Gruß und schönen Abend

    Antworten
  19. By Bert on

    Hallo,
    hat jeman schon Erfahrungen mit dem richtigen SIP-Trunk der Telekom, also Registrierungen über sip-trunk.telekom.de. Diesen gibt es noch nicht so lange und ich glaube auch noch nicht ganz offiziell im Vertrieb der Telekom, nur über den Aussendienst zu bestellen.
    Habe eine Askozia PBX im Einsatz und bekomme sie damit nicht zum laufen. Link zum Thread im Askozia-Forum: http://forums.askozia.com/index.php/topic,3752.0.html

    Vielen Dank
    Bert

    Antworten
    1. By gerger (Beitrag Autor) on

      Moin Bert,
      bislang hatte ich lediglich Zugriff auf die normalen SIP-Mehrgeräteanschlüsse der Telekom.
      Da bei dir das größte Problem ja der Zugriff auf die DTAG Infrastruktur ansich ist und vermutlich
      mangels korrekter Auflösung durch die DTAG (sip_reg_timeout: — Registration for ‚551127956932@sip-trunk.telekom.de‘ timed out, trying again (Attempt #2) )
      in einen Timeout gerät, ist das natürlich schwierig. Ich vermute mal, dass die Geräte der Telekom
      hier einen entsprechenden Host-Eintrag in deren internen DNS-Servern gesetzt hat, der dann auf die 217.0.15.67 zeigt und
      insgesamt durch etliche Strikereien offener für die Lösung per SRV-Eintrag sind. Dass diese „Lösung“ der Telekom natürlich
      nicht unbedingt eine umfangreiche Kompatibilität zu anderen Anlagen bringt, ist klar. Warum man hier nicht einen
      normalen A-Record für den Hostnamen setzt, wie beim tel.t-online.de, ist mir ehrlich gesagt nicht etwas unverständlich.
      Mal ganz davon abgesehen, dass man hier lediglich auf TCP-Übertragung setzt, was bei keiner mir bekannten PBX der Standard ist.
      Interessant wäre jedoch, ob deine PBX den Hostnamen mit dem korrekten Eintrag in der /etc/hosts überhaupt richtig auflöst.
      Wenn das der Fall wäre, wundert es mich, dass das in einen Timeout läuft. Habe leider derzeit keine DTAG Leitung zur Hand,
      um das mal selbst zu testen. Hast du mal einen tcpdump (oder sonstigen Pakettrace) auf der Anlage gemacht, um zu schauen, ob
      der REGISTER auch an die korrekte IP geht?

      Ich habe gerade mal ein paar DNS-Abfragen zu diesen Hostnamen gemacht. Der outbound Proxy (also reg.sip-trunk.telekom.de)
      hat auch nur SRV Einträge. Vermutlich wird daher auch dort die Auflösung durch die PBX fehlschlagen.
      Da der Host jedoch letzten Endes auch auf die 217.0.15.67 zeigt (dig reg.sip-trunk.telekom.de IN ANY -> _sip._tcp.reg.sip-trunk.telekom.de ->
      dig _sip._tcp.reg.sip-trunk.telekom.de IN SRV -> n-ipr-a02.sip-trunk.telekom.de -> dig n-ipr-a01.sip-trunk.telekom.de IN ANY -> n-ipr-a01.sip-trunk.telekom.de. 13 IN A 217.0.15.67),
      könntest du auch einmal zusätzlichen diesen Eintrag in die /etc/hosts setzen:
      217.0.15.67 reg.sip-trunk.telekom.de

      Vielleicht kommt die PBX ja dann schon etwas weiter.
      Gruß
      Kevin

      Antworten
  20. Pingback: Telekom SIP Rufnummern als Trunk in FreePBX 14 konfigurieren (mit chan_sip) – Random Tech Insights

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.