Wsparcie techniczne 3CX odpowiada: przechwytywanie ruchu SIP na serwerze centrali

W tym artykule omówimy podstawy przechwytywania i analizy ruchu SIP generowanego przez centralę 3CX. Artykuł jest skierowany do początkujących administratorów systemów lub zwykłych użytkowników, którzy zajmują się obsługą telefonii. Aby głębiej zgłębić temat, polecamy przystąpić do Rozszerzonego kursu szkoleniowego 3CX.

3CX V16 umożliwia przechwytywanie ruchu SIP bezpośrednio przez interfejs webowy serwera i zapisywanie w standardowym formacie Wireshark PCAP. Możesz załączyć plik przechwytywania, kontaktując się z pomocą techniczną, lub pobrać go do samodzielnej analizy.

Jeśli 3CX działa na Windowsie, należy samodzielnie zainstalować Wireshark na serwerze 3CX. W przeciwnym razie podczas próby przechwycenia pojawi się następujący komunikat.
Wsparcie techniczne 3CX odpowiada: przechwytywanie ruchu SIP na serwerze centrali

W systemach Linux narzędzie tcpdump instalowane jest automatycznie podczas instalacji lub aktualizacji 3CX.

Przechwytywanie ruchu

Aby rozpocząć przechwytywanie, przejdź do sekcji interfejsu Główna > Zdarzenia SIP i wybierz interfejs, na którym należy przeprowadzić przechwytywanie. Możliwe jest również przechwytywanie ruchu na wszystkich interfejsach jednocześnie, z wyjątkiem interfejsów tunelowania IPv6.

Wsparcie techniczne 3CX odpowiada: przechwytywanie ruchu SIP na serwerze centrali

W 3CX dla Linux można przechwytywać ruch dla lokalnego hosta (lo). To przechwytywanie służy do analizy połączeń klientów SIP w technologii 3CX Tunnel i Session Border Controller.

Przycisk „Przechwytywanie ruchu” uruchamia Wireshark na Windowsie lub tcpdump na Linuxie. W tym momencie należy szybko odtworzyć problem, ponieważ przechwytywanie obciążą procesor i zajmie sporo miejsca na dysku.  
Wsparcie techniczne 3CX odpowiada: przechwytywanie ruchu SIP na serwerze centrali

Zwróć uwagę na następujące parametry połączenia:

  • Numer, z którego dzwoniono, numer, na który dzwoniono oraz inne numery / uczestnicy połączenia.
  • Dokładny czas wystąpienia problemu wg zegara serwera 3CX.
  • Trasa przejścia połączenia.

Staraj się nie klikać w inne miejsca w interfejsie oprócz przycisku „Zatrzymaj”. Nie przechodź również do innych linków w tym oknie przeglądarki. W przeciwnym razie, przechwytywanie ruchu będzie kontynuowane w tle i spowoduje dodatkowe obciążenie serwera.

Pobieranie pliku przechwytywania

Przycisk „Zatrzymaj” zatrzymuje przechwytywanie i zapisuje plik przechwytywania. Możesz pobrać plik na swój komputer do analizy w narzędziu Wireshark lub wygenerować specjalny plik pomocy technicznej, który będzie zawierał ten zrzut oraz inne informacje debugujące. Po pobraniu lub dołączeniu do pakietu wsparcia technicznego, plik zrzutu jest automatycznie usuwany z serwera 3CX w celach bezpieczeństwa.

Na serwerze 3CX plik znajduje się w następującej lokalizacji:

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

Aby uniknąć nadmiernego obciążenia serwera lub utraty pakietów podczas zrzutu, czas zrzutu jest ograniczony do 2 milionów pakietów. Po tym zrzut automatycznie się zatrzymuje. Jeśli potrzebujesz dłuższego zrzutu, użyj osobnego narzędzia Wireshark, jak opisano poniżej.

Zrzut ruchu za pomocą narzędzia Wireshark

Jeśli interesuje Cię głębsza analiza ruchu sieciowego, zrzutuj go ręcznie. Pobierz narzędzie Wireshark dla swojego systemu operacyjnego. stąd. Po zainstalowaniu narzędzia na serwerze 3CX, przejdź do sekcji Capture > Interfaces. Tutaj będą pokazane wszystkie interfejsy sieciowe systemu operacyjnego. Adresy IP interfejsów mogą być wyświetlane w standardzie IPv6. Aby zobaczyć adres IPv4, kliknij na adres IPv6.

Wsparcie techniczne 3CX odpowiada: przechwytywanie ruchu SIP na serwerze centrali

Wybierz interfejs do zrzutu i naciśnij przycisk Opcje. Odznacz opcję Capture Traffic in promiscuous mode, pozostawiając pozostałe ustawienia bez zmian.

Wsparcie techniczne 3CX odpowiada: przechwytywanie ruchu SIP na serwerze centrali

