De technische ondersteuning van 3CX reageert: het vastleggen van SIP-verkeer op de PBX-server

In dit artikel zullen we het hebben over de basisprincipes van het vastleggen en analyseren van SIP-verkeer gegenereerd door de 3CX PBX. Het artikel is bedoeld voor beginnende systeembeheerders of gewone gebruikers wier verantwoordelijkheden onder meer telefonieonderhoud omvatten. Voor een diepgaande studie van het onderwerp raden we aan om door te nemen Geavanceerde 3CX-training.

Met 3CX V16 kunt u SIP-verkeer rechtstreeks via de serverwebinterface vastleggen en opslaan in het standaard Wireshark PCAP-formaat. U kunt het opnamebestand bijvoegen wanneer u contact opneemt met de technische ondersteuning, of het downloaden voor onafhankelijke analyse.

Als 3CX op Windows draait, moet u Wireshark zelf op de 3CX-server installeren. Anders verschijnt het volgende bericht wanneer u probeert vast te leggen.
De technische ondersteuning van 3CX reageert: het vastleggen van SIP-verkeer op de PBX-server

Op Linux-systemen wordt het hulpprogramma tcpdump automatisch geïnstalleerd wanneer 3CX wordt geïnstalleerd of bijgewerkt.

Verkeer vastleggen

Om te beginnen met vastleggen, gaat u naar de interface-sectie Home > SIP-gebeurtenissen en selecteert u de interface waarop u wilt vastleggen. U kunt ook verkeer op alle interfaces tegelijkertijd vastleggen, behalve IPv6-tunnelinginterfaces.

De technische ondersteuning van 3CX reageert: het vastleggen van SIP-verkeer op de PBX-server

In 3CX voor Linux kunt u verkeer vastleggen voor de lokale host (lo). Deze opname wordt gebruikt om SIP-clientverbindingen te analyseren met behulp van technologie 3CX-tunnel- en sessiegrenscontroller.

Met de knop Traffic Capture wordt Wireshark op Windows of tcpdump op Linux gestart. Op dit punt moet u het probleem snel reproduceren, omdat... vastleggen is CPU-intensief en neemt behoorlijk wat schijfruimte in beslag.  
De technische ondersteuning van 3CX reageert: het vastleggen van SIP-verkeer op de PBX-server

Let op de volgende oproepparameters:

  • Het nummer waarvandaan gebeld is, waar ook andere nummers/deelnemers aan de oproep naar gebeld hebben.
  • Het exacte tijdstip waarop het probleem zich voordeed volgens de 3CX-serverklok.
  • Belroute.

Probeer nergens in de interface te klikken, behalve op de knop 'Stop'. Klik ook niet op andere links in dit browservenster. Anders zal het vastleggen van verkeer op de achtergrond doorgaan, wat tot extra belasting van de server zal leiden.

Een opnamebestand ontvangen

De knop Stoppen stopt de opname en slaat het opnamebestand op. U kunt het bestand naar uw computer downloaden voor analyse in het Wireshark-hulpprogramma of een speciaal bestand genereren technische ondersteuning, die deze vastleg- en andere foutopsporingsinformatie zal bevatten. Eenmaal gedownload of opgenomen in een ondersteuningspakket, wordt het opnamebestand om veiligheidsredenen automatisch verwijderd van de 3CX-server.

Op de 3CX-server bevindt het bestand zich op de volgende locatie:

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

Om verhoogde serverbelasting of pakketverlies tijdens het vastleggen te voorkomen, is de vastlegperiode beperkt tot 2 miljoen pakketten. Hierna stopt het vastleggen automatisch. Als u een langere opname nodig heeft, gebruikt u het afzonderlijke Wireshark-hulpprogramma, zoals hieronder beschreven.

Leg verkeer vast met het Wireshark-hulpprogramma

Als u geïnteresseerd bent in een diepere analyse van netwerkverkeer, leg dit dan handmatig vast. Download het Wireshark-hulpprogramma voor uw besturingssysteem vandaar. Nadat u het hulpprogramma op de 3CX-server hebt geïnstalleerd, gaat u naar Capture > Interfaces. Alle netwerkinterfaces van het besturingssysteem worden hier weergegeven. Interface-IP-adressen kunnen worden weergegeven in de IPv6-standaard. Om het IPv4-adres te zien, klikt u op het IPv6-adres.

De technische ondersteuning van 3CX reageert: het vastleggen van SIP-verkeer op de PBX-server

Selecteer de interface die u wilt vastleggen en klik op de knop Opties. Schakel Capture Traffic in promiscuous mode uit en laat de rest van de instellingen ongewijzigd.

De technische ondersteuning van 3CX reageert: het vastleggen van SIP-verkeer op de PBX-server

Nu zou u het probleem moeten reproduceren. Wanneer het probleem zich voordoet, stopt u met vastleggen (Menu Vastleggen > Stoppen). U kunt SIP-berichten selecteren in het menu Telefonie > SIP-stromen.

