در این مقاله در مورد اصول ضبط و تجزیه و تحلیل ترافیک SIP تولید شده توسط سانترال 3CX صحبت خواهیم کرد. مخاطب این مقاله مدیران سیستم مبتدی یا کاربران عادی است که مسئولیت آنها شامل تعمیر و نگهداری تلفن است. برای مطالعه عمیق موضوع، توصیه می کنیم از آن سر بزنید .
3CX V16 به شما امکان می دهد تا ترافیک SIP را مستقیماً از طریق رابط وب سرور دریافت کنید و آن را در قالب استاندارد Wireshark PCAP ذخیره کنید. هنگام تماس با پشتیبانی فنی می توانید فایل ضبط را پیوست کنید یا آن را برای تجزیه و تحلیل مستقل دانلود کنید.
اگر 3CX در حال اجرا باشد Windows، شما باید Wireshark را به صورت دستی روی سرور 3CX نصب کنید. در غیر این صورت، هنگام تلاش برای ضبط، پیام زیر ظاهر میشود.

В Linuxدر سیستمهایی که از این قابلیت استفاده میکنند، ابزار tcpdump هنگام نصب یا بهروزرسانی 3CX بهطور خودکار نصب میشود.
ضبط ترافیک
برای شروع عکسبرداری، به بخش رابط صفحه اصلی > رویدادهای SIP بروید و رابطی را انتخاب کنید که در آن عکس بگیرید. همچنین میتوانید ترافیک همه رابطها را بهجز رابطهای تونل IPv6 به طور همزمان ضبط کنید.

در 3CX برای Linux شما میتوانید ترافیک میزبان محلی (lo) را ضبط کنید. این ضبط برای تجزیه و تحلیل اتصالات کلاینت SIP با استفاده از فناوری استفاده میشود. .
دکمهی «ضبط ترافیک» وایرشارک را اجرا میکند. Windows یا tcpdump روشن Linuxدر این مرحله، شما باید به سرعت مشکل را دوباره ایجاد کنید، زیرا ضبط، پردازنده را بارگذاری میکند و مقدار قابل توجهی از فضای دیسک را اشغال میکند.

به پارامترهای فراخوانی زیر توجه کنید:
- شماره ای که از آن تماس گرفته شده است که سایر شماره ها/شرکت کنندگان در تماس نیز با آن تماس گرفته اند.
- زمان دقیق بروز مشکل مطابق با ساعت سرور 3CX است.
- مسیر تماس.
سعی کنید به جز دکمه "توقف" در جایی از رابط کلیک نکنید. همچنین، روی پیوندهای دیگر در این پنجره مرورگر کلیک نکنید. در غیر این صورت، ضبط ترافیک در پسزمینه ادامه مییابد و منجر به بار اضافی روی سرور میشود.
دریافت فایل کپچر
دکمه Stop ضبط را متوقف می کند و فایل ضبط را ذخیره می کند. می توانید فایل را برای تجزیه و تحلیل در ابزار Wireshark در رایانه خود بارگیری کنید یا یک فایل خاص ایجاد کنید ، که شامل این ضبط و سایر اطلاعات اشکال زدایی می شود. پس از دانلود یا گنجاندن در یک بسته پشتیبانی، فایل ضبط به صورت خودکار از سرور 3CX برای اهداف امنیتی حذف می شود.
در سرور 3CX فایل در مکان زیر قرار دارد:
- Windows: C:\ProgramData3\CX\Instance1\DataLogsdump.pcap
- Linux: /var/lib/3cxpbx/Instance/Data/Logs/dump.pcap
برای جلوگیری از افزایش بار سرور یا از دست دادن بسته در طول ضبط، دوره ضبط به 2 میلیون بسته محدود شده است. پس از این، ضبط به طور خودکار متوقف می شود. اگر به ضبط طولانیتری نیاز دارید، از ابزار جداگانه Wireshark همانطور که در زیر توضیح داده شده است استفاده کنید.
با ابزار Wireshark ترافیک را ضبط کنید
اگر به تجزیه و تحلیل عمیق تر ترافیک شبکه علاقه دارید، آن را به صورت دستی ضبط کنید. ابزار Wireshark را برای سیستم عامل خود دانلود کنید . پس از نصب ابزار بر روی سرور 3CX، به Capture > Interfaces بروید. تمام رابط های شبکه سیستم عامل در اینجا نشان داده می شود. آدرس های IP رابط را می توان در استاندارد IPv6 نمایش داد. برای مشاهده آدرس IPv4، روی آدرس IPv6 کلیک کنید.

رابط مورد نظر را انتخاب کنید و روی دکمه Options کلیک کنید. تیک گزینه Capture Traffic را در حالت غیرقانونی بردارید و بقیه تنظیمات را بدون تغییر رها کنید.

