چرا SIP Trunk در ایزابل رجیستر نمی شود؟ راهنمای جامع عیب یابی، دستورات لینوکس و میکروتیک
پاسخ مستقیم و چکیده فنی: علت اصلی رجیستر نشدن SIP Trunk در سیستم تلفنی ایزابل (Issabel) یا استریسک (Asterisk)، بروز اشکال در یکی از پنج لایه اصلی ارتباطی است: ۱) عدم مسیریابی (Routing) استاتیک در سطح سیستم عامل یا روتر به سمت آدرس سوییچ کنترل کننده مرزی یا همان SBC مخابرات، ۲) پیکربندی نادرست پارامترهای NAT و عدم انطباق آدرس IP پابلیک در تنظیمات استریسک، ۳) مسدود بودن پورت سیگنالینگ 5060 پروتکل UDP در فایروال محلی سرور یا فایروال شبکه، ۴) فعال بودن ماژول مخرب SIP ALG یا Service Port در تجهیزات مسیریاب، و ۵) استفاده اشتباه از فیلد Register String برای ترانک های مخابراتی مبتنی بر IP بدون پسورد، یا وجود مغایرت در مقادیر احراز هویت ترانک شرکت های FCP. اجرای استاندارد پروژه ها بر مبنای خدمات نصب و راه اندازی تلفن VoIP تضمین کننده پایداری و رفع قطعی این ساختارها است.
مبانی معماری SIP Trunk و تفکیک انواع ترانک در ایران
پروتکل استاندارد آغاز نشست (SIP برگرفته از Session Initiation Protocol) بر اساس استاندارد RFC 3261 چارچوب اصلی سیگنالینگ مکالمات تلفنی در بستر شبکه IP را شکل می دهد. برای شناسایی ریشه عدم اتصال، ابتدا باید مدل فنی ترانک ارائهدهنده را تفکیک نمود:
۱. ترانک های مبتنی بر احراز هویت بر اساس آدرس IP (بدون نیاز به Registration)
اکثر خطوط ۳۰ کاناله سیپ ترانک سازمانی مخابرات که بر روی بستر زوج سیم مسی با مودم های دیتای G.SHDSL (مانند Tainet یا Zhone) یا فیبر نوری اختصاصی تحویل داده می شوند، از نوع احراز هویت با IP هستند. در این مدل، مخابرات ارتباط را با سه پارامتر تحویل می دهد:
- آدرس آی پی اختصاصی مشترک (Point-to-Point IP Address)
- آدرس گیت وی مخابرات (Default Gateway)
- آدرس سرور کنترل کننده تماس مخابرات (SBC IP که معمولا در رنج های 10.152.X.X یا 10.153.X.X قرار دارد)
در این نوع خطوط، هیچ گونه نیازی به ارسال پکت REGISTER از سمت مرکز تلفن نیست و ارتباط صرفا با ارسال پکت های SIP INVITE بر مبنای IP مجاز برقرار می گردد. بنابراین در ایزابل فیلد Register String باید کاملا خالی باشد.
۲. ترانک های مبتنی بر احراز هویت کاربری (Account-Based Registration)
خطوط ارائه شده توسط شرکت های FCP (شاتل، آسیاتک، پیشگامان، رسپینا، صبانت، فناپ و ...) یا سرویس های سیپ فون مخابرات (SIP User)، مستلزم ارسال پکت REGISTER به همراه Username و Password به سمت سرور ریجسترار اپراتور هستند. در این مدل، تنظیم دقیق فیلد Register String و تطابق fromuser و secret الزامی است.
روش اول: اتصال مستقیم دو کارته سرور ایزابل و تنظیمات لینوکس
در سناریوهایی که سرور ایزابل مستقیما به مودم مخابرات متصل می شود، معمولا سرور دارای دو کارت شبکه فیزیکی است. کارت شبکه اول (eth0) به شبکه داخلی LAN و کارت شبکه دوم (eth1) به مودم مخابرات اختصاص می یابد.
پیکربندی کارت های شبکه در لینوکس (CentOS / Issabel):
فایل تنظیمات اینترفیس متصل به مودم مخابرات نباید دارای مقدار GATEWAY باشد، زیرا لینوکس فقط یک Default Gateway پیش فرض را در سطح سیستم می پذیرد. تنظیمات کارت ها به شکل زیر انجام می شود:
DEVICE=eth1
BOOTPROTO=static
ONBOOT=yes
IPADDR=10.191.22.122
NETMASK=255.255.255.252
# توجه: خط GATEWAY در این فایل حذف می شود.
# تعریف روت پایدار (Static Route) جهت هدایت ترافیک سوییچ مخابرات از اینترفیس eth1:
# فایل: /etc/sysconfig/network-scripts/route-eth1
10.152.122.120/32 via 10.191.22.121 dev eth1
سپس با دستور systemctl restart network یا service network restart سرویس شبکه را بازنشانی نمایید.
روش دوم: سناریوی حرفه ای اتصال سیپ ترانک از طریق روتر میکروتیک به ایزابل
بهترین معماری شبکه برای سازمان ها، تفکیک وظایف روتینگ و سانترال است؛ بدین معنی که روتر میکروتیک ارتباط فیزیکی با مودم مخابرات و بستر اینترنت را برقرار می سازد و سرور ایزابل به عنوان یک عضو از شبکه داخلی LAN به کار خود ادامه می دهد.
مفروضات توپولوژی شبکه:
- رنج شبکه داخلی شرکت (LAN): 192.168.1.0/24 متصل به ether2 میکروتیک (IP میکروتیک: 192.168.1.1)
- آدرس سرور ایزابل: 192.168.1.200 با Default Gateway برابر با 192.168.1.1
- اینترفیس متصل به مودم مخابرات: ether3 روتر میکروتیک (مودم در مود Bridge)
- مشخصات تحویلی مخابرات:
- IP اختصاصی مشترک (نقطه به نقطه): 10.191.22.122 با مسک 255.255.255.252 (/30)
- IP گیت وی مخابرات: 10.191.22.121
- IP سرور SBC مخابرات: 10.152.122.120
گام های پیکربندی در میکروتیک (CLI Script):
دستورات زیر را به ترتیب در ترمینال میکروتیک اجرا نمایید:
/ip address add address=10.191.22.122/30 interface=ether3 comment="Telecom_SIP_Interface"
# ۲. ایجاد استاتیک روت برای هدایت ترافیک SBC به سمت گیت وی مخابرات
/ip route add dst-address=10.152.122.120/32 gateway=10.191.22.121 comment="Route_To_TCI_SBC"
# ۳. تست پینگ از مبدا اینترفیس متصل به مخابرات برای تایید برقراری لایه ۳
/ping 10.152.122.120 src-address=10.191.22.122 count=4
# ۴. تعریف Source NAT برای ترجمه آدرس سرور ایزابل به آی پی مخابرات هنگام خروج پکت ها
/ip firewall nat add chain=srcnat action=masquerade src-address=192.168.1.200 dst-address=10.152.122.120 out-interface=ether3 comment="NAT_Issabel_To_TCI_SBC"
# ۵. تعریف Destination NAT جهت فوروارد بسته های سیگنالینگ و صوت به سرور ایزابل
/ip firewall nat add chain=dstnat action=dst-nat to-addresses=192.168.1.200 to-ports=5060 protocol=udp in-interface=ether3 dst-port=5060 comment="PortForward_SIP"
/ip firewall nat add chain=dstnat action=dst-nat to-addresses=192.168.1.200 to-ports=10000-20000 protocol=udp in-interface=ether3 dst-port=10000-20000 comment="PortForward_RTP"
هشدار مهم درباره ماژول مخرب SIP ALG: یکی از مهم ترین عوامل رجیستر نشدن خطوط یا قطع مکالمات پس از چند ثانیه، دستکاری هدر بسته های SIP توسط روتر میکروتیک است. این ماژول را با دستور زیر غیرفعال کنید:
/ip firewall service-port disable sip
نیاز به عیب یابی فوری و نصب تخصصی ترانک های سازمانی دارید؟
کارشناسان مرکز پشتیبانی انفورماتیک عصر ارتباط با بیش از ۱۵ سال تجربه در اجرای پروژه های شبکه و مراکز تلفن، آماده راه اندازی، بهینه سازی و پشتیبانی دائمی ترانک های مخابرات و خطوط ویپ برای مجموعه شما هستند.
جهت دریافت مشاوره فنی و اعزام کارشناس با ما تماس حاصل فرمایید.
نقش سیستم های سازمانی و PBXهای کلاس تجاری
در ساختارهای ارتباطی بزرگ تجاری، در کنار پلتفرم های کدباز، استفاده از سرورهای سازمانی پیشرفته نظیر راهکارهای بین المللی Avaya ثبات عملیاتی بی نظیری در مدیریت ترانک ها به ارمغان می آورد. این پلتفرم ها به دلیل پیاده سازی دقیق استانداردهای RFC 3261 و مدیریت پیشرفته بافرینگ و صف های تماس، انعطاف پذیری بسیار بالایی در مواجهه با نوسانات شبکه نشان می دهند.
تنظیمات گام به گام پارامترهای ترانک در محیط وب ایزابل
برای ساخت ترانک در ایزابل، به مسیر PBX → PBX Configuration → Trunks → Add SIP Trunk رفته و پارامترها را بر اساس نوع بستر به صورت زیر مقداردهی نمایید:
۱. تنظیمات ترانک مخابرات بر بستر IP اختصاصی (بدون User/Pass):
در این حالت تنها پر کردن بخش Outgoing Settings کفایت می کند و فیلدهای Incoming Settings و Register String باید کاملا خالی بمانند:
PEER Details:
host=10.152.122.120
type=peer
context=from-trunk
qualify=yes
insecure=port,invite
dtmfmode=rfc2833
disallow=all
allow=alaw,ulaw
directmedia=no
GAPGPTMASKTOKENs7quagf9ly8X0Xss="comment"># Register String باید کاملا سفید و خالی باشد.
۲. تنظیمات ترانک مبتنی بر رجیستری (شاتل، آسیاتک، پیشگامان و غیره):
PEER Details:
host=sip.provider.ir (یا آدرس آی پی پرووایدر)
GAPGPTMASKTOKENs7quagf9ly8X1Xame=9100XXXX
secret=YourPasswordHere
type=peer
fromuser=9100XXXX
fromdomain=sip.provider.ir
context=from-trunk
insecure=port,invite
qualify=yes
nat=force_rport,comedia
disallow=all
allow=alaw,ulaw
Register String:
9100XXXX:YourPasswordHere@sip.provider.ir/9100XXXX
دستورات ترمینال لینوکس و کنسول Asterisk CLI برای عیب یابی زنده
هنگامی که وضعیت ترانک در محیط وب به صورت قطع نمایش داده می شود، استفاده از ترمینال لینوکس و ابزارهای مانیتورینگ زنده بهترین راهکار برای شناسایی دقیق گره مشکل است.
۱. آزمون لایه های شبکه و مسیریابی از طریق SSH:
ping 10.152.122.120 -c 4
# بررسی جدول مسیریابی کرنل لینوکس سرور ایزابل
ip route show
# ردیابی مسیر گام به گام پکت ها برای اطمینان از خروج از اینترفیس صحیح
traceroute -n 10.152.122.120
# بررسی باز بودن پورت 5060 در سیستم عامل سرور
netstat -unlp | grep 5060
۲. استفاده از رابط خط فرمان استریسک (Asterisk CLI):
asterisk -rvvvvv
# بررسی جدول وضعیت ترانک های نیازمند رجیستری
Issabel*CLI> sip show registry
# بررسی وضعیت اتصال تمامی ترانک ها و داخلی ها به همراه تاخیر زمانی (Latency)
Issabel*CLI> sip show peers
# مشاهده جزییات فنی دقیق و وضعیت پارامترهای یک ترانک
Issabel*CLI> sip show peer TCI-Trunk
# فعال سازی نمایش زنده پکت های ارسالی و دریافتی پروتکل SIP
Issabel*CLI> sip set debug on
# غیرفعال کردن دیباگ بعد از اتمام بررسی
Issabel*CLI> sip set debug off
۳. شنود و مانیتورینگ حرفه ای با ابزارهای sngrep و tcpdump:
ابزار sngrep یک واسط کاربری متنی برای آنالیز لحظه ای پکت های SIP در محیط ترمینال فراهم می کند که توالی رد و بدل شدن پیام ها را به صورت فلوچارت نمایش می دهد:
yum install sngrep -y
# اجرای نرم افزار تحلیل زنده ترافیک ویپ
sngrep
# ذخیره ترافیک پورت 5060 در قالب فایل pcap جهت تحلیل در Wireshark
tcpdump -i any port 5060 -w /tmp/sip_capture.pcap
تحلیل وضعیت های خروجی کنسول استریسک (Status Analysis)
| وضعیت خروجی (Status) | دستور بررسی | علت فنی دقیق | اقدام اصلاحی و راهکار |
|---|---|---|---|
| Registered | sip show registry | ترانک با موفقیت احراز هویت شده و آماده ارسال و دریافت تماس است. | پیکربندی Inbound Routes و Outbound Routes جهت هدایت مکالمات. |
| Request Sent | sip show registry | درخواست REGISTER ارسال شده اما پاسخی از اپراتور دریافت نمی شود. | بررسی پینگ سرور مقصد، بررسی فایروال سرور، چک کردن روتینگ و باز بودن پورت 5060. |
| Auth. Sent | sip show registry | پاسخ چالش احراز هویت ارسال شده اما اپراتور تاییدیه صادر نکرده است. | بررسی رمز عبور (Secret)، بررسی الگوریتم رمزنگاری و تطابق Username. |
| Rejected | sip show registry | سرور مقصد درخواست را به دلیل عدم تطابق رد کرده است (کد 403). | بررسی نام کاربری، پسورد، پارامتر fromuser و بررسی مجاز بودن آی پی پابلیک. |
| Unreachable | sip show peers | پکت های پایش سلامت (SIP OPTIONS) تایم اوت می شوند. | تست با qualify=no یا بررسی مسدود بودن پکت های OPTIONS توسط سوییچ مخابرات. |
| OK (xx ms) | sip show peers | ارتباط ترانک برقرار است و میزان تاخیر زمانی استاندارد است. | سیستم در وضعیت پایدار و عملیاتی قرار دارد. |
جدول کدهای خطای متداول پروتکل SIP و روش برطرف سازی
| کد خطای SIP | عنوان وضعیت | ریشه مشکل در ایزابل و شبکه | راهکار قطعی برطرف سازی |
|---|---|---|---|
| 401 Unauthorized | عدم احراز هویت اولیه | پاسخ طبیعی سرور برای درخواست Digest Authentication (در صورت توقف در این مرحله، رمز اشتباه است). | اطمینان از صحت پسورد در پارامتر secret و Register String. |
| 403 Forbidden | رد دسترسی توسط پرووایدر | نام کاربری اشتباه، عدم درج fromuser یا عدم تطابق آدرس IP با لیست سفید ثبت شده در اپراتور. | تنظیم fromuser برابر با شماره خط و بررسی IP پابلیک با پشتیبانی اپراتور. |
| 404 Not Found | یافت نشدن شماره یا مقصد | شماره گیری با فرمت نادرست، اشتباه در ساختار DID یا تخصیص نیافتن شماره به ترانک در مرکز تماس. | اصلاح پیش شماره ها در Dial Patterns مسیرهای خروجی. |
| 408 Request Timeout | اتمام مهلت پاسخ دهی | مسدود بودن پکت ها در فایروال سرور یا میکروتیک، اشتباه در روتینگ یا عدم پاسخ سرور مقصد. | بررسی فایروال لینوکس، قوانین فایروال میکروتیک و تست ارتباط با traceroute. |
| 488 Not Acceptable Here | عدم تطابق در کدک های صوتی | عدم همخوانی الگوریتم فشرده سازی صدا بین سرور ایزابل و سیستم اپراتور. | تنظیم پارامترهای disallow=all و allow=alaw,ulaw در ترانک. |
| 503 Service Unavailable | عدم در دسترس بودن سرور مقصد | بار پردازشی بیش از حد سرور مقصد، داون بودن SBC اپراتور یا اختلال موقت در زیرساخت مخابرات. | پیگیری و باز کردن تیکت فنی با واحد دیتای مخابرات یا شرکت سرویس دهنده. |
رفع مشکل ارسال و دریافت صدای یک طرفه (One-Way Audio)
در صورتی که ترانک با موفقیت متصل شود اما مکالمه برقرار شده فاقد صدا بوده یا صدا به صورت یک طرفه منتقل گردد، موارد زیر را بررسی نمایید:
- باز بودن پورت های RTP: صوت از طریق پکت های RTP روی پورت های رندوم UDP جابجا می شود. حتما بازه پورت 10000 تا 20000 پروتکل UDP را در فایروال سرور ایزابل و روتر شبکه فوروارد و باز کنید.
- پیکربندی NAT در Asterisk SIP Settings: به منوی PBX → Asterisk SIP Settings رفته و مقدار
External IPرا روی آی پی پابلیک اینترنت وLocal Networksرا روی محدوده ساب نت شبکه داخلی (مانند 192.168.1.0/24) تنظیم نمایید. - تنظیم پارامتر Directmedia: جهت اطمینان از اینکه جریان صوت مستقیما از سرور ایزابل عبور کند، مقدار
directmedia=noیاcanreinvite=noرا در ترانک لحاظ نمایید.
سوالات متداول درباره عیب یابی و رجیستر نشدن SIP Trunk در ایزابل
/etc/sysconfig/network-scripts/route-ethX تعریف کنید یا مدیریت روتینگ را به روتر مرکزی (نظیر میکروتیک) بسپارید.




