Der 3CX-Support antwortet: SIP-Traffic auf dem PBX-Server erfassen

In diesem Artikel beschĂ€ftigen wir uns mit den Grundlagen der Erfassung und Analyse von SIP-Traffic, der von der 3CX-Telefonanlage generiert wird. Der Artikel richtet sich an angehende Systemadministratoren oder normale Benutzer, die fĂŒr die Wartung der Telefonie verantwortlich sind. FĂŒr eine vertiefte Sicht auf das Thema empfehlen wir den Besuch des Erweiterten 3CX-Schulungskurses.

3CX V16 ermöglicht die Erfassung von SIP-Traffic direkt ĂŒber die WeboberflĂ€che des Servers und speichert die Daten im Standardformat Wireshark PCAP. Sie können die Capture-Datei bei einer Anfrage an den technischen Support anhĂ€ngen oder fĂŒr eine eigene Analyse herunterladen.

Falls 3CX auf Windows lĂ€uft, mĂŒssen Sie Wireshark selbst auf dem 3CX-Server installieren. Andernfalls erhalten Sie bei dem Versuch, einen Capture durchzufĂŒhren, die folgende Meldung.
Der 3CX-Support antwortet: SIP-Traffic auf dem PBX-Server erfassen

In Linux-Systemen wird das Tool tcpdump automatisch bei der Installation oder Aktualisierung von 3CX installiert.

Traffic-Erfassung

Um mit der Erfassung zu beginnen, navigieren Sie zu dem Abschnitt HauptmenĂŒ > SIP-Ereignisse und wĂ€hlen Sie die Schnittstelle aus, auf der der Capture durchgefĂŒhrt werden soll. Es ist auch möglich, den Traffic auf allen Schnittstellen gleichzeitig zu erfassen, mit Ausnahme der IPv6-Tunneling-Schnittstellen.

Der 3CX-Support antwortet: SIP-Traffic auf dem PBX-Server erfassen

In 3CX fĂŒr Linux können Sie den Datenverkehr fĂŒr den lokalen Host (lo) erfassen. Diese Erfassung dient zur Analyse von SIP-Client-Verbindungen. 3CX Tunnel und Session Border Controller.

Die SchaltflĂ€che „Datenverkehr erfassen“ startet Wireshark unter Windows oder tcpdump unter Linux. In diesem Moment sollten Sie schnell das Problem reproduzieren, da die Erfassung die CPU belastet und viel Speicherplatz benötigt.  
Der 3CX-Support antwortet: SIP-Traffic auf dem PBX-Server erfassen

Beachten Sie die folgenden Anrufparameter:

  • Die Nummer, von der angerufen wurde, die Nummer, die angerufen wurde, sowie andere Nummern / Teilnehmer des Anrufs.
  • Die genaue Zeit des Problems gemĂ€ĂŸ der Uhr des 3CX-Servers.
  • Der Verlauf des Anrufs.

Versuchen Sie, nicht an anderen Stellen der BenutzeroberflĂ€che zu klicken, außer auf die SchaltflĂ€che „Stoppen“. Gehen Sie auch nicht auf andere Links in diesem Browserfenster. Andernfalls wird die Datenverkehrserfassung im Hintergrund fortgesetzt und fĂŒhrt zu zusĂ€tzlicher Belastung des Servers.

Erfassung der Datei

Die SchaltflĂ€che „Stoppen“ beendet die Erfassung und speichert die Datei. Sie können die Datei auf Ihren Computer herunterladen, um sie in der Anwendung Wireshark zu analysieren, oder eine spezielle Datei fĂŒr den technischen Support generieren., der diesen Capture und weitere Debugging-Informationen enthĂ€lt. Nach dem Herunterladen oder Einschluss in das Support-Paket wird die Capture-Datei aus SicherheitsgrĂŒnden automatisch vom 3CX-Server gelöscht.

Auf dem 3CX-Server befindet sich die Datei an folgendem Ort:

  • Windows: C:ProgramData3CXInstance1DataLogsdump.pcap
  • Linux: /var/lib/3cxpbx/Instance/Data/Logs/dump.pcap

Um eine Überlastung des Servers oder Paketverluste wĂ€hrend des Captures zu vermeiden, ist der Capture-Zeitraum auf 2 Millionen Pakete begrenzt. Nach dieser Menge stoppt der Capture automatisch. Wenn Sie einen lĂ€ngeren Capture benötigen, verwenden Sie das separate Tool Wireshark, wie unten beschrieben.

Capture des Traffics mit dem Tool Wireshark

Wenn Sie eine tiefere Analyse des Netzverkehrs wĂŒnschen, erfassen Sie diesen manuell. Laden Sie das Tool Wireshark fĂŒr Ihr Betriebssystem herunter hier herunter. Nach der Installation des Tools auf dem 3CX-Server gehen Sie zu Capture > Interfaces. Hier werden alle Netzwerkinterfaces des Betriebssystems angezeigt. Die IP-Adressen der Interfaces können im IPv6-Format angezeigt werden. Um die IPv4-Adresse zu sehen, klicken Sie auf die IPv6-Adresse.

Der 3CX-Support antwortet: SIP-Traffic auf dem PBX-Server erfassen

WĂ€hlen Sie das Interface fĂŒr das Capture aus und klicken Sie auf die SchaltflĂ€che Optionen. Entfernen Sie das HĂ€kchen bei Capture Traffic in promiscuous mode und lassen Sie die anderen Einstellungen unverĂ€ndert.

Der 3CX-Support antwortet: SIP-Traffic auf dem PBX-Server erfassen

