یکی از ابزارهای قدرتمند برای تحلیل تماسهای VoIP و پروتکل SIP در محیط لینوکس، برنامهی sngrep است. این ابزار در محیط ترمینال سرورهای Asterisk و Issabel اجرا میشود و برخلاف خروجیهای ساده Asterisk، اطلاعات تماسها را بهصورت گرافی و قابل تحلیل نمایش میدهد.
چرا از Sngrep استفاده کنیم؟
فرمانهای داخلی Asterisk مانند:
asterisk -rvvvvv
sip set debug on
میتوانند اطلاعات بستههای SIP را نمایش دهند، اما در تماسهای سنگین یا پرترافیک، خروجی آنها بسیار شلوغ و غیرقابل مدیریت است.
در اینجا sngrep میدرخشد:
✅ نمایش بصری تماسها
✅ نمایش وضعیت INVITE، ۱۰۰ Trying، ۱۸۰ Ringing، ۲۰۰ OK، BYE و…
✅ مشاهده تماسهای لایو یا از روی فایل pcap
✅ نصب ساده روی Rocky 8
نصب Sngrep در Rocky Linux 8
نصب sngrep بهصورت دستی از سورس پیشنهاد میشود، مخصوصاً اگر مخازن EPEL در محیط شما غیرفعال است:
مراحل نصب:
sudo dnf install git ncurses-devel libpcap-devel -y
سپس:
git clone https://github.com/irontec/sngrep.git
cd sngrep
./bootstrap.sh
./configure
make
sudo make install
اگر
dnf
در سیستم شما نصب نبود، با دستورyum
هم قابل اجراست. اما در Rocky 8 پیشنهاد استفاده ازdnf
است.
مشاهده تماسهای لایو SIP
برای مشاهده زنده تماسهای پروتکل SIP از روی کارت شبکه (مثلاً eth0) و ذخیره در فایل pcap:
sngrep -d eth0 -O save.pcap port 5060 and udp
میتوانید با کلیدهای جهتنما تماس مورد نظر را انتخاب کرده و جزئیات آن را ببینید.
نمایش تماس از فایل pcap
اگر فایل pcap از قبل دارید (مثلاً با tcpdump ذخیره کردید):
sngrep -I file.pcap host 192.168.1.1 and port 5060
این فرمان بستههای SIP بین سرور و IP موردنظر را تحلیل و نمایش میدهد.
لینک رسمی برنامه
مستندات کامل و بهروز این ابزار را میتوانید در GitHub رسمی آن مطالعه کنید:
🔗 https://github.com/irontec/sngrep
نتیجهگیری
Sngrep یکی از بهترین ابزارهای تحلیل تماس برای مدیران سیستمهای تلفنی است. اگر روی سرور Asterisk + Issabel + Rocky 8 فعالیت میکنید، این ابزار میتواند در دیباگ تماسها، بررسی مشکل رجیستر SIP، بررسی کدهای پاسخ و… بسیار مؤثر باشد.