ich hatte Anfang Februar im IP-Phone-Forum mal nebenbei erwähnt, dass ich die VoIP-Daten der Fritz!Box (HomeBox) bei Kabel Deutschland erfolgreich in meinen LANCOM-VoIP-Router eingetragen habe. Seitdem landen einige Leute regelmäßig per Google und den entsprechenden Suchbegriffen in dem Thread und suchen dann da eine Anleitung. Da dort keine steht und das Internet wohl auch sonst keine bietet, werde ich dann regelmäßig von völlig Verzweifelten per PN angesprochen, wie das denn geht und was wo rein kommt. Da das nun immer häufiger vorkommt, habe ich mich entschlossen, mich mal wieder hier im Forum sehen zu lassen und das Ganze mal grundsätzlich darzulegen.
Voraussetzungen: LANCOM-Router mit VoIP sowie KDG-(Komplett-)Anschluss mit VoIP als SIP über die FRITZ!Box 7270 (Die analogen Anschlüsse am Kabelmodem werden also NICHT genutzt. Läuft die Telefonie derzeit noch über die Kabelmodem-Analoganschlüsse, kann eine Vertragsänderung in Auftrag gegeben werden. Meines Wissens gibt es die SIP-Telefonie bei KDG nur im Paket Comfort mit optionaler HomeBox (Fritz!Box), die dann später im Schrank verschwindet oder für Sachen wie Call-Through und Faxempfang eingesetzt wird, die der LANCOM (noch) nicht kann. [Änderung 10.12.09: Die optionale HomeBox gibt es nun im Paket Comfort und im Paket Classic] [Änderung 12.01.12: Das Ganze funktioniert leider NICHT mehr mit der aktuellen FRITZ!Box 6360, da man diese anschließend als Kabelmodem benötigt und die Telefonie damit automatisch über die 6360 läuft.])
Einschränkungen: Im normalen Betrieb keine. Was nicht geht ist, die KDG-SIP-Leitungen über eine Backup-Leitung zu nutzen, falls das Internet über KDG mal ausfällt. [[Änderung 09.12.09: Nachfolgende Einschränkung wurde inzwischen von KDG geändert/behoben. Es wird nun kein Display-Name mehr übermittelt.] Der SIP-Display-Name, sowas kennen die ollen Fritz!Boxen ja leider nicht (hat sich das vielleicht schon geändert?), ist bei KDG stets und ständig "NULL", auch wenn man sich z. B. über KDG selber anruft. Bei IP-Telefonen, die diesen Namen anzeigen, muss man da halt drüber weg schauen, den normalen Namen/Nummer aus der SIP-URI gibt es ja dann noch und der ist ok.] Weiterhin geht T.38 derzeit noch nicht. Ich habe es aber mit ein paar Leuten aus dem IP-Phone-Forum angesprochen und KDG hat zugesichert, dass T.38 kommt, wann steht allerdings meines Wissens noch nicht fest. (Je mehr Leute Druck machen, insbesondere bei den Business-Anschlüssen - je eher.)
Anleitung:
1. Fritz!Box anschließen und prüfen, ob die VoIP-Konfigurations-Daten per TR-069* angekommen sind (also in der Fritz!Box die Internetrufnummern eingerichtet sind). Dieser Schritt kann übersprungen werden, wenn bisher mit der Fritz!Box bereits gearbeitet wurde.
2. Fritz!Box Telnet-Zugang einrichten (da kann man von einem ISDN- oder Analogtelefon, was an der Fritz!Box angeschlossen ist, die Tastenkombination #96*7* eingeben, um Telnet zu aktivieren). Da ich grad kein Telefon zur Hand hatte oder nicht extra umstecken wollte, habe ich ein Firmware-Update mit einem Befehl zum Telnet starten eingespielt. Man findet es im Netz, durch eine Suche nach Fritz!Box und starttelnet.image
3. Telnet starten und evt. gleich mitloggen (z. B. mit PuTTY). Dann den Befehl zum Auslesen der VoIP-Config eingeben, hier der Anfang meines Mitschnitts:
Code: Alles auswählen
=~=~=~=~=~=~=~=~=~=~=~= PuTTY log 2009.01.09 01:18:16 =~=~=~=~=~=~=~=~=~=~=~=
BusyBox v1.8.2 (2008-08-19 14:56:32 CEST) 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
# allcfgconv -C voip -c -o /var/tmp/voip.cfg
# cat /var/tmp/voip.cfg
5. Im LANCOM die SIP-Leitungen von KDG eintragen (kann auch eine Auswahl sein). Dazu entweder die Daten dem Webinterface der Fritz!Box entnehmen oder der oben erstellten Konfigurationsdatei. Damit ich hier nicht so viel zu schreiben habe und damit das Ganze auch etwas anschaulich aussieht, gibt es dafür eine Anlage (Webinterface Fritz!Box -> LANconfig). Achtung wichtig! Es müssen die Daten genommen werden, wie sie in der jeweiligen Fritz!Box stehen, nicht einfach meine übernehmen. Regional verwendet KDG unterschiedliche Server, insbesondere die SIP-Domäne unterscheidet sich. Bitte nicht wundern, dass AVM-Registrar ungleich LANCOM-Registrar ist, das wollen manche auch nach meiner Anleitung nicht glauben...
6. Anschließend erfolgen nach Bedarf weitere VoIP-Einstellungen wie z. B. die Änderung von Call-Routen. Diese Anleitung geht davon aus, dass der LANCOM-Router bereits vorher genutzt wurde und VoIP-mäßig schon (vor-)konfiguriert ist.
7. Prüfen, ob sich die KDG-SIP-Leitungen registrieren (z. B. mit dem LANmonitor).
Viele Grüße,
Jirka
Ergänzung zu Punkt 5 (für alle die zu faul sind sich im Forum anzumelden, damit man die Anlage sieht und zur Gewährleistung der Barrierefreiheit):
Bezeichnung im Webinterface der Fritz!Box (Bezeichnung in der voipcfg) -> Bezeichnung in LANconfig (Bezeichnung in WEBconfig)
Internetrufnummer verwenden (enabled) -> Eintrag aktiv (Active)
Internetrufnummer (name) -> Provider-Name (Name) [frei wählbar, zur Identifizierung der SIP-Leitung]
Benutzername (username) -> SIP-ID/Benutzer (User-id)
Kennwort (passwd) -> Passwort (Secret)
Registrar (registrar) -> SIP-Domäne/Realm (Domain)
Proxy-Server (outboundproxy) -> Registrar {optional}/Outbound-Proxy {opt.} (Registrar/Outb-proxy) [Hinweis: in beide Felder eintragen]
* TR-069 steht für Technical Report 069, eine Spezifikation des DSL-Forums. Eine andere Bezeichnung dafür ist CWMP, das steht für CPE WAN Management Protocol, wobei CPE die Abkürzung für Customer Premise Equipment ist. Für den Vorgang der Fernkonfiguration wird auch der Begriff Autoprovisionierung verwendet. Das Beziehen der VoIP-Konfigurationsdaten kann nur mit der von KDG zur Verfügung gestellten Fritz!Box (HomeBox) erfolgen, auf deren Unterseite sich ein Aufkleber mit dem CWMP-Account befindet. Es soll auch möglich sein, die CWMP-Account-Daten per telnet zu überschreiben (und somit eine andere Fritz!Box zum Beziehen der Konfiguration zu nutzen), allerdings werden die CWMP-Daten dann beim nächsten Reboot vom Bootloader wieder hergestellt (was wohl aber nicht stört, denn die Konfigurationsdaten sind ja erstmal da). Des Weiteren werden die Konfigurationsdaten auch nur am Kabelmodem des Kunden mit der entsprechenden MAC-Adresse bezogen, es ist also nicht möglich die Konfigurationsdaten mit der Fritz!Box mit dem richtigen CWMP-Account an einem anderen Kabelmodem zu beziehen.
Ergänzung (26.11.2009):
Mit den neueren Fritz!Box-Firmwaren (ab .76 ?) ist es nicht mehr möglich, im Webinterface die Einstellungen für die (KDG-)SIP-Accounts ("Internetrufnummern") aufzurufen (wie im beiliegenden Screenshot). Daher entweder gar nicht erst eine neue Firmware installieren oder aber auf eine ältere (.67) downgraden. Oder aber, wahrscheinlich sinnvoller, nur nach der voip.cfg gehen und da alles entnehmen. Daher ist obige Mapping-Tabelle "Ergänzung zu Punkt 5" jetzt in normaler Schriftgröße und nicht mehr klein.
Will man nun tatsächlich die Fritz!Box als SIP-Client am LANCOM nutzen wie oben schon geschrieben (z. B. Callthrough), dann stösst man auf ein fettes Problem, wenn von/zu der Fritz!Box als SIP-Client am LANCOM über die KDG-Leitungen Gespräche geführt werden sollen. Dann hört nämlich die Gegenseite nichts. Dieses Problem liegt an unpassenden RTP-Default-Werten für die VoIP-Telefonie der Fritz!Box (bzw. an einer eingeschränkten Kompatibilität des KDG-Servers).
Änderung der angelegten VoIP-Accounts ("Internetrufnummer") in der Fritz!Box, um RTP dem Standard anzupassen und somit auch Telefonie über KDG zu ermöglichen (der LANCOM-Router ändert nicht den RTP-Stream!):
Es muss der Parameter tx_packetsize_in_ms in der voip.cfg geändert werden.
Vorher -> Nachher
tx_packetsize_in_ms = 30; -> tx_packetsize_in_ms = 20;
Damit werden die RTP-Daten in kürzeren Abständen geschickt, so dass der RTP-Stream kompatibel zum KDG-Server ist.
Konfiguration bearbeiten (mit nvi - ACHTUNG! Keine Fehler machen!):
nvi /var/flash/voip.cfg
/ tippen und tx_packetsize_in_ms (also /tx_packetsize_in_ms) ENTER
Cursor auf die 3 von 30 bewegen
ESC und grosses R tippen (kein ENTER)
2 eintippen (kein ENTER)
mit ESC:wq ENTER wird gespeichert
(und dann Neustart der Box)
Bitte ggf. die Änderung auch bei den anderen angelegten Accounts weiter unten in der voip.cfg durchführen. Danach steht einer Nutzung der Fritz!Box als SIP-Client am LANCOM nichts mehr im Wege. Unter Einstellungen -> Erweiterte Einstellungen -> Telefonie -> Internettelefonie -> Erweiterte Einstellungen -> 'Sprachpakete kennzeichnen (Type of Service)' gibt es in der Fritz!Box die Möglichkeit SIP-Pakete und RTP-Pakete entsprechend priorisiert zu versenden, indem der DSCP-Wert als dezimaler Wert angegeben werden kann. Standardmäßig sind beide Werte 0. Man kann hier für RTP einen Wert von 46 (dezimal) eintragen, was binär 101110 entspricht und damit dem EF (Expedited Forwarding). Die Pakete werden dann entsprechend markiert.
Viele Grüße,
Jirka