Այս հոդվածում մենք կխոսենք 3CX PBX-ի կողմից ստեղծված SIP տրաֆիկի ֆիքսման և վերլուծության հիմունքների մասին: Հոդվածը հասցեագրված է համակարգի սկսնակ ադմինիստրատորներին կամ սովորական օգտատերերին, որոնց պարտականությունների մեջ է մտնում հեռախոսի սպասարկումը: Թեմայի խորը ուսումնասիրության համար խորհուրդ ենք տալիս անցնել
3CX V16-ը թույլ է տալիս գրավել SIP տրաֆիկը անմիջապես սերվերի վեբ ինտերֆեյսի միջոցով և պահպանել այն ստանդարտ Wireshark PCAP ձևաչափով: Դուք կարող եք կցել նկարահանման ֆայլը տեխնիկական աջակցության հետ կապ հաստատելիս կամ ներբեռնել այն անկախ վերլուծության համար:
Եթե 3CX-ն աշխատում է Windows-ով, ապա դուք ինքներդ պետք է տեղադրեք Wireshark 3CX սերվերի վրա: Հակառակ դեպքում, երբ փորձեք նկարել, կհայտնվի հետևյալ հաղորդագրությունը:
Linux համակարգերում tcpdump կոմունալը տեղադրվում է ավտոմատ կերպով 3CX-ը տեղադրելիս կամ թարմացնելիս:
Երթևեկության գրավում
Նկարահանումը սկսելու համար անցեք ինտերֆեյսի բաժին Գլխավոր > SIP Իրադարձություններ և ընտրեք այն միջերեսը, որի վրա պետք է նկարել: Դուք կարող եք նաև միաժամանակ երթևեկել բոլոր ինտերֆեյսներում, բացառությամբ IPv6 թունելային միջերեսների:
Linux-ի համար 3CX-ում դուք կարող եք գրավել երթևեկությունը տեղական հոսթի համար (lo): Այս գրավումը օգտագործվում է տեխնոլոգիայի միջոցով SIP հաճախորդի կապերը վերլուծելու համար
Traffic Capture կոճակը գործարկում է Wireshark-ը Windows-ում կամ tcpdump-ը Linux-ում: Այս պահին պետք է արագ վերարտադրել խնդիրը, քանի որ... նկարահանումը պրոցեսորի ինտենսիվ է և բավականաչափ տարածություն է զբաղեցնում սկավառակի վրա:
Ուշադրություն դարձրեք զանգի հետևյալ պարամետրերին.
- Այն համարը, որտեղից կատարվել է զանգը, որին զանգահարել են նաև այլ համարներ/զանգի մասնակիցներ։
- Խնդիրի առաջացման ճշգրիտ ժամանակը ըստ 3CX սերվերի ժամացույցի:
- Զանգի երթուղի:
Փորձեք չկտտացնել ինտերֆեյսի որևէ տեղ, բացառությամբ «Stop» կոճակի: Բացի այդ, մի սեղմեք այլ հղումների վրա այս դիտարկիչի պատուհանում: Հակառակ դեպքում, երթևեկության գրավումը կշարունակվի հետին պլանում և կհանգեցնի սերվերի լրացուցիչ բեռի:
Capture ֆայլի ստացում
Stop կոճակը դադարեցնում է նկարահանումը և պահպանում է նկարահանման ֆայլը: Դուք կարող եք ներբեռնել ֆայլը ձեր համակարգչում՝ Wireshark կոմունալ ծրագրում վերլուծության համար կամ ստեղծել հատուկ ֆայլ
3CX սերվերի վրա ֆայլը գտնվում է հետևյալ վայրում.
- Windows՝ C:ProgramData3CXInstance1DataLogsdump.pcap
- Linux՝ /var/lib/3cxpbx/Instance/Data/Logs/dump.pcap
Գրավման ընթացքում սերվերի ծանրաբեռնվածության կամ փաթեթների կորստից խուսափելու համար գրավման ժամկետը սահմանափակվում է 2 միլիոն փաթեթով: Դրանից հետո գրավումն ինքնաբերաբար դադարում է: Եթե Ձեզ անհրաժեշտ է ավելի երկար նկարում, օգտագործեք առանձին Wireshark կոմունալ ծրագիրը, ինչպես նկարագրված է ստորև:
Գրավեք երթևեկությունը Wireshark կոմունալ ծրագրի միջոցով
Եթե դուք հետաքրքրված եք ցանցային տրաֆիկի ավելի խորը վերլուծությամբ, ձեռքով նկարեք այն: Ներբեռնեք Wireshark կոմունալ ծրագիրը ձեր ՕՀ-ի համար
Ընտրեք նկարելու համար նախատեսված միջերեսը և սեղմեք Ընտրանքներ կոճակը: Անջատեք «Secure Traffic»-ը անառակ ռեժիմում և մնացած կարգավորումները թողեք անփոփոխ:
Այժմ դուք պետք է վերարտադրեք խնդիրը: Երբ խնդիրը վերարտադրվում է, դադարեցրեք լուսանկարումը (Menu Capture > Stop): Դուք կարող եք ընտրել SIP հաղորդագրություններ Հեռախոսակապ > SIP հոսքեր ընտրացանկում:
Երթևեկության վերլուծության հիմունքներ - SIP INVITE հաղորդագրություն
Դիտարկենք SIP INVITE հաղորդագրության հիմնական դաշտերը, որն ուղարկվում է VoIP զանգ հաստատելու համար, այսինքն. վերլուծության մեկնարկային կետն է: Սովորաբար SIP INVITE-ը ներառում է 4-ից 6 դաշտեր՝ տեղեկություններով, որոնք օգտագործվում են SIP-ի վերջնական սարքերի (հեռախոսներ, դարպասներ) և հեռահաղորդակցության օպերատորների կողմից: INVITE-ի բովանդակությունը և դրան հաջորդող հաղորդագրությունները հասկանալը հաճախ կարող է օգնել որոշել խնդրի աղբյուրը: Բացի այդ, INVITE դաշտերի իմացությունը օգնում է SIP օպերատորներին 3CX-ին միացնելիս կամ 3CX-ը SIP PBX-ների հետ համատեղելիս:
INVITE հաղորդագրության մեջ օգտվողները (կամ SIP սարքերը) նույնականացվում են URI-ով: Որպես կանոն, SIP URI-ն օգտագործողի հեռախոսահամարն է + SIP սերվերի հասցեն: SIP URI-ն շատ նման է էլ.փոստի հասցեին և գրված է sip:x@y:Port:
Request-Line-URI:
Request-Line-URI - դաշտը պարունակում է զանգի ստացողին: Այն պարունակում է նույն տեղեկատվությունը, ինչ Դեպի դաշտը, բայց առանց օգտագործողի Ցուցադրվող անվանման:
Via:
Via - յուրաքանչյուր SIP սերվեր (proxy), որի միջոցով անցնում է INVITE հարցումը, ավելացնում է իր IP հասցեն և պորտը, որով ստացվել է հաղորդագրությունը Via ցուցակի վերևում: Այնուհետև հաղորդագրությունը փոխանցվում է երթուղու հետագա երկայնքով: Երբ վերջնական ստացողը պատասխանում է INVITE հարցումին, բոլոր տարանցիկ հանգույցները «փնտրում են» Via-ի վերնագիրը և հաղորդագրությունը վերադարձնում ուղարկողին նույն ճանապարհով: Այս դեպքում տարանցիկ SIP վստահված անձը հեռացնում է իր տվյալները վերնագրից:
From:
From - վերնագիրը ցույց է տալիս հարցում նախաձեռնողին SIP սերվերի տեսանկյունից: Վերնագիրը ձևավորվում է այնպես, ինչպես էլփոստի հասցեն (user@domain, որտեղ օգտվողը 3CX օգտագործողի ընդլայնման համարն է, իսկ տիրույթը 3CX սերվերի տեղական IP հասցեն կամ SIP տիրույթն է): Ինչպես Դեպի վերնագիրը, «From» վերնագիրը պարունակում է URI և ցանկության դեպքում օգտագործողի Ցուցադրվող անունը: Դիտելով From վերնագիրը՝ դուք կարող եք հստակ հասկանալ, թե ինչպես պետք է մշակվի այս SIP հարցումը:
RFC 3261 SIP ստանդարտը սահմանում է, որ եթե Ցուցադրման անունը չի փոխանցվում, IP հեռախոսը կամ VoIP դարպասը (UAC) պետք է օգտագործի «Անանուն» Ցուցադրվող անունը, օրինակ՝ From: «Անանուն»:[էլեկտրոնային փոստով պաշտպանված]>.
- Ից:
Դեպի - Այս վերնագիրը ցույց է տալիս հարցումը ստացողին: Սա կարող է լինել կամ զանգի վերջնական ստացողը կամ միջանկյալ հղումը: Սովորաբար վերնագիրը պարունակում է SIP URI, սակայն այլ սխեմաներ հնարավոր են (տես RFC 2806 [9]): Այնուամենայնիվ, SIP URI-ները պետք է ապահովվեն SIP արձանագրության բոլոր իրականացումներում՝ անկախ սարքաշարի արտադրողից: Դեպի վերնագիրը կարող է նաև պարունակել Ցուցադրվող անուն, օրինակ՝ Դեպի՝ «Անուն Ազգանուն»[էլեկտրոնային փոստով պաշտպանված]>):
Սովորաբար Դեպի դաշտը պարունակում է SIP URI, որը ցույց է տալիս առաջին (հաջորդ) SIP վստահված անձին, որը կմշակի հարցումը: Պարտադիր չէ, որ սա լինի հարցման վերջնական ստացողը:
Հետադարձ:
Կոնտակտ - վերնագիրը պարունակում է SIP URI, որով կարող եք կապվել INVITE հարցումն ուղարկողի հետ: Սա պարտադիր վերնագիր է և պետք է պարունակի միայն մեկ SIP URI: Այն երկկողմանի հաղորդակցության մի մասն է, որը համապատասխանում է սկզբնական SIP INVITE հարցումին: Շատ կարևոր է, որ Կոնտակտային վերնագիրը պարունակի ճիշտ տեղեկատվություն (ներառյալ IP հասցեն), որի դեպքում հարցումն ուղարկողն ակնկալում է պատասխան: URI Contact-ն օգտագործվում է նաև հետագա հաղորդակցություններում՝ հաղորդակցության նիստը հաստատելուց հետո:
Թույլատրել
Թույլատրել - դաշտը պարունակում է պարամետրերի ցանկ (SIP մեթոդներ), որոնք բաժանված են ստորակետերով: Նրանք նկարագրում են, թե ինչ SIP արձանագրության հնարավորություններ է աջակցում տվյալ ուղարկողը (սարքը): Մեթոդների ամբողջական ցանկը՝ ՀԱՆՁՆԵԼ, ԲԱՅԵ, ՉԵՂԱՐԿԵԼ, ՏԵՂԵԿԱՏՎԵԼ, ՀՐԱՎԻՐԵԼ, ԾԱՆՈՒՑԵԼ, ՏԱՐԲԵՐԱԿՆԵՐ, ՊՐԱՔ, ՀՂԵԼ, ԳՐԱՆՑՎԵԼ, ԲԱԺԱՆՈՐԴԱԳՐՎԵԼ, ԹԱՐՄԱՑՆԵԼ: SIP մեթոդները նկարագրված են ավելի մանրամասն
Source: www.habr.com