vafk18
Goto Top

VoIP Fritzbox 7490: Gesprächspartner hören sich nicht bei internen Anrufen

Guten Tag,

ich habe zwei Standorte (Office und Home) über IPSEC (pfSense) verbunden. Am Hauptstandort steht eine FritzBox 7369 im Client-Modus, die ausschließlich für IP-Telefonie und WLAN-Access Point zuständig ist. An ihr hängen mehrere Cisco IP Phones. Die Telefonie funktioniert einwandfrei. Nun wurde die FritzBox durch das Modell 7490 ersetzt und dabei passiert folgendes: ruft ein Teilnehmer einen anderen Teilnehmer intern an, hören sich beide Gesprächspartner nach dem Abheben nicht. Legt man auf und drückt sofort auf Wahlwiedeholung, können sich beide Gesprächspartner erst nach einer 2-3-maligen Wahlwiederholung hören. Das passiert, wenn Teilnehmer von Office nach Home und vice versa wählen und auch von Home intern. Nicht jedoch, wenn man Anrufe nach Extern führt. Dort kommt sofort eine einwandfreie Verbindung zustande.

Hat jemand eine Idee, welche Einstellungen vorgenommen werden könnten?

Content-Key: 1396108070

Url: https://administrator.de/contentid/1396108070

Printed on: April 25, 2024 at 12:04 o'clock

Member: aqui
Solution aqui Oct 16, 2021 updated at 14:32:56 (UTC)
Goto Top
Aktuelle FritzBox Versionen nutzen nur noch TCP für die SIP Encapsulation. Hast du das in den Cisco Konfig Files der Telefone beachtet ?!
Cisco Telefone für All IP Anschluss, FritzBox und andere VoIP Anlagen fit machen
Ebenso der Parameter nat_enable auf 0 (nur intern ohne NAT) in der XML Datei, denn du telefonierst ja ausschliesslich intern über die FritzBox als "VoIP Telefon Anlage" wo es kein NAT gibt:
Cisco Telefone für All IP Anschluss, FritzBox und andere VoIP Anlagen fit machen
Member: vafk18
vafk18 Oct 18, 2021 updated at 18:05:33 (UTC)
Goto Top
@aqui

Vielen Dank für die Links! Ich habe Deine Anweisung befolgt, doch leider ohne Erfolg. Ich finde die Syntax nicht, mit der in der XML-Datei nat_enable auf 0 gesetzt werden soll. In keiner der mir vorliegenden XML's bzw. den im Internet konnte ich diesen Schlüssel finden. Was muß denn genau in der XML stehen?

Zur Vervollständigung füge ich die Standard-XML ein, so wie ich diese schon lange auf meine 7945/7965 und den älteren Fritzboxen 7270 und 7369 benutzte. Es wäre super, wenn Du diese ergänzen bzw. das Überflüssige darin streichen könntest. 1000 Dank im Voraus!

Eine Bitte habe ich noch: ich konnte bislang die Locale-Datei für meine 7945/7965 finden. Trotz einer Registrierung auf Cisco ist es nicht (mehr) möglich, dort die Dateien xxx.cop.sgn herunterzuladen. Einzig fand ich im Netz die po-locale-de_DE-9.3.4.1000-1.cop.sgn und po-locale-de_DE-k3-10.3.2.1000-1.cop.sgn, aber diese beinhalten Dateien für 7905, 7920, 7921 und 7960, die wie ich annehme nicht mit meinem Telefon kompatibel sein dürften. Wenn doch, bitte um OK, daß ich diese benutzen darf face-smile Und wenn nein, vielleicht weißt Du, wo man diese noch bekommt...


<?xml version="1.0" encoding="UTF-8"?>
<device>
<fullConfig>true</fullConfig>
<deviceProtocol>SIP</deviceProtocol>
<sshUserId>cisco</sshUserId>
<sshPassword>cisco</sshPassword>

<authenticationURL>http://cisco.znil.net/ciscoauth.php</authenticationURL>

<devicePool>
<dateTimeSetting>
<name>Central Europe</name>
<dateTemplate>D.M.YY</dateTemplate>
<timeZone>Central Europe Standard/Daylight Time</timeZone>
<ntps>
<ntp>
<name>192.168.1.1</name>
<ntpMode>Unicast</ntpMode>
</ntp>
</ntps>
</dateTimeSetting>
<callManagerGroup>
<tftpDefault>true</tftpDefault>
<members>
<member priority="0">
<callManager>
<ports>
<ethernetPhonePort>2000</ethernetPhonePort>
<sipPort>5060</sipPort>
<securedSipPort>5061</securedSipPort>
</ports>
<processNodeName>192.168.1.2</processNodeName>
</callManager>
</member>
</members>
</callManagerGroup>
</devicePool>

<commonProfile>
<phonePassword></phonePassword>
<backgroundImageAccess>true</backgroundImageAccess>
<callLogBlfEnabled>0</callLogBlfEnabled>
</commonProfile>

<loadInformation>SIP45.9-4-2SR3-1S</loadInformation>
<vendorConfig>
<disableSpeaker>false</disableSpeaker>
<disableSpeakerAndHeadset>false</disableSpeakerAndHeadset>
<pcPort>0</pcPort>
<settingsAccess>1</settingsAccess>
<garp>0</garp>
<voiceVlanAccess>0</voiceVlanAccess>
<videoCapability>0</videoCapability>
<g722CodecSupport>2</g722CodecSupport>
<autoSelectLineEnable>0</autoSelectLineEnable>
<sshAccess>0</sshAccess>
<sshPort>22</sshPort>
<webAccess>0</webAccess>
<spanToPCPort>1</spanToPCPort>
<loggingDisplay>1</loggingDisplay>
<loadServer></loadServer>
<daysDisplayNotActive></daysDisplayNotActive>
<displayOnTime>09:00</displayOnTime>
<displayOnDuration>00:05</displayOnDuration>
<displayIdleTimeout>00:05</displayIdleTimeout>
<displayOnWhenIncomingCall>1</displayOnWhenIncomingCall>
</vendorConfig>

<deviceSecurityMode>1</deviceSecurityMode>

<dscpForSCCPPhoneConfig>96</dscpForSCCPPhoneConfig>
<dscpForSCCPPhoneServices>0</dscpForSCCPPhoneServices>
<dscpForCm2Dvce>96</dscpForCm2Dvce>
<transportLayerProtocol>1</transportLayerProtocol>
<capfAuthMode>0</capfAuthMode>
<capfList>
<capf>
<phonePort>3804</phonePort>
</capf>
</capfList>
<certHash></certHash>
<encrConfig>false</encrConfig>

<sipProfile>

<sipProxies>
<backupProxy></backupProxy>
<backupProxyPort></backupProxyPort>
<emergencyProxy></emergencyProxy>
<emergencyProxyPort></emergencyProxyPort>
<outboundProxy></outboundProxy>
<outboundProxyPort></outboundProxyPort>
<registerWithProxy>true</registerWithProxy>
</sipProxies>

<sipCallFeatures>
<cnfJoinEnabled>true</cnfJoinEnabled>
<callForwardURI>x--serviceuri-cfwdall</callForwardURI>
<callPickupURI>x-cisco-serviceuri-pickup</callPickupURI>
<callPickupListURI>x-cisco-serviceuri-opickup</callPickupListURI>
<callPickupGroupURI>x-cisco-serviceuri-gpickup</callPickupGroupURI>
<meetMeServiceURI>x-cisco-serviceuri-meetme</meetMeServiceURI>
<abbreviatedDialURI>x-cisco-serviceuri-abbrdial</abbreviatedDialURI>
<rfc2543Hold>false</rfc2543Hold>
<callHoldRingback>2</callHoldRingback>
<localCfwdEnable>true</localCfwdEnable>
<semiAttendedTransfer>true</semiAttendedTransfer>
<anonymousCallBlock>2</anonymousCallBlock>
<callerIdBlocking>2</callerIdBlocking>
<dndControl>0</dndControl>
<remoteCcEnable>true</remoteCcEnable>
</sipCallFeatures>

<sipStack>
<sipInviteRetx>6</sipInviteRetx>
<sipRetx>10</sipRetx>
<timerInviteExpires>180</timerInviteExpires>
<timerRegisterExpires>3600</timerRegisterExpires>
<timerRegisterDelta>5</timerRegisterDelta>
<timerKeepAliveExpires>120</timerKeepAliveExpires>
<timerSubscribeExpires>120</timerSubscribeExpires>
<timerSubscribeDelta>5</timerSubscribeDelta>
<timerT1>500</timerT1>
<timerT2>4000</timerT2>
<maxRedirects>70</maxRedirects>
<remotePartyID>false</remotePartyID>
<userInfo>None</userInfo>
</sipStack>

