در این مقاله در مورد اصول ضبط و تجزیه و تحلیل ترافیک SIP تولید شده توسط سانترال 3CX صحبت خواهیم کرد. مخاطب این مقاله مدیران سیستم مبتدی یا کاربران عادی است که مسئولیت آنها شامل تعمیر و نگهداری تلفن است. برای مطالعه عمیق موضوع، توصیه می کنیم از آن سر بزنید
3CX V16 به شما امکان می دهد تا ترافیک SIP را مستقیماً از طریق رابط وب سرور دریافت کنید و آن را در قالب استاندارد Wireshark PCAP ذخیره کنید. هنگام تماس با پشتیبانی فنی می توانید فایل ضبط را پیوست کنید یا آن را برای تجزیه و تحلیل مستقل دانلود کنید.
اگر 3CX روی ویندوز اجرا می شود، باید Wireshark را خودتان روی سرور 3CX نصب کنید. در غیر این صورت، وقتی می خواهید عکس بگیرید، پیام زیر ظاهر می شود.
در سیستم های لینوکس، ابزار tcpdump به طور خودکار هنگام نصب یا به روز رسانی 3CX نصب می شود.
ضبط ترافیک
برای شروع عکسبرداری، به بخش رابط صفحه اصلی > رویدادهای SIP بروید و رابطی را انتخاب کنید که در آن عکس بگیرید. همچنین میتوانید ترافیک همه رابطها را بهجز رابطهای تونل IPv6 به طور همزمان ضبط کنید.
در 3CX برای لینوکس، می توانید ترافیک میزبان محلی (lo) را ضبط کنید. این ضبط برای تجزیه و تحلیل اتصالات سرویس گیرنده SIP با استفاده از فناوری استفاده می شود
دکمه Traffic Capture Wireshark را در ویندوز یا tcpdump را در لینوکس راه اندازی می کند. در این مرحله، باید به سرعت مشکل را بازتولید کنید، زیرا ... ضبط فشرده CPU است و مقدار نسبتاً زیادی فضای دیسک را اشغال می کند.
به پارامترهای فراخوانی زیر توجه کنید:
- شماره ای که از آن تماس گرفته شده است که سایر شماره ها/شرکت کنندگان در تماس نیز با آن تماس گرفته اند.
- زمان دقیق بروز مشکل مطابق با ساعت سرور 3CX است.
- مسیر تماس.
سعی کنید به جز دکمه "توقف" در جایی از رابط کلیک نکنید. همچنین، روی پیوندهای دیگر در این پنجره مرورگر کلیک نکنید. در غیر این صورت، ضبط ترافیک در پسزمینه ادامه مییابد و منجر به بار اضافی روی سرور میشود.
دریافت فایل کپچر
دکمه Stop ضبط را متوقف می کند و فایل ضبط را ذخیره می کند. می توانید فایل را برای تجزیه و تحلیل در ابزار Wireshark در رایانه خود بارگیری کنید یا یک فایل خاص ایجاد کنید
در سرور 3CX فایل در مکان زیر قرار دارد:
- ویندوز: C:ProgramData3CXInstance1DataLogsdump.pcap
- لینوکس: /var/lib/3cxpbx/Instance/Data/Logs/dump.pcap
برای جلوگیری از افزایش بار سرور یا از دست دادن بسته در طول ضبط، دوره ضبط به 2 میلیون بسته محدود شده است. پس از این، ضبط به طور خودکار متوقف می شود. اگر به ضبط طولانیتری نیاز دارید، از ابزار جداگانه Wireshark همانطور که در زیر توضیح داده شده است استفاده کنید.
با ابزار Wireshark ترافیک را ضبط کنید
اگر به تجزیه و تحلیل عمیق تر ترافیک شبکه علاقه دارید، آن را به صورت دستی ضبط کنید. ابزار Wireshark را برای سیستم عامل خود دانلود کنید
رابط مورد نظر را انتخاب کنید و روی دکمه 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) باید از نام نمایشی "Anonymous" استفاده کند، به عنوان مثال، From: "Anonymous"[ایمیل محافظت شده]>.
به:
To - این سربرگ گیرنده درخواست را نشان می دهد. این می تواند گیرنده نهایی تماس یا پیوند میانی باشد. به طور معمول هدر حاوی SIP URI است، اما طرحهای دیگری نیز ممکن است (به RFC 2806 [9] مراجعه کنید). با این حال، URI های SIP باید در همه پیاده سازی های پروتکل SIP، صرف نظر از سازنده سخت افزار، پشتیبانی شوند. هدر To همچنین می تواند شامل یک نام نمایشی باشد، به عنوان مثال، به: "نام نام خانوادگی"[ایمیل محافظت شده]>)
معمولاً فیلد 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