I denne artikkelen vil vi snakke om det grunnleggende om å fange og analysere SIP-trafikk generert av 3CX PBX. Artikkelen er rettet til nybegynnere systemadministratorer eller vanlige brukere hvis ansvar inkluderer telefonivedlikehold. For en dybdestudie av temaet anbefaler vi å gå gjennom
3CX V16 lar deg fange SIP-trafikk direkte gjennom serverens webgrensesnitt og lagre den i standard Wireshark PCAP-format. Du kan legge ved fangstfilen når du kontakter teknisk støtte eller laste den ned for uavhengig analyse.
Hvis 3CX kjører på Windows, må du installere Wireshark på 3CX-serveren selv. Ellers vil følgende melding vises når du prøver å fange.
På Linux-systemer installeres tcpdump-verktøyet automatisk når du installerer eller oppdaterer 3CX.
Trafikkfangst
For å begynne å fange, gå til grensesnittdelen Hjem > SIP-hendelser og velg grensesnittet du vil fange på. Du kan også fange opp trafikk på alle grensesnitt samtidig, unntatt IPv6-tunnelgrensesnitt.
I 3CX for Linux kan du fange opp trafikk for lokal vert (lo). Denne registreringen brukes til å analysere SIP-klientforbindelser ved hjelp av teknologi
Traffic Capture-knappen starter Wireshark på Windows eller tcpdump på Linux. På dette tidspunktet må du raskt gjenskape problemet, fordi... capture er CPU-intensiv og tar opp en god del diskplass.
Vær oppmerksom på følgende anropsparametere:
- Nummeret det ble ringt fra, som andre numre/deltakere i samtalen også ringte til.
- Det nøyaktige tidspunktet problemet oppsto i henhold til 3CX-serverklokken.
- Anropsrute.
Prøv å ikke klikke noe sted i grensesnittet bortsett fra "Stopp"-knappen. Ikke klikk på andre lenker i dette nettleservinduet. Ellers vil trafikkfangst fortsette i bakgrunnen og resultere i ekstra belastning på serveren.
Motta en opptaksfil
Stopp-knappen stopper opptak og lagrer opptaksfilen. Du kan laste ned filen til datamaskinen din for analyse i Wireshark-verktøyet eller generere en spesiell fil
På 3CX-serveren er filen plassert på følgende plassering:
- Windows: C:ProgramData3CXInstance1DataLogsdump.pcap
- Linux: /var/lib/3cxpbx/Instance/Data/Logs/dump.pcap
For å unngå økt serverbelastning eller pakketap under fangst, er fangstperioden begrenset til 2 millioner pakker. Etter dette stopper opptaket automatisk. Hvis du trenger en lengre fangst, bruk det separate Wireshark-verktøyet som beskrevet nedenfor.
Fang trafikk med Wireshark-verktøyet
Hvis du er interessert i en dypere analyse av nettverkstrafikk, kan du fange den manuelt. Last ned Wireshark-verktøyet for operativsystemet ditt
Velg grensesnittet du vil fange, og klikk på Alternativer-knappen. Fjern merket for Capture Traffic i promiskuøs modus og la resten av innstillingene være uendret.
Nå bør du gjenskape problemet. Når problemet er reprodusert, stopp opptak (Meny Capture > Stop). Du kan velge SIP-meldinger i menyen Telefoni > SIP-flyter.
Grunnleggende om trafikkanalyse - SIP INVITE-melding
La oss se på hovedfeltene til SIP INVITE-meldingen, som sendes for å etablere et VoIP-anrop, dvs. er utgangspunktet for analysen. Vanligvis inkluderer SIP INVITE fra 4 til 6 felt med informasjon som brukes av SIP-endeenheter (telefoner, gatewayer) og teleoperatører. Å forstå innholdet i INVITEN og meldingene som følger den kan ofte hjelpe til med å finne kilden til problemet. I tillegg hjelper kunnskap om INVITE-feltene når du kobler SIP-operatører til 3CX eller kombinerer 3CX med andre SIP-PBX-er.
I INVITE-meldingen identifiseres brukere (eller SIP-enheter) av URI. Vanligvis er SIP URI brukerens telefonnummer + SIP-serveradresse. SIP URI er veldig lik en e-postadresse og skrives som sip:x@y:Port.
Request-Line-URI:
Request-Line-URI - Feltet inneholder mottakeren av samtalen. Den inneholder samme informasjon som Til-feltet, men uten brukerens visningsnavn.
Via:
Via - hver SIP-server (proxy) som INVITE-forespørselen går gjennom, legger til sin IP-adresse og porten som meldingen ble mottatt på, øverst på Via-listen. Meldingen sendes deretter videre langs ruten. Når den endelige mottakeren svarer på INVITE-forespørselen, "slår" alle transittnoder opp Via-overskriften og returnerer meldingen til avsenderen langs samme rute. I dette tilfellet fjerner SIP-proxyen for transitt sine data fra overskriften.
fra:
Fra - overskriften indikerer forespørselsinitiatoren fra synspunktet til SIP-serveren. Headeren er dannet på samme måte som en e-postadresse (bruker@domene, hvor bruker er utvidelsesnummeret til 3CX-brukeren, og domene er den lokale IP-adressen eller SIP-domenet til 3CX-serveren). I likhet med Til-overskriften, inneholder Fra-overskriften en URI og eventuelt brukerens visningsnavn. Ved å se på Fra-overskriften kan du forstå nøyaktig hvordan denne SIP-forespørselen skal behandles.
SIP-standarden RFC 3261 fastsetter at hvis visningsnavnet ikke overføres, må IP-telefonen eller VoIP-gatewayen (UAC) bruke visningsnavnet "Anonym", for eksempel Fra: "Anonym"[e-postbeskyttet]>.
til:
Til - Denne overskriften angir mottakeren av forespørselen. Dette kan enten være den endelige mottakeren av samtalen eller en mellomkobling. Vanligvis inneholder overskriften SIP URI, men andre skjemaer er mulige (se RFC 2806 [9]). Imidlertid må SIP URIer støttes i alle implementeringer av SIP-protokollen, uavhengig av maskinvareprodusenten. Til-overskriften kan også inneholde et visningsnavn, for eksempel Til: "Fornavn Etternavn"[e-postbeskyttet]>).
Til-feltet inneholder vanligvis en SIP-URI som peker til den første (neste) SIP-proxyen som skal behandle forespørselen. Dette trenger ikke være den endelige mottakeren av forespørselen.
Kontakt:
Kontakt - overskriften inneholder SIP URI som du kan kontakte avsenderen av INVITE-forespørselen med. Dette er en obligatorisk overskrift og må kun inneholde én SIP-URI. Det er en del av toveiskommunikasjonen som tilsvarer den opprinnelige SIP INVITE-forespørselen. Det er svært viktig at kontakthodet inneholder riktig informasjon (inkludert IP-adressen) som avsenderen av forespørselen forventer svar på. URI Contact brukes også i videre kommunikasjon, etter at kommunikasjonsøkten er etablert.
Tillate:
Tillat - feltet inneholder en liste over parametere (SIP-metoder), atskilt med komma. De beskriver hvilke SIP-protokollfunksjoner en gitt sender (enhet) støtter. Full liste over metoder: ACK, BYE, CANCEL, INFO, INVITER, VARSEL, OPTIONS, PRACK, REFER, REGISTRER, ABONNER, UPDATE. SIP-metoder er beskrevet mer detaljert
Kilde: www.habr.com