<autoAnswerTimer>1</autoAnswerTimer>
<autoAnswerAltBehavior>false</autoAnswerAltBehavior>
<autoAnswerOverride>true</autoAnswerOverride>
<transferOnhookEnabled>true</transferOnhookEnabled>
<enableVad>false</enableVad>
<preferredCodec>g722</preferredCodec>
<dtmfAvtPayload>101</dtmfAvtPayload>
<dtmfDbLevel>3</dtmfDbLevel>
<dtmfOutofBand>avt</dtmfOutofBand>
<alwaysUsePrimeLine>false</alwaysUsePrimeLine>
<alwaysUsePrimeLineVoiceMail>false</alwaysUsePrimeLineVoiceMail>
<kpml>3</kpml>
<natEnabled>false</natEnabled>
<natAddress></natAddress>
<stutterMsgWaiting>2</stutterMsgWaiting>
<callStats>false</callStats>
<silentPeriodBetweenCallWaitingBursts>10</silentPeriodBetweenCallWaitingBursts>
<disableLocalSpeedDialConfig>false</disableLocalSpeedDialConfig>
<startMediaPort>16384</startMediaPort>
<stopMediaPort>32766</stopMediaPort>
<voipControlPort>5060</voipControlPort>
<dscpForAudio>184</dscpForAudio>
<ringSettingBusyStationPolicy>0</ringSettingBusyStationPolicy>
<dialTemplate>dialplan.xml</dialTemplate>
<phoneLabel>Office</phoneLabel>

<sipLines>
<line button="1" lineIndex="1">
<featureID>9</featureID>
<featureLabel>123456</featureLabel>
<name>00000620</name>
<displayName>00000620</displayName>
<contact>00000620</contact>
<proxy>USECALLMANAGER</proxy>
<port>5060</port>
<autoAnswer>
<autoAnswerEnabled>2</autoAnswerEnabled>
</autoAnswer>
<callWaiting>3</callWaiting>
<authName>00000620</authName>
<authPassword>12345678</authPassword>
<sharedLine>false</sharedLine>
<messageWaitingLampPolicy>1</messageWaitingLampPolicy>
<messagesNumber>*600</messagesNumber>
<ringSettingIdle>4</ringSettingIdle>
<ringSettingActive>5</ringSettingActive>
<forwardCallInfoDisplay>
<callerName>true</callerName>
<callerNumber>true</callerNumber>
<redirectedNumber>false</redirectedNumber>
<dialedNumber>true</dialedNumber>
</forwardCallInfoDisplay>
</line>
</sipLines>
</sipProfile>
<advertiseG722Codec>1</advertiseG722Codec>
<userLocale>
<name>German_Germany</name>
<uid>1</uid>
<langCode>de</langCode>
<version>11.0(2.9902)</version>
<winCharSet>UTF-8</winCharSet>
</userLocale>
<networkLocale>Germany</networkLocale>
<networkLocaleInfo>
<name>Germany</name>
<uid>64</uid>
<version>11.0(2.9902)</version>
</networkLocaleInfo>
</device>
Member: aqui
Solution aqui Oct 18, 2021 updated at 18:26:20 (UTC)
Goto Top
Ich finde die Syntax nicht, mit der in der XML-Datei nat_enable auf 0 gesetzt werden soll.
Hier mal ein Auszug aus der Konfig Datei eines 79er und 88er Modells:
</sipStack>
<autoAnswerTimer>1</autoAnswerTimer>
<autoAnswerAltBehavior>false</autoAnswerAltBehavior>
<autoAnswerOverride>true</autoAnswerOverride>
<transferOnhookEnabled>false</transferOnhookEnabled>
<enableVad>false</enableVad>
<preferredCodec>g711alaw</preferredCodec>
<dtmfAvtPayload>101</dtmfAvtPayload>
<dtmfDbLevel>3</dtmfDbLevel>
<dtmfOutofBand>avt</dtmfOutofBand>
<alwaysUsePrimeLine>false</alwaysUsePrimeLine>
<alwaysUsePrimeLineVoiceMail>false</alwaysUsePrimeLineVoiceMail>
<kpml>3</kpml>
<natEnabled>true</natEnabled>
<natAddress></natAddress>
<stutterMsgWaiting>0</stutterMsgWaiting>
<callStats>false</callStats>
<silentPeriodBetweenCallWaitingBursts>10</silentPeriodBetweenCallWaitingBursts>
<disableLocalSpeedDialConfig>false</disableLocalSpeedDialConfig>
<startMediaPort>16384</startMediaPort>
<stopMediaPort>32766</stopMediaPort>
<voipControlPort>5060</voipControlPort>
<dscpForAudio>184</dscpForAudio>
<ringSettingBusyStationPolicy>0</ringSettingBusyStationPolicy>
<dialTemplate>dialplan.xml</dialTemplate>

Ist im Bereich hinter dem <sip/stack> face-wink
Ist ein Binärwert true aktiviert und false deaktiviert die Funktion.
Member: vafk18
vafk18 Oct 18, 2021 updated at 18:50:56 (UTC)
Goto Top
@aqui
Danke! Wenn der Wert laut Deinem vorherigen Post auf '0' gesetzt werden soll, dann false?

Es scheint jetzt zu funktionieren. Es lag also neben

<transportLayerProtocol>1</transportLayerProtocol>

auch an

<natEnabled>false</natEnabled>

Welche Erklärung gibt es, daß das Telefonieren mit anderen (falschen) Einstellung immerhin nach 2-3x Wahlwiederholung möglich war?
Member: vafk18
vafk18 Oct 18, 2021 at 19:12:11 (UTC)
Goto Top
Neues Update:

Jetzt habe ich noch einige Male versucht anzurufen, dann habe ich wieder das gleiche Problem: ein internes Gespräch führen ist erst nach 2x Wahlwiederholung möglich. Einmal geht es, ein anderes Mal nicht face-sad
Member: vafk18
vafk18 Nov 01, 2021 updated at 21:10:55 (UTC)
Goto Top
Also nachdem ich alles versucht habe und mich u.a. an die Vorgaben von @aqui gehalten habe (TCP statt UDP & Nat disabled), bekomme ich die Verbindung zwischen zwei internen Telefonen erst nach 2-3-maligem Anrufen kurz hintereinander realisiert. Bis dahin ist es so, daß das angewählte Telefon zwar klingelt, aber die beiden Gesprächspartner hören sich nicht. Da die Verbindung später klappt, habe ich die Vermutung, daß es an der Entfernung zwischen der FritzBox 7490 und den Cisco-Telefonen, da die Fritzbox "im Internet" ist. Wenn ich wieder zu Hause sein werde, werde ich die ältere FritzBox 7369 anschließen, die schon mal problemlos funktioniert hat.

Ich habe mir zum Testen der Fritzboxen WLAN-Steckdosen besorgt, die über den sog. Schnellstartrouter der Telekom (es ist ein Huawei) mit dem Internet verbunden sind. Gegenwärtig habe ich eine 7490 und 7412 konfiguriert, beide mit der gleichen IP, damit ich nicht alle XML-Dateien der Ciscos ändern muß. Das Umschalten der Fritzboxen ist praktisch auch nur das Einzige, was gerade reibungslos klappt face-sad Die Fritzbox 7412 läßt siche "aus dem Internet" gar nicht erreichen, also es buchen sich nur Telefone am Hauptstandort an, nicht jedoch die am Remote-Standort. Die 7490 wiederum macht die zuvor beschriebenen Probleme.

So langsam verliere ich Freude daran, mich mit den Fritzboxen zu beschäftigen. Vielleicht werde ich auch nur bestraft, weil ich diese Fritboxen zur IP-Telefonie und WLAN-AP kastriert habe, denn zum Einwählen ins Internet benutze ich eine pfSense.

Irgendwann wollte ich Asterisk installieren und wahrscheinlich ist es jetzt an der Zeit. Auch deshalb, weil man an einer Fritzbox nur 10 IP-Telefone einrichten kann. Mit zwei Standorten und 5 IP-Telefonen ist das Einrichten von Smartphones über FritzFon eine Qual. Die neueste FritzFon v2.3 geht nicht und ich habe dann alle älteren ausprobiert, bis erst die v1.90 funktioniert hat. Zum Schluß habe ich den Kram gelöscht, weil ich nicht alle Familienmitglieder mit ihren Smartphones einrichten konnte und mich nicht so recht entscheiden konnte, wen ich mit der Software bestrafe und wen nicht (wegen der maximal zuässigen 10 Teilnehmer).

***Edit
Um meine Vermutung, daß das Problem an der Entfernung zwischen der Fritzbox und der Telefone am entfernten Standort kommt mir noch folgende Idee:
Könnte ich eine FritzBox 7490, die am Netzwerk 192.168.3.0/24 hängt so einrichten, daß sie sich über IPSec am Netzwerk 192.168.2.0/24 einwählt (das ist das Netzwerk, an dem sich der Telekom-Anschluß befindet). Dann könnte ich sofort sehen, ob die interne Telefonie funktioniert. Im Prinzip ist es mir egal, ob die FritzBox die VoIP am Haupt- oder Nebenstandort macht. Falls es geht, wie muß ich da vorgehen?
Member: aqui
Solution aqui Nov 02, 2021 at 07:24:54 (UTC)
Goto Top
WLAN-Steckdosen besorgt
Sowas wie das hier ??: https://www.bastelbunker.de/gosund-sp111-mit-tasmota/
Also aus- und einschalten über WLAN ?
Gegenwärtig habe ich eine 7490 und 7412 konfiguriert, beide mit der gleichen IP
Aber dann wohl hoffentliche NICHT beide auch gleichzeitig aktiv ??
Die Fritzbox 7412 läßt siche "aus dem Internet" gar nicht erreichen
WIE meinst du das jetzt ??
  • über den öffentlichen WAN Port oder sind sie über VPN gekoppelt und du willst sie per VPN über ihren LAN Port erreichen ?? Eine kurze Skizze deiens Setups wäre hier mehr als hilfreich damit man deine Vorgehensweise versteht.
Generell sind die FritzBoxen eigentlich problemlos laufenden kleine VoIP Anlagen für sich gesehen. Dabei ist es völlig egal ob sie "one armed" oder als Router angeschlossen sind. Für die Telefonie Funktion an sich ist das völlig unerheblich. Generell laufen die Cisco Telefone völlig unauffällig mit der FritzBox VoIP Funktion wie dir ja auch die zahllosen Artikel z.B. der ct' usw. zeigen.
Wichtig ist nur zu beachten das die FBs in aktuellen Images rein nur noch TCP bei der SIP Encapsulation supporten.
Auch sollte man beachten das die SIP Credentials ein spezielles Format haben müssen. Ältere Fimware will hier als Usernamen nur die Nebenstellen Nummer sehen neuere Username/Pass mit mindestens 8 Stellen. Da muss man also genau aufpassen.
Ideal ist immer wenn man lokal die SIP Connectivity mit der jeweiligen FritzBox austestet. Wenn das sauber klappt, dann klappt es zu 99,9% auch von remote über ein VPN.
daß sie sich über IPSec am Netzwerk 192.168.2.0/24 einwählt
Mit "einwählen" meinst du eine SIP Einwahl oder die LAN-zu-LAN Kopplung per VPN ?? Ist etwas wirr.

Normal geht man imemr so vor:
  • Beide IP Netze mit einem VPN koppeln
  • Eine der FritzBoxen agiert als zentrale Telefonanlage auf der sich alle VoIP Telefone registrieren
  • Eine Kopplung beider VoIPs in den FritzBoxen über VPN ist auch möglich. Siehe HIER.
Wichtig ist immer das man mit den Cisco Telefonen zuerst an der jeweiligen FB an der sie registriert werden sollen lokal testet das der Zugang klappt. So weiss man wasserdicht das die SIP/RTP Einrichtung da dann korrekt ist und im Fehlerfalle es NICHT am VoIP liegt.
Member: vafk18
vafk18 Nov 04, 2021 updated at 18:58:09 (UTC)
Goto Top
@aqui

Erstmal vielen Dank für die guten Kommentare und Fragen face-smile

Genau solche WLAN-Steckdose meinte ich, allerdings kann man auf diesen kein Tasmota aufspielen, leider, dafür waren sie aber mit 5 Euro preiswert, so daß ich zum Experiementieren in Kauf genommen habe, daß die Chinese sehen, was ich in meinem Keller habe face-smile))

Das habe ich gemacht, damit ich mehrere gleich konfigurierte FritzBoxen am entfernten Ort testen kann (wie in dem von Dir verlinkten Artikel der C't der VoIP-Durchreiche beschrieben), mit dem Unterschied , daß der VPN-Tunnerl mit zwei pfSensen gemacht wird.

Gegenwärtig ist es simpel, da die FritzBox direkt am VDSL der Telekom (192.168.2.0/24) hängt und die Cisco's am anderen Ende des IPSec VPN werden über einen TFTP im 192.168.3.0/24 mit Konfiguration versorgt und dort trage ich unter <processNodeName>192.168.2.2</processNodeName> die IP der FritzBox. Im Übrigen funktioniert auch die interne Telefonie. Ich weiß nicht, woran es lag. Zwei Tage nach meinem letzten Post hat es funktioniert. Vielleicht hat das mehrmalige Ein- und Ausschalten der Ciscos dazu geführt, daß sie sich endlich die neue Konfiguration gezogen haben...

Angenommen ich wollte es umgekehrt machen und die SIP-Einwahl durch eine FritzBox an meinem (entfernten) Arbeitsort vornehmen, über den IPSec VPN am Home-Anschluß (wo der VDSL der Telekom ist).
Die FritzBox ist im 192.168.3.0/24 Netz und würde die SIP-Einwahl am 192.168.2.0/24 machen.

Mir ist nicht klar, wo das in der FritzBox eingetragen wird. Wenn das nämlich funktionieren würde, könnte jeder mittels VPN sich von jedem Ort der Welt mit seinem Hausanschluß in Germany verbinden und dort telefonieren. Ich würde diese Variante vorziehen, da die FritzBoxen schon mal Probleme machen und wenn ich zu Hause nur die pfSense hätte (diese ist noch nie abgestürzt), könne ich bei Bedarf alle Anpassungen hier am Arbeitsort vornehmen und nicht mehr über remote control wie zuvor beschrieben.
Member: aqui
Solution aqui Nov 05, 2021 updated at 09:48:41 (UTC)
Goto Top
allerdings kann man auf diesen kein Tasmota aufspielen, leider, dafür waren sie aber mit 5 Euro preiswert
Das ist aber außergewöhnlich. Auf so gut wie JEDER dieser Dosen kann man Tasmota flashen, denn dort ist zu 99,9% immer ein ESP8266 Chip drin und alle sind mehr oder minder baugleich vom Innenleben. Mittlerweile kann man Tasmota sogar über die WLAN Schnittstelle flashen ohne die aufschrauben zu müssen.
Du musst einfach nur mal nach "Tasmota <Dosenname>" googeln. Es wäre ein Wunder wenn man da keine Tasmota Lösung findet... face-wink
Mir ist nicht klar, wo das in der FritzBox eingetragen wird.
In jedem Falle brauchst du dann aber eine VPN Connection zw. den FBs. Hier ist es genau beschrieben wie man die FB Anlagen koppelt:
https://www.heise.de/ct/ausgabe/2015-6-Tk-Anlagen-mehrerer-Fritzboxen-mi ...
Member: vafk18
vafk18 Nov 06, 2021, updated at Nov 08, 2021 at 09:31:34 (UTC)
Goto Top
Zitat von @aqui:

Du musst einfach nur mal nach "Tasmota <Dosenname>" googeln. Es wäre ein Wunder wenn man da keine Tasmota Lösung findet... face-wink
Ich habe die komplette Software zum Flashen von Tamota-kompatiblen Steckdosen auf einem Linux-Rechner installiert und leider wurde meine Steckdose Marke "LEDVANCE" nicht erkannt. Ich habe mich mit dem Thema eingehend beschäftigt und verstanden, daß der chinesische Hersteller, dessen Produkte angeblich 10000x unter unterschiedlichen Namen verkauft werden, immer wieder neue Chips auf den Markt wird und erst später wird ein Teil von diesen entschlüsselt. Nicht ohne Grund verkauft eine Hamburger Schmiede die Tamota-kompatiblen Steckdosen zum Stückpreis von 20 Euro, während ich nur 5 Euro bezahlt habe. Wie gesagt, ist nicht schlimm, heute konnte ich damit meine Wasserpumpe steuern, als ich die Markise saubergemacht habe, und das war schon ein echter Gewinn, daß ich nicht um das ganze Haus herumlaufen mußte, nur um die Pumpe auszuschalten face-smile))
In jedem Falle brauchst du dann aber eine VPN Connection zw. den FBs. Hier ist es genau beschrieben wie man die FB Anlagen koppelt:
https://www.heise.de/ct/ausgabe/2015-6-Tk-Anlagen-mehrerer-Fritzboxen-mi ...

Also müßte zwischen den beiden FritzBoxen 7490 ein weiterer VPN-Tunnel im bereits zwischen beiden pfSensen vorhandenen VPN-Tunnel (IPSec) eingerichter werden? Wenn ja, verstehe ich das nicht ganz, wo doch der Internetzugang am Standort Home nicht von einer FritzBox, sondern von einer pfSense gesteuert wird?