Basisbeginselen van verkeersanalyse - SIP INVITE-bericht

Laten we eens kijken naar de hoofdvelden van het SIP INVITE-bericht, dat wordt verzonden om een ​​VoIP-oproep tot stand te brengen, d.w.z. is het startpunt voor de analyse. Normaal gesproken bevat SIP INVITE 4 tot 6 velden met informatie die wordt gebruikt door SIP-eindapparaten (telefoons, gateways) en telecomoperatoren. Als u de inhoud van de INVITE en de berichten die erop volgen begrijpt, kunt u vaak de oorzaak van het probleem achterhalen. Bovendien helpt kennis van de INVITE-velden bij het verbinden van SIP-operators met 3CX of het combineren van 3CX met andere SIP-telefooncentrales.

In het INVITE-bericht worden gebruikers (of SIP-apparaten) geïdentificeerd aan de hand van URI. Normaal gesproken is de SIP-URI het telefoonnummer van de gebruiker + het SIP-serveradres. De SIP URI lijkt sterk op een e-mailadres en wordt geschreven als sip:x@y:Port.

De technische ondersteuning van 3CX reageert: het vastleggen van SIP-verkeer op de PBX-server

Request-Line-URI:

Request-Line-URI - Het veld bevat de ontvanger van de oproep. Het bevat dezelfde informatie als het veld Aan, maar zonder de weergavenaam van de gebruiker.

Via:

Via - elke SIP-server (proxy) waar het INVITE-verzoek doorheen gaat, voegt zijn IP-adres en de poort waarop het bericht is ontvangen bovenaan de Via-lijst toe. Het bericht wordt vervolgens verder langs de route verzonden. Wanneer de eindontvanger reageert op een INVITE-verzoek, "zoeken" alle transitknooppunten de Via-header op en sturen het bericht langs dezelfde route terug naar de afzender. In dit geval verwijdert de transit-SIP-proxy zijn gegevens uit de header.

Kost:

Van - de header geeft de verzoekinitiator aan vanuit het perspectief van de SIP-server. De header wordt op dezelfde manier gevormd als een e-mailadres (gebruiker@domein, waarbij gebruiker het toestelnummer is van de 3CX-gebruiker en domein het lokale IP-adres of SIP-domein van de 3CX-server). Net als de koptekst Naar bevat de koptekst Van een URI en optioneel de weergavenaam van de gebruiker. Door naar de From-header te kijken, kunt u precies begrijpen hoe dit SIP-verzoek moet worden verwerkt.

De SIP-standaard RFC 3261 bepaalt dat als de weergavenaam niet wordt verzonden, de IP-telefoon of VoIP-gateway (UAC) de weergavenaam "Anoniem" moet gebruiken, bijvoorbeeld Van: "Anoniem"[e-mail beveiligd]>.

aan:

Aan - Deze header geeft de ontvanger van het verzoek aan. Dit kan de eindontvanger van de oproep zijn, of een tussenschakel. Normaal gesproken bevat de header de SIP-URI, maar andere schema's zijn mogelijk (zie RFC 2806 [9]). SIP-URI's moeten echter worden ondersteund in alle implementaties van het SIP-protocol, ongeacht de hardwarefabrikant. De kop Aan kan ook een Weergavenaam bevatten, bijvoorbeeld Aan: "Voornaam Achternaam"[e-mail beveiligd]>).

Normaal gesproken bevat het veld Aan een SIP-URI die verwijst naar de eerste (volgende) SIP-proxy die het verzoek zal verwerken. Dit hoeft niet de uiteindelijke ontvanger van het verzoek te zijn.

Contact:

Contact - de header bevat de SIP URI waarmee u contact kunt opnemen met de afzender van het INVITE-verzoek. Dit is een vereiste header en mag slechts één SIP-URI bevatten. Het maakt deel uit van de tweerichtingscommunicatie die overeenkomt met het oorspronkelijke SIP INVITE-verzoek. Het is van groot belang dat de Contact header de juiste informatie bevat (waaronder het IP-adres) waarop de afzender van het verzoek een reactie verwacht. URI Contact wordt ook gebruikt in verdere communicatie, nadat de communicatiesessie tot stand is gebracht.

Toestaan:

Toestaan ​​- het veld bevat een lijst met parameters (SIP-methoden), gescheiden door komma's. Ze beschrijven welke SIP-protocolmogelijkheden een bepaalde afzender (apparaat) ondersteunt. Volledige lijst met methoden: ACK, BYE, ANNULEREN, INFO, UITNODIGING, MELDEN, OPTIES, PRACK, VERWIJZEN, REGISTREREN, INSCHRIJVEN, UPDATEN. SIP-methoden worden in meer detail beschreven hier.

Bron: www.habr.com

Voeg een reactie