Nun sollte das Problem reproduziert werden. Sobald das Problem reproduziert wurde, stoppen Sie die Erfassung (MenĂŒ Capture > Stop). SIP-Nachrichten können im MenĂŒ Telephony > SIP Flows ausgewĂ€hlt werden.

Grundlagen der Verkehrsanalyse – SIP INVITE-Nachricht

Betrachten wir die Hauptfelder der SIP INVITE-Nachricht, die zum Aufbau eines VoIP-Anrufs gesendet wird, d.h. sie stellt den Ausgangspunkt fĂŒr die Analyse dar. Normalerweise enthĂ€lt ein SIP INVITE zwischen 4 und 6 Feldern mit Informationen, die von den EndgerĂ€ten (Telefonen, Gateways) und den Netzbetreibern verwendet werden. Das VerstĂ€ndnis des Inhalts von INVITE und den folgenden Nachrichten hilft hĂ€ufig, die Quelle des Problems zu identifizieren. DarĂŒber hinaus erleichtert das Wissen ĂŒber die INVITE-Felder die Verbindung von SIP-Anbietern mit 3CX oder die Integration von 3CX mit anderen SIP-TK-Anlagen.

In der INVITE-Nachricht werden die Benutzer (oder SIP-GerÀte) durch eine URI identifiziert. Normalerweise besteht die SIP-URI aus der Telefonnummer des Benutzers + der Adresse des SIP-Servers. Die SIP-URI ist der E-Mail-Adresse sehr Àhnlich und wird als sip:x@y:Port angegeben.

Der 3CX-Support antwortet: SIP-Traffic auf dem PBX-Server erfassen

Request-Line-URI:

Request-Line-URI – dieses Feld enthĂ€lt den EmpfĂ€nger des Anrufs. Es enthĂ€lt die gleichen Informationen wie das Feld To, jedoch ohne den angezeigten Benutzernamen (Display Name).

Via:

Via — jeder SIP-Server (Proxy), durch den die INVITE-Anfrage lĂ€uft, fĂŒgt oben in der Liste Via seine IP-Adresse und den Port hinzu, ĂŒber den die Nachricht empfangen wurde. Die Nachricht wird dann weiter auf ihrem Weg geleitet. Wenn der endgĂŒltige EmpfĂ€nger auf die INVITE-Anfrage antwortet, â€žĂŒberprĂŒfen“ alle Transitknoten den Via-Header und senden die Nachricht auf demselben Weg an den Absender zurĂŒck. Dabei entfernt der transitierende SIP-Proxy seine Informationen aus dem Header.

Von:

Der From-Header gibt den Initiator der Anfrage aus der Sicht des SIP-Servers an. Der Header wird auf die gleiche Weise wie eine E-Mail-Adresse (user@domain, wobei user die Durchwahl des 3CX-Benutzers ist und domain die lokale IP-Adresse oder SIP-Domain des 3CX-Servers) erstellt. Wie der To-Header enthÀlt auch der From-Header eine URI und optional einen angezeigten Benutzernamen (Display Name). Anhand des From-Headers lÀsst sich verstehen, wie diese SIP-Anfrage behandelt werden sollte.

Der SIP-Standard RFC 3261 sieht vor, dass, wenn der angezeigte Name (Display Name) nicht ĂŒbermittelt wird, das IP-Telefon oder der VoIP-Gateway (UAC) den angezeigten Namen „Anonym“ verwenden sollten, zum Beispiel From: „Anonym“ .

An:

To — dieser Header zeigt den EmpfĂ€nger der Anfrage an. Es kann sich um den endgĂŒltigen EmpfĂ€nger des Aufrufs oder um eine Zwischenstation handeln. Normalerweise enthĂ€lt der Header eine SIP-URI, jedoch sind auch andere Formate möglich (siehe RFC 2806 [9]). Die SIP-URI sollte jedoch in allen Implementierungen des SIP-Protokolls unterstĂŒtzt werden, unabhĂ€ngig vom GerĂ€tehersteller. Der To-Header kann auch einen angezeigten Namen (Display Name) enthalten, zum Beispiel: To: „Vorname Nachname“ .

In der Regel enthĂ€lt das To-Feld eine SIP-URI, die auf den ersten (nĂ€chsten) SIP-Proxy verweist, der die Anfrage verarbeiten wird. Dies muss nicht unbedingt der endgĂŒltige EmpfĂ€nger der Anfrage sein.

Contact:

Contact — der Header enthĂ€lt die SIP-URI, unter der der Absender der INVITE-Anfrage kontaktiert werden kann. Dies ist ein obligatorischer Header, der nur eine einzige SIP-URI enthalten sollte. Er ist Teil der bidirektionalen Kommunikation, die der ursprĂŒnglichen SIP INVITE-Anfrage entspricht. Es ist Ă€ußerst wichtig, dass der Contact-Header korrekte Informationen enthĂ€lt (einschließlich der IP-Adresse), unter der der Absender der Anfrage eine Antwort erwartet. Die URI Contact wird auch fĂŒr weitere Kommunikationen verwendet, nach der Herstellung der Verbindung.

Allow:

Allow — das Feld enthĂ€lt eine Liste von Parametern (SIP-Methoden), die durch Kommas getrennt sind. Diese beschreiben, welche Funktionen das SIP-Protokoll von diesem Sender (GerĂ€t) unterstĂŒtzt. Die vollstĂ€ndige Liste der Methoden: ACK, BYE, CANCEL, INFO, INVITE, NOTIFY, OPTIONS, PRACK, REFER, REGISTER, SUBSCRIBE, UPDATE. Weitere Details zu den SIP-Methoden sind beschrieben. hier.

Quelle: habr.com

Kaufen Sie zuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz, VPS VDS-Servern đŸ”„ Kaufen Sie zuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz, VPS VDS-Servern | ProHoster