***Edit
Das Problem, daß sich zwei interne Gesprächspartner erst nach 2-3-maliger Wahlwiederholung hören, kommt nur vor, wenn es sich um zwei Telefone am entfernten Ort handelt. Ruft man hingegen vom Hauptstandort (wo die FritzBox VoIP macht) an den entfernten Ort bzw. vice-versa, dann kommt sofort eine Verbindung zustande. Vielleicht doch ein Laufzeitproblem?
Member: aqui
Solution aqui Nov 08, 2021 at 17:11:33 (UTC)
Goto Top
heute konnte ich damit meine Wasserpumpe steuern, als ich die Markise saubergemacht habe, und das war schon ein echter Gewinn
Aber dann mit dem Nachteil das auch der Chinese weiss wann du das machst und dieses Wissen auch noch zu Geld macht... Besser immer welche beschaffen die auch Tasmota freundlich sind. face-wink
Also müßte zwischen den beiden FritzBoxen 7490 ein weiterer VPN-Tunnel im bereits...
Nein, das wäre natürlich Blödsinn ! Essentiell ist aber das die Fritz sich routimngtechnisch über ihre lokalen LANs "sehen" können "! Dies lokale IP Connectivity brauchen sie zum Koppeln ihrer VoIP Anlagen. Ob man das über ihr eigenes VPN macht oder eins was andere Geräte realisieren ist natürlich egal. Wichtig ist nur das ihre beiden lokalen LANs verbunden sind und sich routingtechnsich erreichen können.
Ruft man hingegen vom Hauptstandort ....
Das Wichtigste dazu hast du leider nicht mitgeteilt... face-sad
Hier wäre es wichtig zu wissen WO die Anlage steht die diese Telefone nutzen ? Ist das statt der lokalen FritzBox die remote ??
Aber auch wenn wäre das irrelevant, denn die beiden Telefon benötigen lediglich den SIP Server einmal für den Rufaufbau um die Telefon IP des Partners zu erfahren. Danach wird der Rufaufbau an sich und auch die Voice Daten zwischen den Telefonen direkt ausgetauscht und gehen nich über den Route so quasi als "Durchlauferhitzer". Wäre ja auch unsinnig. Kannst du übrigens auch sehr einfach selber sehen wenn du nur einmal die IP Kommunikation nur eines dieser Telefone angesehen hättest.
Wireshark ist wie immer dein allerbester Freund dafür ja wenn man ihn denn nur einmal nutzen würde...!!
Laufzeit kann es also niemals sein. Stell dir mal Firmen vor mit einer zentralen VoIP Anlage und hunderten remoten Telefonen....
Einseitige Kommuniaktion ist fast immer ein RTP Problem das die an NAT oder einer Firewall Regel hängenbleiben.
Wie bereits gesagt...besser wäre es immer die Telefone die lokale FB verwenden zu lassen und beide FB Anlagen zu koppeln. (siehe ct' Artikel oben)
Member: aqui
aqui Nov 17, 2021 at 09:22:31 (UTC)
Goto Top
Wenn's das denn nun war bitte den Thread hier dann auch als erledigt schliessen !!
How can I mark a post as solved?
Member: vafk18
vafk18 Nov 21, 2021 updated at 11:27:56 (UTC)
Goto Top
@aqui

Entschuldige, daß ich mich nicht gemeldelt habe. Ich war wieder unterwegs. Nein, das Problem ist immer noch vorhanden und ich habe mich jetzt so verbissen, daß ich es lösen möchte. Dazu brauche ich Deine Hilfe. Ich fasse die bisherigen Ergebnisse zusammen:

Zwei interne Gesprächspartner an zwei getrennten Orten, die mit zwei pfSenses mit IPSec verbunden sind, die je über ein Cisco IP Phone 7965 am Hauptsitz an einer FritzBox 7490 registriert sind (diese stellt die Internetverbindung bzw. die SIP-Registration über die pfSense her und hat das interne Modem abgeschaltet), können sich erst hören, nachdem der Anrufende den Angerufenen 2-3x manchmal 4-5x anwählt. Das Klingeln geht sofort, aber die beiden hören sich erst nach mehrmaliger Anwahl.

Du hast mich (s.o) darauf aufmerksam gemacht, daß neuere FritzBoxen die TCP Encapsulation benötigen. Diese Auswahl habe ich eingestellt. Ebenso wie das NAT. Das Problem besteht weiter.

Ich würde gerne den Verbindungsaufbau mit WireShark untersuchen, doch leider habe ich das noch nie gemacht. Könntest Du mir schreiben, zumindest ansatzweise, was ich im WireShark einstellen muß und ob ich WireShark an beiden Standorten laufen lassen muß?

Vielen Dank und einen schönen Sonntag!
Member: aqui
Solution aqui Nov 21, 2021, updated at Nov 22, 2021 at 10:12:39 (UTC)
Goto Top
aber die beiden hören sich erst nach mehrmaliger Anwahl.
Das hört sich aber mehr oder minder nach einem Bug an. Das sich etwas von selbst repariert nachdem man 2 oder 3mal angerufen hat klingt etwas verdächtig und lässt da here einen Firmware Fehler vermuten.
daß neuere FritzBoxen die TCP Encapsulation benötigen. Diese Auswahl habe ich eingestellt.
Das gilt aber ausschliesslich nur für das SIP Protokoll. Also das Protokoll was die allein Verbindung zw. den Teilnehmern herstellt und NICHT die Voice Daten überträgt. Das macht RTP und RTP nutzt bei Voice immer UDP.
Ebenso wie das NAT.
NAT darf hier keinesfalls aktiviert sein in den Telefonen !! Du machst ja gar kein NAT, denn die VPN Funktion ist normal geroutet vollkommen ohne NAT.
Die Telefone erreichen die FritzBox die als lokale VoIP Anlage fungiert immer ohne NAT folglich muss das NAT im Telefon Setup immer deaktiviert sein !
Sprich der NAT Parameter im Telefon Setup MUSS auf <natEnabled>false</natEnabled> stehen !
doch leider habe ich das noch nie gemacht.
Einfach mit einer simplen, passiven Probe wie z.B. dieser oder via Bridge_Interface ins Telefon Patchkabel einschleifen und laufen lassen. Fertisch... face-wink
<edit>
Noch einfacher ist es wenn man einen Switch hat der Port Mirroring (Port Spiegelung) supportet. Dann einfach einen Spiegel Port zum Telefon Port einrichten und an dem Port mit dem Wireshark sniffern. </edit>
Member: vafk18
vafk18 Nov 21, 2021 at 17:59:16 (UTC)
Goto Top
@aqui

Ja, <natenabled> steht auf false.

Ich habe jetzt einen Teilerfolg: Ich konnte in einem D-Link DGS-1100-08 unter Port-Mirroring den Port eines der IP-Telefone auf den Port meines Rechners mit Wireshark umleiten.

Das zeigt mir folgende SIP-Daten:

1 192.168.2.188 192.168.2.2 SIP/SDP 1375 <sip:625@192.168.2.2> "00000620" <sip:00000620@192.168.2.2>;tag=ccd539d72514052052a3e2d6-8e6adf40 Request: INVITE sip:625@192.168.2.2;user=phone |
2 192.168.2.2 192.168.2.188 SIP 465 <sip:625@192.168.2.2>;tag=5B6F591B32EBA88C "00000620" <sip:00000620@192.168.2.2>;tag=ccd539d72514052052a3e2d6-8e6adf40 Status: 401 Unauthorized |
3 192.168.2.188 192.168.2.2 SIP 445 <sip:
625@192.168.2.2>;tag=5B6F591B32EBA88C "00000620" <sip:00000620@192.168.2.2>;tag=ccd539d72514052052a3e2d6-8e6adf40 Request: ACK sip:625@192.168.2.2;user=phone |
4 192.168.2.188 192.168.2.2 SIP/SDP 218 <sip:
625@192.168.2.2> "00000620" <sip:00000620@192.168.2.2>;tag=ccd539d72514052052a3e2d6-8e6adf40 Request: INVITE sip:625@192.168.2.2;user=phone |
5 192.168.2.2 192.168.2.188 SIP 402 <sip:
625@192.168.2.2> "00000620" <sip:00000620@192.168.2.2>;tag=ccd539d72514052052a3e2d6-8e6adf40 Status: 100 Trying |
6 192.168.2.2 192.168.2.188 SIP/SDP 838 <sip:625@192.168.2.2>;tag=95A2837331B5DA00 "00000620" <sip:00000620@192.168.2.2>;tag=ccd539d72514052052a3e2d6-8e6adf40 Status: 183 Session Progress |
7 192.168.2.2 192.168.2.188 SIP/SDP 1059 <sip:
625@192.168.2.2>;tag=95A2837331B5DA00 "00000620" <sip:00000620@192.168.2.2>;tag=ccd539d72514052052a3e2d6-8e6adf40 Status: 200 OK |
8 192.168.2.188 192.168.2.2 SIP 679 <sip:625@192.168.2.2>;tag=95A2837331B5DA00 "00000620" <sip:00000620@192.168.2.2>;tag=ccd539d72514052052a3e2d6-8e6adf40 Request: ACK sip:1CA60845D813A6F5E585FE778D244@192.168.2.2:5060 |
9 192.168.2.2 192.168.2.188 SIP 861 "00000620" <sip:00000620@192.168.2.2>;tag=ccd539d72514052052a3e2d6-8e6adf40 <sip:
625@192.168.2.2>;tag=95A2837331B5DA00 Request: BYE sip:00000620@192.168.2.188:50377;transport=tcp |
10 192.168.2.188 192.168.2.2 SIP 437 "00000620" <sip:00000620@192.168.2.2>;tag=ccd539d72514052052a3e2d6-8e6adf40 <sip:**625@192.168.2.2>;tag=95A2837331B5DA00 Status: 200 OK |

In der zweiten Zeile zeigt mir das Protokoll mit 401 eine fehlerhafte Authorisierung. Allerdings ist diese immer da, egal ob sich die Teilnehmer hören oder nicht.

Zweitens habe ich die Codecs für die Sprachübertragung im Verdacht gehabt und wollte die HD-Telefonie G.722 ausschalten. Dies ist m.E. bei der FritzBox 7490 nicht möglich. Zumindest steht diese Option bei keinem der IP-Telefone zur Wahl.

Aber AVM schreibt, daß man die HD-Telefonie auch am Telefon mit den Tasten #962*2* auf G.711 umgeschalten und mit #962*1* auf G.722 kann. Zumindest bei mir reagiert die FritzBox nicht und ich telefoniere immer mit G.722-HD (laut Wireshark und FritzBox-Telefonie-Eigene Rufnummern-Sprachübertragung). Vermutlich kann man die HD-Telefonie in der FritzBox nur bei analogen Telefonen und nicht bei IP-Telefonen abschalten. Die Anleitung von AVM spricht da nicht eindeutig https://tinyurl.com/r736rbsw Naja, vielleicht kann ich es dem Cisco in der Config beibringen...

Drittens habe ich mittlerweile im Internet gefunden, daß haufenweise User exakt dieses Problem haben, z.B. der Leidgenosse hier:

https://tinyurl.com/y6y5ehbh

Da also der Verbindungsaufbau funktioniert, kann man davon ausgehen, daß an der SIP-Einstellung nicht mehr gesucht werden muß. Es muß also also irgendwas mit dem RTP-Protokoll und dem Codec G.722 zu tun haben. Richtig?
Member: aqui
Solution aqui Nov 22, 2021 updated at 10:20:50 (UTC)
Goto Top
Port-Mirroring den Port eines der IP-Telefone auf den Port meines Rechners mit Wireshark umleiten.
Sorry, das Port Mirroring hatte ich oben vergessen ! Shame on me, das ist natürlich die eleganteste Variante Traffic mit dem Wireshark mitzusniffern !
Hast du also intuitiv alles richtig gemacht !! face-wink
Status: 401 Unauthorized sieht wirklich nicht normal aus. Auch "00000620" als Rufnummernformat ist irgentwie schon komisch, denn diese Nummer hast du ganz sicher nicht gewählt, oder ??
Da ist also irgendwas im Argen...
Bedenke das die FritzBox in neueren Versionen ein bestimmtes SIP Passwort Format vorschreibt (Mindestlänge usw.)
Der Dialstring wird vom Telefon maßgeblich durch die Datei dialplan.xml bestimmt. Möglich das du hier noch irgendwelche Reste drinstehen hast die da nicht hingehören.
So sollte der Inhalt aussehen:
<DIALTEMPLATE>
<TEMPLATE MATCH="2." TIMEOUT="1"/> <!-- Internal extensions 20 to 29. Wait 1 second, then dial -->
<TEMPLATE MATCH="......" TIMEOUT="1"/> <!-- 6 digits. Wait 1 second, then dial -->
<TEMPLATE MATCH="........" TIMEOUT="1"/> <!-- 8 digits. Wait 1 second, then dial -->
<TEMPLATE MATCH="0........" TIMEOUT="1"/> <!-- 0+8 digits. Wait 1 second -->
<TEMPLATE MATCH="0......" TIMEOUT="1"/> <!-- 0+6 digits. Wait 1 second -->
<TEMPLATE MATCH="00........" TIMEOUT="1"/> <!-- 00+6 digits. Wait 1 second -->
<TEMPLATE MATCH="00........." TIMEOUT="1"/> <!-- 00+9 digits. Wait 1 second -->
<TEMPLATE MATCH="00.........." TIMEOUT="1"/> <!-- 00+10 digits. Wait 1 second -->
<TEMPLATE MATCH="00..........." TIMEOUT="1"/> <!-- 00+11 digits. Wait 1 second -->
<TEMPLATE MATCH="01........." TIMEOUT="1"/> <!-- 01+9 digits Mobil. Wait 1 second -->
<TEMPLATE MATCH="701" TIMEOUT="0"/> <!-- 701 (VM for voicemail). Dial immediately -->
<TEMPLATE MATCH="*#" TIMEOUT="0" REWRITE="%1"/> <!-- Dial Immediately After Pressing # -->
<TEMPLATE MATCH="*" TIMEOUT="2"/> <!-- Anything else. Wait 2 seconds, then dial -->
</DIALTEMPLATE> 
Der Thread des Kollegen @LordGurke erklärt das Zusammenspiel recht gut:
VoIP-Telefonie über SIP-Client "Zoiper" (FritzBox 7560 als Router)
Member: vafk18
vafk18 Nov 22, 2021 updated at 12:02:18 (UTC)
Goto Top
@aqui

"00000620" ist der in der FritzBox eingetragene Benutzername des anrufenden Telefons. In der SEPxxxxxxxxxxxx.cnf.xml steht:

<name>00000620</name>
<displayName>00000620</displayName>
<contact>00000620</contact>
<authName>00000620</authName>

Im Stream steht, daß die pfSense (src 192.168.2.2) versucht Cisco (dest 192.168.2.188) über ICMP zu erreichen und in der Info "Destination unreachable / Port unreachable".

In meiner dialplan.xml steht lediglich:

<DIALTEMPLATE>
<TEMPLATE MATCH="*" Timeout="5" />
</DIALTEMPLATE>

Ich habe sie jetzt um das oben von Dir Zittierte ergänzt und werde weiter testen.


*** Edit
Betreffend des Fehlers 401 habe ich diese Info gefunden:

This is normal behavior. The traceroute function can be UDP-based. Basically packets are crafted to a random destination UDP port number. The packets are sent with TTL incrementing from 1 until reaching the desired destination IP address.

Quelle: https://learningnetwork.cisco.com/s/question/0D53i00000Kt4fJ/gns3-icmp-d ...
Member: aqui
Solution aqui Nov 22, 2021 updated at 13:19:15 (UTC)
Goto Top
Im Stream steht, daß die pfSense (src 192.168.2.2) versucht Cisco (dest 192.168.2.188) über ICMP zu erreichen
Hat ja mit dem SIP / RTP und Telefonie Thema hier erstmal nicht das Geringste zu tun. ICMP ist Ping oder irgendwelche anderen Steuerkommandos. Die pfSense ist ja aktiv auch nicht in die Voice Thematik involviert.
Welcher ICMP Type ist das denn ? https://de.wikipedia.org/wiki/Internet_Control_Message_Protocol#Die_ICMP ...
OK, der komische Username kommt dann daher das die FB mit der aktuellen Firmware mindestens 8 Stellen bei Usernamen und Password erzwingt sofern ich das richtig erinnere...
Member: vafk18
vafk18 Nov 24, 2021 at 11:20:20 (UTC)
Goto Top
@aqui

Ich habe Dir per PM das Wireshark Packet geschickt.

Mir kommt noch eine Idee, daß wir hier etwas übersehen haben könnten: Das Problem trifft ausschließlich beim Gesprächsaufbau zwischen zwei internen an der einen FritzBox hängenden IP-Telefonen von Cisco. Es sind betroffen Cisco IP Phone 7945 und 7965. Beim Gesprächsaufbau nach Extern ist dieser Problem noch nie aufgetreten.

Evtl. ein Problem mit der Firewall der pfSense? Es ist jeweils eine baugleiche nahezu identisch konfigurierte pfSense an beiden Standorten vorhanden. Evtl. ein Problem mit den Cisco's? Ist das Program Phoner geeignet, um sich als IP-Telefon an der FritzBox anzumelden? Dann könnte ich vom Phoner eines der entfernten Ciscos anrufen und auch noch am PC am anderen Standort Phoner installieren und dieses anwählen. Evtl. auch noch die FritzFon auf zwei Smartphones installieren (Anmerkung: zuletzt hatte ich das Problem, daß ich nur die "FRITZ App Fon_v1.90.10_apkpure.com" zum Laufen bekam / Samsung Note 3 / iPhone 7 - alle neueren Apps verweigerten den Rufaufbau).
Member: aqui
Solution aqui Nov 24, 2021 updated at 15:09:58 (UTC)
Goto Top
Evtl. ein Problem mit der Firewall der pfSense?
Sollte eigentlich nicht, denn du machst ja im VPN Tunnel (hoffentlich) kein NAT oder gravierende Filterung. Bei rein lokalen Gesprächen nutzen die Telefone rein nur interne IP Adressen. Die pfSense ist ja auch nur dann involviert wenn die beiden Telefone in den unterschiedlichen VPN Netzen hängen.
Wären die Telefone beide noch im gleichen lokalen Netz ist die pfSense so oder so komplett aussen vor.
Ich teste das die Tage hier mal in einem Laboraufbau mit einem Cisco 8811 und ner 7360er FB and einem SIPgate Account.
Die FBs arbeiten bei dir nur als simple, lokale VoIP Server im lokalen Netz "one armed" angeschlossen via LAN Port, richtig ?
Internet und VPN machen nur die Firewalls mit NUR Modems davor, oder ?
P.S. Der Wireshark Trace ist leider unlesbar. (alles Hieroglyphen) face-sad Sende das direkt als pcap Datei als Screenshot.
Member: aqui
Solution aqui Nov 27, 2021 updated at 16:52:11 (UTC)
Goto Top
Hier ein kleiner Testaufbau der zwar nicht ganz deinem Setup entspricht aber es zumindestens zu 80% nachbildet um zu verifizieren ob es mit der Telefonie über den VPN Tunnel zu Problemen kommt.
Um es vorweg zu nehmen: Nein, das Setup rennt fehlerlos !

back-to-topTestsetup

fb-telefon-vpn

back-to-topVPN Setup pfSense

Tunnel Setup
pffbsetup
Tunnel Status zur FritzBox
pfvpnstat

back-to-topVPN Setup FritzBox

fbvpn

back-to-topDHCP Leases pfSense

(.100 ist ein Switch, .106 ein PC)
pflease

back-to-topFritzBox, SIP Registrierung remotes Cisco 8811

fbtel

back-to-toppfSense WAN Port Firewall Regel

pfwanrule

back-to-toppfSense VPN Tunnel Regel

pftunrule

back-to-topCisco 8811 SEP Konfig File

<device>
  <deviceProtocol>SIP</deviceProtocol>
  <sshUserId>admin</sshUserId>
  <sshPassword>cisco</sshPassword>
  <devicePool>
                <dateTimeSetting>
                        <dateTemplate>D.M.YY</dateTemplate>
                        <timeZone>Central Europe Standard/Daylight Time</timeZone>
                        <ntps>
                                <ntp>
                                        <name>192.168.188.1</name>
                                        <ntpMode>Unicast</ntpMode>
                                </ntp>
                        </ntps>
                </dateTimeSetting>
     <callManagerGroup>
        <members>
           <member priority="0">
              <callManager>
                 <ports>
                    <ethernetPhonePort>2000</ethernetPhonePort>
                    <sipPort>5060</sipPort>
                    <securedSipPort>5061</securedSipPort>
                 </ports>
                 <processNodeName>192.168.188.1</processNodeName>
              </callManager>
           </member>
        </members>
     </callManagerGroup>
  </devicePool>
  <commonProfile>
     <phonePassword></phonePassword>
     <backgroundImageAccess>true</backgroundImageAccess>
     <callLogBlfEnabled>2</callLogBlfEnabled>
  </commonProfile>
  <loadInformation>sip88xx.14-1-1-0001-125</loadInformation>
  <vendorConfig>
     <disableSpeaker>false</disableSpeaker>
     <disableSpeakerAndHeadset>false</disableSpeakerAndHeadset>
     <pcPort>0</pcPort>
     <settingsAccess>1</settingsAccess>
     <garp>0</garp>
     <voiceVlanAccess>0</voiceVlanAccess>
     <videoCapability>0</videoCapability>
     <autoSelectLineEnable>0</autoSelectLineEnable>
     <sshAccess>0</sshAccess>
     <sshPort>22</sshPort>
     <webAccess>0</webAccess>
     <spanToPCPort>1</spanToPCPort>
     <loggingDisplay>1</loggingDisplay>
     <loadServer></loadServer>
     <daysDisplayNotActive></daysDisplayNotActive>
     <displayOnTime>03:00</displayOnTime>
     <displayOnDuration>00:01</displayOnDuration>
     <displayIdleTimeout>00:05</displayIdleTimeout>
     <displayOnWhenIncomingCall>1</displayOnWhenIncomingCall>
  </vendorConfig>
  <userLocale>
        <name>German_Germany</name>
        <uid>1</uid>
        <langCode>de_DE</langCode>
        <version></version>
        <winCharSet>iso-8859-1</winCharSet>
	</userLocale>
  <networkLocale>Germany</networkLocale>
  <networkLocaleInfo>
      <name>Germany</name>
      <version></version>
  </networkLocaleInfo>
  <deviceSecurityMode>1</deviceSecurityMode>
  <authenticationURL></authenticationURL>
  <directoryURL></directoryURL>
  <idleURL></idleURL>
  <informationURL></informationURL>

  <messagesURL></messagesURL>
  <proxyServerURL></proxyServerURL>
  <servicesURL></servicesURL>
  <dscpForSCCPPhoneConfig>96</dscpForSCCPPhoneConfig>
  <dscpForSCCPPhoneServices>0</dscpForSCCPPhoneServices>
  <dscpForCm2Dvce>96</dscpForCm2Dvce>

  <transportLayerProtocol>1</transportLayerProtocol>

  <capfAuthMode>0</capfAuthMode>
  <capfList>
     <capf>
        <phonePort>3804</phonePort>
     </capf>
  </capfList>

  <certHash></certHash>
  <encrConfig>false</encrConfig>

   <sipProfile>
     <sipProxies>
        <backupProxy></backupProxy>
        <backupProxyPort></backupProxyPort>
        <emergencyProxy></emergencyProxy>
        <emergencyProxyPort></emergencyProxyPort>
        <outboundProxy></outboundProxy>
        <outboundProxyPort></outboundProxyPort>
        <registerWithProxy>true</registerWithProxy>
     </sipProxies>

     <sipCallFeatures>
        <cnfJoinEnabled>true</cnfJoinEnabled>
        <callForwardURI>x--serviceuri-cfwdall</callForwardURI>
        <callPickupURI>x-cisco-serviceuri-pickup</callPickupURI>
        <callPickupListURI>x-cisco-serviceuri-opickup</callPickupListURI>
        <callPickupGroupURI>x-cisco-serviceuri-gpickup</callPickupGroupURI>
        <meetMeServiceURI>x-cisco-serviceuri-meetme</meetMeServiceURI>
        <abbreviatedDialURI>x-cisco-serviceuri-abbrdial</abbreviatedDialURI>
        <rfc2543Hold>false</rfc2543Hold>
        <callHoldRingback>2</callHoldRingback>
        <localCfwdEnable>true</localCfwdEnable>
        <semiAttendedTransfer>true</semiAttendedTransfer>
        <anonymousCallBlock>2</anonymousCallBlock>
        <callerIdBlocking>2</callerIdBlocking>
        <dndControl>0</dndControl>
        <remoteCcEnable>true</remoteCcEnable>
     </sipCallFeatures>

     <sipStack>
        <sipInviteRetx>6</sipInviteRetx>
        <sipRetx>10</sipRetx>
        <timerInviteExpires>180</timerInviteExpires>
        <timerRegisterExpires>3600</timerRegisterExpires>
        <timerRegisterDelta>5</timerRegisterDelta>
        <timerKeepAliveExpires>120</timerKeepAliveExpires>
        <timerSubscribeExpires>120</timerSubscribeExpires>
        <timerSubscribeDelta>5</timerSubscribeDelta>
        <timerT1>500</timerT1>
        <timerT2>4000</timerT2>
        <maxRedirects>70</maxRedirects>
        <remotePartyID>false</remotePartyID>
        <userInfo>None</userInfo>
     </sipStack>

     <autoAnswerTimer>1</autoAnswerTimer>
     <autoAnswerAltBehavior>false</autoAnswerAltBehavior>
     <autoAnswerOverride>true</autoAnswerOverride>
     <transferOnhookEnabled>false</transferOnhookEnabled>
     <enableVad>false</enableVad>
     <preferredCodec>g711alaw</preferredCodec>
     <dtmfAvtPayload>101</dtmfAvtPayload>
     <dtmfDbLevel>3</dtmfDbLevel>
     <dtmfOutofBand>avt</dtmfOutofBand>
     <alwaysUsePrimeLine>false</alwaysUsePrimeLine>
     <alwaysUsePrimeLineVoiceMail>false</alwaysUsePrimeLineVoiceMail>
     <kpml>3</kpml>

     <natEnabled>false</natEnabled>
     <natAddress></natAddress>

     <stutterMsgWaiting>0</stutterMsgWaiting>

     <callStats>false</callStats>

     <silentPeriodBetweenCallWaitingBursts>10</silentPeriodBetweenCallWaitingBursts>
     <disableLocalSpeedDialConfig>false</disableLocalSpeedDialConfig>

     <startMediaPort>16384</startMediaPort>
     <stopMediaPort>32766</stopMediaPort>

     <voipControlPort>5060</voipControlPort>
     <dscpForAudio>184</dscpForAudio>
     <ringSettingBusyStationPolicy>0</ringSettingBusyStationPolicy>
     <dialTemplate>dialplan.xml</dialTemplate>

     <phoneLabel>Buero</phoneLabel>
     <sipLines>
        <line button="1">
           <featureID>9</featureID>
           <featureLabel>620</featureLabel>
                   <name>620</name>
                   <displayName>620</displayName>
                   <contact>620</contact>

           <proxy>USECALLMANAGER</proxy>
           <port>5060</port>
           <autoAnswer>
              <autoAnswerEnabled>2</autoAnswerEnabled>
           </autoAnswer>
           <callWaiting>3</callWaiting>

           <authName>620</authName>
           <authPassword>Cisco8811!</authPassword>

           <sharedLine>false</sharedLine>
           <messageWaitingLampPolicy>1</messageWaitingLampPolicy>
           <messagesNumber>701</messagesNumber>
           <ringSettingIdle>4</ringSettingIdle>
           <ringSettingActive>5</ringSettingActive>

           <forwardCallInfoDisplay>
              <callerName>true</callerName>
              <callerNumber>true</callerNumber>
              <redirectedNumber>false</redirectedNumber>
              <dialedNumber>true</dialedNumber>
           </forwardCallInfoDisplay>
        </line>
        <line button="2">
           <featureID>2</featureID>
           <featureLabel>Mobil-1</featureLabel>
           <speedDialNumber>01711234567</speedDialNumber>
        </line>
	<line button="3">
           <featureID>2</featureID>
           <featureLabel>Mobil-2</featureLabel>
           <speedDialNumber>01751234567</speedDialNumber>
        </line>
	<line button="4">
           <featureID>2</featureID>
           <featureLabel>Firma</featureLabel>
           <speedDialNumber>089123456</speedDialNumber>
        </line>
     </sipLines>
  </sipProfile>
</device>  

back-to-topWireshark Traces

DHCP und ARP nach dem Booten des Telefons
teldhcp
SIP Registrierung an der FritzBox
telsip
Eingehender Call von Extern und Beginn Sprachübertragung (RTP)
telcallurtp
Ende und Auflegen
telaufl

back-to-topFazit

Works as designed...! 😉

Anrufe konnten mehrfach getätigt und auch angenommen werden und das sowohl intern mit ** als auch über die externe Providernummer.
Es gibt also keinerlei Probleme mit der Telefonie über den VPN Tunnel.
Vielleicht hilft dir das beim Troubleshooting.
Member: vafk18
vafk18 Nov 27, 2021 updated at 18:34:30 (UTC)
Goto Top
Ich bin überwältigt - soviel Aufwand um (m)ein Problem zu lösen - vielen herzlichen Dank!!!

Zu der VPN-Verbindung zwischen den Fritzboxen: Ich habe diese bei meinen nicht installiert. Ich habe nur eine VPN-Verbindung mit IPSec zwischen den beiden pfSenses. Darüber kommuniziert auch die FritzBox mit den am entfernten Ort installierten Telefonen. Die FritzBox ist im 192.168.2.0/24 und die Telefone in 192.168.3.0/24. Diese Telefone melden sich also an der FB7490 im 192.168.2.0/24. Die Konfigs laden sie über TFTP von der pfSense an 192.168.3.1.

Muß ich die FritzBox 192.168.3.2 über das Fritz-interne VPN mit der FritzBox 192.168.2.2 verbinden und die am entfernten Ort installierten Telefone an 192.168.3.2 anmelden?

P.S. Wegen einer Flächenstörung am Heimatort kann ich die vorgeschlagene Schaltung nicht realisieren face-sad
Member: aqui
Solution aqui Nov 28, 2021 updated at 12:26:35 (UTC)
Goto Top
soviel Aufwand
Na ja...so ein Setup ist in 20 Minuten up and running. Solch Aufwand ist das nicht wirklich... 😉
Zu der VPN-Verbindung zwischen den Fritzboxen: Ich habe diese bei meinen nicht installiert.
Das ist mir klar, deshalb hatte ich oben ja geschrieben "...zu 80% dein Design". Ich konnte auf die Schnelle im ersten Step hier keine 2te pfSense freischaufeln. Werde das aber noch tun.
Ich vermute aber das es keine Änderung gibt, denn wer nun mit welcher HW den Tunnel realisiert ist in dem Setup doch technisch völlig egal. Man kann also zu 98% davon ausgehen das die Funktion identisch sein wird.
Die Vermutung ist das du die VoIP FritzBox falsch oder fehlerhaft irgendwie mit NAT ans lokale Netz gebracht hast. Im obigen Testaufbau ist die FB auch nicht direkt am Internet sondern mit Modem Bypassing über einen weiteren NAT Router.
Der Gesamtfunktion tut das keinen Abbruch.
Die FritzBox ist im 192.168.2.0/24 und die Telefone in 192.168.3.0/24.
Genau so ist es im obigen Testsetup ja auch. Knackpunkt ist nur: WIE ist die FritzBox adaptiert ??
und die Telefone in 192.168.3.0/24. Diese Telefone melden sich also an der FB7490 im 192.168.2.0/24.
Wie oben ! DHCP bekommen die Telefone von der pfSense und als VoIP SIP Host sind sie an der FB 192.168.188.1 registriert. Siehe Wireshark Traces und IP Adressen dort.
Die Konfigs laden sie über TFTP von der pfSense an 192.168.3.1.
Das muss man eh nur einmal machen. Den TFTP Server benötigt man dann nicht mehr, denn die Telefone verwenden immer das dann zuletzt geladene Profil wenn sie keinen TFTP finden.
Muß ich die FritzBox 192.168.3.2 über das Fritz-interne VPN mit der FritzBox 192.168.2.2 verbinden
Nein !
Wie oben schon gesagt ist das völlig Wumpe wer das VPN aufspannt. Es zählt einzig und allein die IP Connectivity.
Dein Fehlerbild lässt vermuten das du die FBs nicht als normale IP Hosts ins interne LAN angeschlossen hast sondern über den WAN Port wo die FB dann NAT macht. Einseitiges Hören zeigt immer auf eine NAT Problematik des RTP Datenstroms der die Voice Daten transportiert.
Member: vafk18
vafk18 Nov 28, 2021 updated at 13:00:14 (UTC)
Goto Top
Um zu prüfen, ob die FritzBox NAT macht - und da meine FB wie folgt konfiguriert ist:

Anschluss an externes Modem oder Router
Wählen Sie diesen Zugang, wenn die FRITZ!Box über "LAN 1" an ein bereits vorhandenes externes Modem oder einen Router angeschlossen ist.


Ich habe alle FritzBoxen über deren LAN 1 an Switches/Hubs und weiter mit der pfSense angeschlossen.

Ist das richtig oder nicht?

Welche Einstellung bzw. Verkabelung der FritzBox würde dazu führen, daß die FB NAT macht (was zum Fehler führen würde) bzw. die Telefoniedaten nicht über den VPN, sondern übers Internet fließen?
Member: aqui
Solution aqui Nov 28, 2021 at 18:59:22 (UTC)
Goto Top
Wählen Sie diesen Zugang, wenn die FRITZ!Box über "LAN 1" an
Und genau DAS ist falsch, denn die FB macht am LAN1 Port dann NAT mit dem o.a. Ergebnis !
Die FB muss mit dem LAN Port angeschlossen werden als einfacher IP Host.
DHCP Server natürlich deaktivieren !
Welche Einstellung bzw. Verkabelung der FritzBox würde dazu führen, daß die FB NAT macht
Der Modem Bypass über den LAN1 Port und den Anschluss dort.
Das deaktiviert dann nur das interne xDSL Modem und legt den WAN Port mit NAT als DHCP Client an LAN1.
Das darf aber bei dir nicht sein, denn die VoIP Daten sollen ohne NAT übers lokale pfSense LAN und dann ins Internet.
Member: vafk18
vafk18 Nov 28, 2021 updated at 19:51:22 (UTC)
Goto Top
Vielleicht liegt hier ein Mißverständnis vor - siehe Screenshot: Ich kann nur den 3. Punkt wählen, denn Punkt 1 ist klassisch DSL und Punkt 2 ist Kabelmodem.

Ich habe auch noch Mesh aktiviert, aber das dürfte wohl keine Rolle spielen.
screenshot - 28_11
Member: aqui
Solution aqui Nov 28, 2021 at 21:46:23 (UTC)
Goto Top
Member: aqui
Solution aqui Nov 29, 2021 updated at 13:51:35 (UTC)
Goto Top
Hier noch einmal eine zum o.a. Setup passende Telefon Setup Datei für die Cisco 79xx Modelle.
Achte darauf den Parameter
<messagesNumber>**600</messagesNumber>
zu setzen um den FritzBox Anrufbeantworter über die Schnelltaste erreichen zu können !
<?xml version="1.0" encoding="UTF-8"?>
<device>
  <deviceProtocol>SIP</deviceProtocol>
  <sshUserId>cisco</sshUserId>
  <sshPassword>cisco</sshPassword>
  <devicePool>
                <dateTimeSetting>
                        <dateTemplate>D.M.YY</dateTemplate>
                        <timeZone>Central Europe Standard/Daylight Time</timeZone>
                        <ntps>
                                <ntp>
                                        <name>192.168.188.1</name>
                                        <ntpMode>Unicast</ntpMode>
                                </ntp>
                        </ntps>
                </dateTimeSetting>
     <callManagerGroup>
        <members>
           <member priority="0">
              <callManager>
                 <ports>
                    <ethernetPhonePort>2000</ethernetPhonePort>
                    <sipPort>5060</sipPort>
                    <securedSipPort>5061</securedSipPort>
                 </ports>
                 <processNodeName>192.168.188.1</processNodeName>
              </callManager>
           </member>
        </members>
     </callManagerGroup>
  </devicePool>
  <commonProfile>
     <phonePassword></phonePassword>
     <backgroundImageAccess>true</backgroundImageAccess>
     <callLogBlfEnabled>2</callLogBlfEnabled>
  </commonProfile>

  <loadInformation>SIP42.9-4-2SR3-1S</loadInformation>
  <vendorConfig>
     <disableSpeaker>false</disableSpeaker>
     <disableSpeakerAndHeadset>false</disableSpeakerAndHeadset>
     <pcPort>0</pcPort>
     <settingsAccess>1</settingsAccess>
     <garp>0</garp>
     <voiceVlanAccess>0</voiceVlanAccess>
     <videoCapability>0</videoCapability>
     <autoSelectLineEnable>0</autoSelectLineEnable>
     <sshAccess>0</sshAccess>
     <sshPort>22</sshPort>
     <webAccess>0</webAccess>
     <spanToPCPort>1</spanToPCPort>
     <loggingDisplay>1</loggingDisplay>
     <loadServer></loadServer>
     <daysDisplayNotActive></daysDisplayNotActive>
     <displayOnTime>03:00</displayOnTime>
     <displayOnDuration>00:01</displayOnDuration>
     <displayIdleTimeout>00:05</displayIdleTimeout>
     <displayOnWhenIncomingCall>1</displayOnWhenIncomingCall>
  </vendorConfig>
  <userLocale>
        <name>German_Germany</name>
        <uid>1</uid>
        <langCode>de_DE</langCode>
        <version></version>
        <winCharSet>iso-8859-1</winCharSet>
	</userLocale>
  <networkLocale>Germany</networkLocale>
  <networkLocaleInfo>
      <name>Germany</name>
      <version></version>
  </networkLocaleInfo>
  <deviceSecurityMode>1</deviceSecurityMode>
  <authenticationURL></authenticationURL>
  <directoryURL></directoryURL>
  <idleURL></idleURL>
  <informationURL></informationURL>

  <messagesURL></messagesURL>
  <proxyServerURL></proxyServerURL>
  <servicesURL></servicesURL>
  <dscpForSCCPPhoneConfig>96</dscpForSCCPPhoneConfig>
  <dscpForSCCPPhoneServices>0</dscpForSCCPPhoneServices>
  <dscpForCm2Dvce>96</dscpForCm2Dvce>

  <transportLayerProtocol>1</transportLayerProtocol>

  <capfAuthMode>0</capfAuthMode>
  <capfList>
     <capf>
        <phonePort>3804</phonePort>
     </capf>
  </capfList>

  <certHash></certHash>
  <encrConfig>false</encrConfig>

   <sipProfile>
     <sipProxies>
        <backupProxy></backupProxy>
        <backupProxyPort></backupProxyPort>
        <emergencyProxy></emergencyProxy>
        <emergencyProxyPort></emergencyProxyPort>
        <outboundProxy></outboundProxy>
        <outboundProxyPort></outboundProxyPort>
        <registerWithProxy>true</registerWithProxy>
     </sipProxies>

     <sipCallFeatures>
        <cnfJoinEnabled>true</cnfJoinEnabled>
        <callForwardURI>x--serviceuri-cfwdall</callForwardURI>
        <callPickupURI>x-cisco-serviceuri-pickup</callPickupURI>
        <callPickupListURI>x-cisco-serviceuri-opickup</callPickupListURI>
        <callPickupGroupURI>x-cisco-serviceuri-gpickup</callPickupGroupURI>
        <meetMeServiceURI>x-cisco-serviceuri-meetme</meetMeServiceURI>
        <abbreviatedDialURI>x-cisco-serviceuri-abbrdial</abbreviatedDialURI>
        <rfc2543Hold>false</rfc2543Hold>
        <callHoldRingback>0</callHoldRingback>
        <localCfwdEnable>true</localCfwdEnable>
        <semiAttendedTransfer>true</semiAttendedTransfer>
        <anonymousCallBlock>0</anonymousCallBlock>
        <callerIdBlocking>0</callerIdBlocking>
        <dndControl>0</dndControl>
        <remoteCcEnable>true</remoteCcEnable>
     </sipCallFeatures>

     <sipStack>
        <sipInviteRetx>6</sipInviteRetx>
        <sipRetx>10</sipRetx>
        <timerInviteExpires>180</timerInviteExpires>
        <timerRegisterExpires>3600</timerRegisterExpires>
        <timerRegisterDelta>5</timerRegisterDelta>
        <timerKeepAliveExpires>120</timerKeepAliveExpires>
        <timerSubscribeExpires>120</timerSubscribeExpires>
        <timerSubscribeDelta>5</timerSubscribeDelta>
        <timerT1>500</timerT1>
        <timerT2>4000</timerT2>
        <maxRedirects>70</maxRedirects>
        <remotePartyID>false</remotePartyID>
        <userInfo>None</userInfo>
     </sipStack>
     <autoAnswerTimer>1</autoAnswerTimer>
     <autoAnswerAltBehavior>false</autoAnswerAltBehavior>
     <autoAnswerOverride>true</autoAnswerOverride>
     <transferOnhookEnabled>false</transferOnhookEnabled>
     <enableVad>false</enableVad>
     <preferredCodec>g711alaw</preferredCodec>
     <dtmfAvtPayload>101</dtmfAvtPayload>
     <dtmfDbLevel>3</dtmfDbLevel>
     <dtmfOutofBand>avt</dtmfOutofBand>
     <alwaysUsePrimeLine>false</alwaysUsePrimeLine>
     <alwaysUsePrimeLineVoiceMail>false</alwaysUsePrimeLineVoiceMail>
     <kpml>3</kpml>
     <natEnabled>false</natEnabled>
     <natAddress></natAddress>
     <stutterMsgWaiting>0</stutterMsgWaiting>
     <callStats>false</callStats>
     <silentPeriodBetweenCallWaitingBursts>10</silentPeriodBetweenCallWaitingBursts>
     <disableLocalSpeedDialConfig>false</disableLocalSpeedDialConfig>
     <startMediaPort>16384</startMediaPort>
     <stopMediaPort>32766</stopMediaPort>
     <voipControlPort>5060</voipControlPort>
     <dscpForAudio>184</dscpForAudio>
     <ringSettingBusyStationPolicy>0</ringSettingBusyStationPolicy>
     <dialTemplate>dialplan.xml</dialTemplate>

     <phoneLabel>Office</phoneLabel>
     <sipLines>
        <line button="1">
           <featureID>9</featureID>
           <featureLabel>620</featureLabel>
                   <name>620</name>
                   <displayName>620</displayName>
                   <contact>620</contact>
           <proxy>USECALLMANAGER</proxy>
           <port>5060</port>
           <autoAnswer>
              <autoAnswerEnabled>2</autoAnswerEnabled>
           </autoAnswer>
           <callWaiting>3</callWaiting>

           <authName>620</authName>
           <authPassword>Geheim1234!</authPassword>

           <sharedLine>false</sharedLine>
           <messageWaitingLampPolicy>1</messageWaitingLampPolicy>
           <messagesNumber>**600</messagesNumber>
           <ringSettingIdle>4</ringSettingIdle>
           <ringSettingActive>5</ringSettingActive>

           <forwardCallInfoDisplay>
              <callerName>true</callerName>
              <callerNumber>true</callerNumber>
              <redirectedNumber>true</redirectedNumber>
              <dialedNumber>true</dialedNumber>
           </forwardCallInfoDisplay>
        </line>
        <line button="2">
           <featureID>2</featureID>
           <featureLabel>Mobil-Lisa</featureLabel>
           <speedDialNumber>01717654321</speedDialNumber>
        </line>
	<line button="3">
           <featureID>2</featureID>
           <featureLabel>Mobil-Fritz</featureLabel>
           <speedDialNumber>015187654321</speedDialNumber>
        </line>
	<line button="4">
           <featureID>2</featureID>
           <featureLabel>Oma Grete</featureLabel>
           <speedDialNumber>0812567890</speedDialNumber>
        </line>
	<line button="5">
           <featureID>2</featureID>
           <featureLabel>Firma</featureLabel>
           <speedDialNumber>0891234567</speedDialNumber>
        </line>
     </sipLines>
  </sipProfile>
</device> 
(Die loadInformation musst du ggf. auf deine verwendete SIP Firmware Version anpassen !)
Member: vafk18
vafk18 Nov 29, 2021 updated at 17:27:22 (UTC)
Goto Top
@aqui
Ich habe Deine Konfig in die Telefone 7945/7965 hochgeladen und habe einen Connect. Mit einer kleinen Ausnahme (s. PN).

Da ich gerade dabei bin, auf meinem TFTP-Server "aufzuräumen":

Die pfSense bietet über das GUI Services-TFTP-Server nur die Möglichkeit, einzelne Dateien in das Verzeichnis /tftpboot/ zu laden. Unterverzeichnisse lassen sich nicht erstellen, genausowenig wie mehr als eine Datei gleichzeitig hochzuladen. Nun denn, es gibt z.B. den Bitvise SSH, dessen SFTP es ermöglicht, diese Aufgabe per SSH zu erledigen.

Kann man die Konfig-Dateien der Telefone 7940/7960, 7945/7965 und 9971 (das sind die Modelle, die ich mein eigen nenne) so anpassen, daß ich diese auf dem TFTP-Server in einzelnen Unterverzeichnissen zwecks besserer Übersicht unterbringen kann? Bis dato habe ich alle Dateien in einem Verzeichnis, was nicht schön ist.

In Deiner Konfig findet sich der folgende Eintrag:

<userLocale>
<name>German_Germany</name>
</userLocale>
<networkLocale>Germany</networkLocale>
<networkLocaleInfo>
<name>Germany</name>
</networkLocaleInfo>


Handelt es sich um den Verweis auf Verzeichnisse innerhalb der TFTP-Datestruktur, also z.B. bei meiner pfSense auf /tftpboot/German_Germany bzw. /tftpboot/Germany ?

Wenn ja, dann würden mir nur noch die Locales für die Firmware zu 7945/7965 fehlen, da ich annehme, daß Deine 7942/7962 nicht kompatibel sein dürften. Dann bliebe nur noch zu klären, wie die Syntax für die Unterverzeichnisse in den Konfigs der 7940/7960 lautet.
Member: aqui
Solution aqui Nov 29, 2021 at 18:55:11 (UTC)
Goto Top
Die pfSense bietet über das GUI Services-TFTP-Server nur die Möglichkeit, einzelne Dateien in das Verzeichnis /tftpboot/ zu laden.
Das ist natürlich ideal, denn dann kannst du da die SEP Dateien sichern !
Unterverzeichnisse lassen sich nicht erstellen
Das ist nicht zwingend nötig, denn die Sprachdateien werden immer nur nach einem Factory Reset neu geladen was ja eher selten vorkommt. Vermutlich kann man sie aber dennoch über den Shellzugang mit sudo mkdir xyz erzeugen. Hast du das probiert ?
da ich annehme, daß Deine 7942/7962 nicht kompatibel sein dürften.
Doch, die laufen für alle 79xx bis 88xx Modelle. face-wink
Member: aqui
aqui Dec 15, 2021 at 13:31:14 (UTC)
Goto Top
Wenns das denn nun war bitte dann auch den Thread als erledigt schliessen !
How can I mark a post as solved?