Teraz należy odtworzyć problem. Gdy problem zostanie odtworzony, zatrzymaj zrzut (menu Capture > Stop). Możesz wyodrębnić wiadomości SIP w menu Telephony > SIP Flows.

Podstawy analizy ruchu — wiadomość SIP INVITE

Rozważmy podstawowe pola wiadomości SIP INVITE, która jest wysyłana w celu nawiązania połączenia VoIP, tzn. stanowi punkt wyjścia do analizy. Zazwyczaj SIP INVITE zawiera od 4 do 6 pól z informacjami, które są używane przez końcowe urządzenia SIP (telefony, bramy) oraz operatorów telekomunikacyjnych. Zrozumienie zawartości INVITE oraz kolejnych wiadomości pomaga często w ustaleniu źródła problemu. Ponadto znajomość pól INVITE pomaga przy podłączaniu operatorów SIP do 3CX lub integrowaniu 3CX z innymi centralami SIP.

W wiadomości INVITE użytkownicy (lub urządzenia SIP) są identyfikowani za pomocą URI. Zazwyczaj SIP URI to numer telefonu użytkownika + adres serwera SIP. SIP URI jest bardzo podobny do adresu e-mail i jest zapisywany jako sip:x@y:Port.

Wsparcie techniczne 3CX odpowiada: przechwytywanie ruchu SIP na serwerze centrali

Request-Line-URI:

Request-Line-URI — pole zawiera adresata połączenia. Zawiera tę samą informację, co pole To, ale bez pokazywanego imienia użytkownika (Display Name).

Via:

Via — każdy serwer SIP (proxy), przez który przechodzi zapytanie INVITE, dodaje na górze listy Via swój adres IP i port, na który otrzymał wiadomość. Następnie wiadomość jest przekazywana dalej zgodnie z trasą przemarszu. Gdy końcowy odbiorca odpowiada na zapytanie INVITE, wszystkie węzły tranzytowe „przeglądają” nagłówek Via i zwracają wiadomość nadawcy tą samą trasą. W tym samym czasie tranzytowy proxy SIP usuwa swoje dane z nagłówka.

From:

From — nagłówek wskazuje na inicjatora zapytania z punktu widzenia serwera SIP. Nagłówek jest tworzony w sposób podobny do adresu e-mail (user@domain, gdzie user — numer wewnętrzny użytkownika 3CX, a domain — lokalny adres IP lub domena SIP serwera 3CX). Podobnie jak w nagłówku To, nagłówek From zawiera URI i opcjonalnie wyświetlaną nazwę użytkownika Display Name. Z nagłówka From można zrozumieć, jak należy przetwarzać to zapytanie SIP.

Standard SIP RFC 3261 przewiduje, że jeśli wyświetlana nazwa Display Name nie jest przekazywana, telefon IP lub brama VoIP (UAC) powinny używać wyświetlanej nazwy „Anonymous”, na przykład, From: „Anonymous” .

To:

To — ten nagłówek wskazuje na odbiorcę zapytania. Może to być zarówno końcowy odbiorca połączenia, jak i pośrednie ogniwo. Zazwyczaj w nagłówku znajduje się SIP URI, jednak możliwe są również inne schemy (zob. RFC 2806 [9]). Niemniej jednak SIP URI musi być obsługiwany we wszystkich implementacjach protokołu SIP, niezależnie od producenta sprzętu. Nagłówek To może również zawierać wyświetlaną nazwę Display Name, na przykład, To: „Imię Nazwisko” .

Zwykle pole To zawiera SIP URI wskazujący na pierwszy (następny) proxy SIP, który będzie przetwarzać zapytanie. Nie musi to być końcowy odbiorca zapytania.

Contact:

Contact — nagłówek zawiera SIP URI, pod którym można skontaktować się z nadawcą zapytania INVITE. Jest to obowiązkowy nagłówek, który musi zawierać tylko jeden SIP URI. Stanowi część dwustronnej komunikacji odpowiadającej początkowemu zapytaniu SIP INVITE. Bardzo ważne jest, aby nagłówek Contact zawierał poprawne informacje (w tym adres IP), pod którym nadawca zapytania oczekuje odpowiedzi. URI Contact jest również używane w dalszej komunikacji, już po ustanowieniu sesji komunikacyjnej.

Allow:

Dozwolone — pole zawiera listę parametrów (metod SIP) oddzielonych przecinkami. Opisują one, jakie możliwości protokołu SIP wspiera ten nadawca (urządzenie). Pełna lista metod: ACK, BYE, CANCEL, INFO, INVITE, NOTIFY, OPTIONS, PRACK, REFER, REGISTER, SUBSCRIBE, UPDATE. Szczegóły dotyczące metod SIP opisano tutaj.

Źródło: habr.com

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster