جاوا اسکریپت در مرورگر شما غیرفعال است یا پشتیبانی نمی شود.

رفع مشکل تماس یک‌ طرفه VoIP

  • تاریخ نشر : فروردین 11, 1405
  • نویسنده : گراهام سنتر

رفع مشکل تماس یک‌ طرفه VoIP

وارد اتاق جلسه می‌شوید، مخاطب را صدا می‌زنید. او صدای شما را می‌شنود اما شما صدای او را نمی‌شنوید. یا برعکس. تماس برقرار است ولی یک‌طرفه. مشکل از هندزفری یا میکروفن نیست. تماس یک‌ طرفه VoIP یکی از آزاردهنده‌ترین و در عین حال قابل حل‌ترین اختلالات است. در این مقاله به سراغ ۴ دلیل فنی اصلی می‌رویم که معمولاً در آموزش‌های عمومی گفته نمی‌شود: NAT، اختلاف کدک، مسیریابی نامتقارن و مشکل DTMF. به منظور آشنایی با این مشکلات و نحوه رفع آن ها تا انتهای مطلب همراه فروشگاه گراهام‌ سنتر، ارائه دهنده خدمات تخصصی در حوزه تجهیزات مخابراتی در شهرکرد، مرکز تلفن سانترال در شهرکرد و سیستم‌های VoIP باشید.

فرق تماس یک‌ طرفه VoIP با کیفیت بد صدا

قبل از اقدام برای هر عیب‌یابی در سیستم تلفن تحت شبکه، باید بدانید با چه نوع مشکلی روبرو هستید. افت کیفیت صدا (پژواک، نویز، بریده بریده بودن) قابل تحمل است اما تماس یک‌طرفه یعنی غیرقابل استفاده.

در تماس یک‌طرفه، مشتری فکر می‌کند شما او را نادیده می‌گیرید. همکار فکر می‌کند میکروفن شما خراب است. ریشه ۸۰ درصد موارد یک‌طرفه بودن، مشکل در مسیر بازگشت صدا (RTP stream) است. VoIP از دو مسیر مجزا استفاده می‌کند: مسیر سیگنالینگ (SIP) برای برقراری و قطع تماس، و مسیر رسانه (RTP) برای حمل خود صدا. اگر مسیر RTP یک‌طرفه یا کلاً مسدود شود، تماس برقرار می‌شود اما صدا نمی‌آید. برای تشخیص سریع، از دو تلفن در یک شبکه محلی (بدون فایروال) تماس بگیرید. اگر مشکل حل شد، یعنی فایروال یا NAT مقصر است.

دلیل اول تماس یک‌ طرفه: NAT و فایروال

مهم‌ترین و شایع‌ترین علت تماس یک‌طرفه در ایران، تنظیمات غلط NAT و فایروال‌های اینترنتی است. اکثر مودم‌های خانگی و اداری به صورت پیش‌فرض پورت‌های RTP را مسدود می‌کنند.

وقتی یک تلفن VoIP پشت مودم ADSL یا فیبر است، آدرس IP خصوصی دارد (مثل ۱۹۲.۱۶۸.۱.۲). هنگام برقراری تماس، سیگنال SIP از پورت ۵۰۶۰ عبور می‌کند و NAT معمولاً آن را ترجمه می‌کند. اما پورت‌های RTP (معمولاً محدوده ۱۰۰۰۰ تا ۲۰۰۰۰) برای عبور صدا باید به صورت دستی باز شوند.

  • راه‌حل اول: فعال کردن SIP ALG در مودم (که گاهی مشکل را بدتر می‌کند).
  • راه‌حل دوم (حرفه‌ای): استفاده از STUN server برای کشف IP عمومی و باز کردن پورت خودکار.
  • راه‌حل سوم (قطعی): قرار دادن تلفن در DMZ مودم (که خطر امنیتی دارد اما مشکل را حل می‌کند). برای سازمان‌های بزرگ، استفاده از سرور TURN که کل ترافیک صوتی را از خود عبور می‌دهد، بهترین گزینه است.

دلیل دوم: اختلاف کدک بین دو طرف

کدک، فرمت فشرده‌سازی صدا است. اگر تلفن شما با کدکی تنظیم شود که سرور یا تلفن طرف مقابل آن را نمی‌فهمد، نتیجه تماس یک‌ طرفه یا بی‌صدا خواهد بود.