اکنون باید مشکل را تکرار کنید. وقتی مشکل تکرار شد، گرفتن عکس را متوقف کنید (Menu Capture > Stop). می توانید پیام های SIP را در منوی تلفن > جریان های SIP انتخاب کنید.
مبانی تجزیه و تحلیل ترافیک - پیام دعوت SIP
بیایید به فیلدهای اصلی پیام SIP INVITE که برای برقراری تماس VoIP ارسال می شود نگاه کنیم. نقطه شروع برای تحلیل است. به طور معمول، SIP INVITE شامل 4 تا 6 فیلد با اطلاعاتی است که توسط دستگاه های انتهایی SIP (تلفن ها، دروازه ها) و اپراتورهای مخابراتی استفاده می شود. درک محتویات INVITE و پیامهای پس از آن اغلب میتواند به تعیین منبع مشکل کمک کند. علاوه بر این، دانش فیلدهای INVITE هنگام اتصال اپراتورهای SIP به 3CX یا ترکیب 3CX با سایر PBX های SIP کمک می کند.
در پیام INVITE، کاربران (یا دستگاه های SIP) توسط URI شناسایی می شوند. به طور معمول، SIP URI شماره تلفن کاربر + آدرس سرور SIP است. SIP URI بسیار شبیه به آدرس ایمیل است و به صورت sip:x@y:Port نوشته می شود.

Request-Line-URI:
Request-Line-URI - فیلد حاوی گیرنده تماس است. این شامل همان اطلاعات فیلد To است، اما بدون نام نمایشی کاربر.
از طریق:
از طریق - هر سرور SIP (پراکسی) که درخواست INVITE از طریق آن عبور می کند، آدرس IP و پورتی را که پیام از آن دریافت شده است را در بالای لیست Via اضافه می کند. سپس پیام بیشتر در طول مسیر مخابره می شود. هنگامی که گیرنده نهایی به درخواست INVITE پاسخ می دهد، تمام گره های ترانزیت هدر Via را جستجو می کنند و پیام را در همان مسیر به فرستنده برمی گردانند. در این حالت، پروکسی SIP ترانزیت داده های خود را از هدر حذف می کند.
از:
از - هدر آغازگر درخواست را از دیدگاه سرور SIP نشان می دهد. هدر به همان روش آدرس ایمیل (user@domain، که در آن کاربر شماره داخلی کاربر 3CX است، و دامنه آدرس IP محلی یا دامنه SIP سرور 3CX) تشکیل میشود. مانند هدر To، هدر From حاوی یک URI و به صورت اختیاری نام نمایشی کاربر است. با نگاه کردن به هدر From، می توانید دقیقاً بفهمید که این درخواست SIP چگونه باید پردازش شود.
استاندارد SIP RFC 3261 بیان میکند که اگر نام نمایشی ارسال نشود، تلفن IP یا گیتوی VoIP (UAC) باید از نام نمایشی "ناشناس" استفاده کند، مثلاً از: «ناشناس» .
به:
به - این هدر گیرنده درخواست را مشخص میکند. این میتواند یا گیرنده نهایی تماس باشد یا یک رابط واسط. معمولاً هدر حاوی یک SIP URI است، اما طرحهای دیگری نیز امکانپذیر است (به RFC 2806 [9] مراجعه کنید). با این حال، SIP URI باید در تمام پیادهسازیهای پروتکل SIP، صرف نظر از سازنده تجهیزات، پشتیبانی شود. سربرگ «به» همچنین میتواند شامل یک نام نمایشی باشد، برای مثال، «به: "نام کوچک نام خانوادگی" ).
معمولاً فیلد To حاوی یک URI SIP است که به اولین پروکسی SIP (بعدی) اشاره می کند که درخواست را پردازش می کند. این نباید گیرنده نهایی درخواست باشد.
تماس:
تماس - هدر حاوی SIP URI است که با آن می توانید با فرستنده درخواست INVITE تماس بگیرید. این یک هدر الزامی است و باید فقط یک URI SIP داشته باشد. این بخشی از ارتباط دو طرفه مربوط به درخواست اصلی SIP INVITE است. بسیار مهم است که هدر تماس حاوی اطلاعات صحیح (از جمله آدرس IP) باشد که فرستنده درخواست انتظار پاسخ را دارد. URI Contact نیز پس از برقراری جلسه ارتباط در ارتباطات بعدی استفاده می شود.
اجازه:
Allow - فیلد حاوی لیستی از پارامترها (روش های SIP) است که با کاما از هم جدا شده اند. آنها توصیف می کنند که یک فرستنده (دستگاه) از چه قابلیت های پروتکل SIP پشتیبانی می کند. فهرست کامل روشها: ACK، BYE، Cancel، INFO، INVITE، NOTIFY، OPTIONs، PRACK، ارجاع، ثبت نام، اشتراک، بهروزرسانی. روش های SIP با جزئیات بیشتر توضیح داده شده است .
منبع: www.habr.com