فرض کنید تلفن شما با کدک G.722 (HD Voice) تنظیم شده اما سرور VoIP طرف مقابل فقط G.711 و G.729 را قبول دارد. در حالت ایده‌ال، دو طرف مذاکره می‌کنند و روی یک کدک مشترک توافق می‌کنند. اما گاهی نرم‌افزار این مذاکره را به درستی انجام نمی‌دهد. در تنظیمات پیشرفته تلفن، لیست کدک‌ها به ترتیب اولویت وجود دارد. اگر G.729 را در اولویت اول بگذارید و طرف مقابل آن را پشتیبانی نکند، سیستم به سراغ گزینه بعدی می‌رود.

  • راه‌حل: در هر دو طرف (و سرور میانی)، لیست یکسانی از کدک‌ها با ترتیب مشابه تنظیم کنید. حتماً G.711 را به عنوان آخرین گزینه (failover) نگه دارید چون همه دستگاه‌ها آن را پشتیبانی می‌کنند. برای تست، به طور موقت همه کدک‌ها به جز G.711 را غیرفعال کنید.
رفع مشکل تماس یک‌ طرفه VoIP

دلیل سوم: مسیریابی نامتقارن (Asymmetric Routing)

این مشکل بیشتر در شبکه‌های بزرگ سازمانی و دیتاسنترها دیده می‌شود. تشخیص آن سخت است چون هیچ خطایی نشان نمی‌دهد.

در مسیریابی نامتقارن، بسته صوتی از مسیر A به B ارسال می‌شود ولی بسته بازگشت از مسیری دیگر برمی‌گردد. فرض کنید بسته از اینترنت شما به سمت سرور می‌رود اما در مسیر برگشت، فایروال دیگری وجود دارد که وضعیت مکالمه را تشخیص نمی‌دهد (stateful inspection ضعیف). آن فایروال بسته‌ها را دور می‌اندازد.

  • نتیجه: شما صدای طرف مقابل را می‌شنوید اما او صدای شما را نمی‌شنود. راه‌حل: با تیم شبکه هماهنگ کنید تا مسیر رفت و برگشت بسته‌های RTP را یکسان (symmetric) کنند.
  • ساده‌ترین راه: استفاده از یک VPN بین دو طرف که بسته‌ها را مجبور به عبور از مسیر یکسان می‌کند. برای تست، از دستور traceroute در هر دو جهت استفاده کنید.

دلیل چهارم: مشکل DTMF (ارسال اعداد صوتی)

تصور کنید با یک مرکز تلفن گویا تماس می‌گیرید. منو می‌گوید «برای فروش ۱ را فشار دهید». شما ۱ را می‌فشارید اما هیچ اتفاقی نمی‌افتد. این هم یک نوع خاص از تماس یک‌طرفه است.

دو روش ارسال DTMF (صدای اعداد) در VoIP وجود دارد: درون مسیر صوتی (in-band) و خارج از مسیر صوتی (RFC 2833). اگر تلفن شما با روش اول ارسال کند اما سرور مقصد منتظر روش دوم باشد، عدد شما هرگز به مقصد نمی‌رسد. علائم: شما منو می‌شنوید اما با فشردن اعداد، اتفاقی نمی‌افتد.

  • راه‌حل: در تنظیمات تلفن VoIP یا اپلیکیشن softphone، روش ارسال DTMF را روی RFC 2833 (یا Auto) قرار دهید. گزینه in-band را غیرفعال کنید. برای تست، با یک شماره خدمات بانکی تماس بگیرید و سعی کنید منو را طی کنید.
جمع بندی

تماس یک‌ طرفه در VoIP تقریباً همیشه با اصلاح تنظیمات حل می‌شود و نیازی به تعویض سخت‌افزار نیست. ترتیب عیب‌یابی: اول فایروال و NAT را چک کنید (۹۰٪ موارد)، بعد کدک‌ها را یکسان کنید (۷٪ موارد)، سپس سراغ مسیریابی نامتقارن و DTMF بروید. اگر مشکل باقی ماند، از یک نفر دوست بخواهید با شما در یک شبکه محلی تماس بگیرد تا نقش اینترنت را حذف کنید.

وب سایت گراهام سنتر، یکی از مراج معتبری است، که به راه‌اندازی VoIP در شهرکرد یا استفاده از تجهیزات ویپ (VOIP) در شهرکرد اهمیت زیادی می دهد.