سرویس Skype For Business یکی از محصولات رده بالا و سازمانی مایکروسافت است که از نظر امکانات، در سطح بسیار مناسبی قرار دارد و همین امر باعث شده است که راه اندازی و پیاده سازی امکانات این سرویس نیز به مراتب دشوار باشد. خوشبختانه سرویس های مایکروسافت به دلیل گستره ی استفاده آنها، همواره از نظر مستندات آموزشی فارسی در سطح مناسبی قرار دارند اما، سرویس Skype For Business یک استثنا است!
در این مقاله قصد داریم تا یکی از دغدغه های مهندسان VoIP یعنی برقراری ارتباط بین ایزو های مبتنی بر Asterisk و Skype For Business را مرتفع سازیم. در ادامه مطلب با ما همراه باشید.
یکی از امکانات سرویس Skype For Business، امکان برقراری ارتباط با شبکه های PSTN میباشد. برای برقراری این ارتباط از پلتفرم های مختلفی میتوان استفاده کرد اما محصولات مبتنی بر استریسک به دلیل محبوبیت فراوان در میان مهندسان ایرانی، سرویس منتخب در این مقاله هستند.این ارتباط در دو فاز مجزا شامل تنظیمات سمت Asterisk و تنظیمات سمت SFB میباشد که تمامی این مراحل، به تفکیک و به صورت قدم به قدم و مصور آموزش داده خواهد شد.
سرویس اسکایپ برای برقراری ارتباط با سرور های IP-PBX از دو پروتکل TCP و TLS پشتبانی میکند اما بر خلاف آن، برقراری ارتباط با سرور استریسک به صورت پیش فرض صرفاً از طریق پروتکل UDP امکان پذیر است. قدم اول برای برقراری این ارتباط، حل این مشکل است.
-
فعال سازی پروتکل TCP در Asterisk :
ابتدا در سرور لاگین میکنیم و سپس وارد بخش PBX > Asterisk File Editor میشویم و در قسمت Show Filter عبارت sip_custom را وارد میکنیم. در نتایج نمایش داده شده، فایل sip_custom.conf را باز میکنیم.
اکنون این دو خط را در این فایل اضافه میکنیم :
enabletcp=yes
transport=udp,tcp
در نهایت فایل را Save کرده و استریسک را Reload میکنیم.
تا این لحظه ما موفق شدیم تا پروتکل مورد پشتیبانی اسکایپ را فعال کنیم. اما این اتفاق ممکن است در ابتدا برای سایر ترانک های شما مشکل به وجود آورد! در صورتی که مشاهده کردید که برخی از ترانک های شما که قبلاً به درستی کار میکرد، بی هیچ دلیلی از کار افتاده اند نگران نباشید! با اضافه کردن مقدار transport=udp در محتوای Peer Details ترانکی که دچار مشکل شده است، میتوانید این مشکل را برطرف نمایید.
-
ایجاد SIP Trunk در استریسک :
مرحله بعدی ایجاد SIP Trunk میان SFB و Asterisk است. طبیعتاً بدین منظور به منوی PBX > PBX Configuration > Trunks مراجعه میکنیم و گزینه Add SIP Trunk را انتخاب میکنیم.
پس از نمایش صفحه ورود اطلاعات ترانک، ابتدا یک نام مناسب برای آن انتخاب میکنیم که نام انتخابی من Skype میباشد و آن را در بخش Trunk Name وارد میکنیم، سپس مقادیر زیر را به عنوان Peer Details به ترانک خود وارد میکنیم. لطفا این موارد را بدون کم و کاستی وارد کنید :
host=IP address of SFB
transport=tcp
port=5060
insecure=very
type=friend
context=from-internal
promiscredir=yes
canreinvite=yes
qualify=yes
بسیار خب! اکنون و پس از ذخیره تنظیمات این ترانک، به منظور اطمینان از برقرار بودن اتصال به بخش PBX > Tools > Asterisk-Cli مراجعه کرده و در کادر مربوط به دستورات، مقدار sip show peers را وارد کرده و دستور را اجرا میکنیم. در صورتی که Status این ترانک OK نبود به این مفهوم است که یا کارهای بالا را به درستی انجام نداده اید یا مشکل ارتباطی میان دو سرور وجود دارد (شبکه یا فایروال و …).
-
ایجاد Outbound Route به سمت سرور اسکایپ :
مرحله آخر از تنظیمات سمت استریسک، ایجاد یک Outbound Route به سمت سرور SFB است. در مثال زیر، ما داخلی های اسکایپ را ۴ رقمی در نظر گرفتیم که با عدد صفر شروع میشوند. لذا در بخش Dial Patern مقدار 0XXX را وارد کرده و در بخش Route Name نیز یک نام مناسب برای این Route در نظر میگیریم و در بخش Trunk Sequence for Matched Routes نیز ترانک Skype که قبلا ایجاد کردیم را انتخاب میکنیم.
قدم آخر نیز تنظیم Priority مناسب برای این Route است که در تصویر نیز با کادر زرد رنگ مشخص شده است.
اکنون کار ما در بخش استریسک به اتمام رسیده و وارد فاز دوم کار یعنی تنظیمات سمت Skype for Business میشویم.
به بخش حساس تر و پیچیده تر تنظیمات میرسیم! اما نگران نباشید، من کنار شما هستم. در این آموزش سعی شده است که تمامی مراحل قدم به قدم و مصور برای شما عزیزان آماده گردد و هیچ کلیکی از قلم نیوفتاده است!
-
فعال سازی پروتکل TCP و انتخاب پورت در سرور SFB:
در سرور Front End خود به برنامه Topology Builder مراجعه میکنیم. در بخش Mediation Server بر روی سرور خود راست کلیک کرده و Edit Properties را انتخاب میکنیم.
اکنون چک مارک Enable TCP port را فعال کرده و در تکست باکس های مربوط به TCP عدد ۵۰۶۰ را در هر دو بخش وارد کرده و OK میکنیم.
-
ایجاد Trunk به سمت سرور Asterisk :
با مراجعه به بخش Shared Components بر روی PSTN Gateway راست کلیک کرده و گزینه New IP/PSTN Gateway را انتخاب میکنیم.
در ویزارد باز شده در بخش FQDN میبایست آدرس DNS که قبلا برای سرور استرسیک خود در DNS Server ایجاد کرده ایم را وارد نموده و Next میکنیم.
در بخش Define the IP address در قسمت IPv4 گزینه Limit service usage to selected IP addresses را انتخاب کرده و در قسمت PSTN IP address آی پی مربوط به سرور استریسک خود را وارد میکنیم.
در بخش Define the root trunk در قسمت Listening port for IP/PSTN gateway و Associated Mediation Server port عدد ۵۰۶۰ را وارد کرده و در قسمت SIP Transport Protocol نیز TCP را انتخاب میکنیم.
در صورت اجرای صحیح مراحل بالا، باید خروجی کار مانند تصاویر زیر باشد :
-
تخصیص کارت شبکه مجزا و تفکیک ترافیک PSTN Network (اختیاری) :
( توضیح در این خصوص : این عمل به منظور تامین امنیت و همچنین کاهش بار ترافیکی کارت شبکه LAN سرور Front End انجام میشود. بدین منظور میبایست Subnet مربوط به Voice و SRV خود را مجزا در نظر گرفته و Port Group های هر یک را در سرور Hypervisor خود ایجاد کرده باشید و در ادامه بر روی ماشین مجازی خود دو کارت شبکه هر یک در Port Group مجزای Voice و SRV ایجاد کنید و به هر کارت، یک آی پی در سابنت مخصوص به آن قرار دهید. در مثال زیر، Subnet مربوط به Voice را ۳۸.۰/۲۴ و Subnet مربوط به SRV را ۳۵.۰/۲۴ در نظر گرفته شده و آی پی کارت شبکه LAN سرور را ۱۹۲.۱۶۸.۳۵.۱۳ و آی پی کارت شبکه Voice سرور ۱۹۲.۱۶۸.۳۸.۱۰۰ قرار داده شده است. آی پی سرور استرسیک نیز ۱۹۲.۱۶۸.۳۸.۱۱ در نظر گرفته شده است.)
اکنون به منظور انجام تنظیمات تفکیک ترافیک، بر روی Front End Server خود راست کلیک نموده و Edit Properties را انتخاب میکنیم. توجه داشته باشید که در تصویر نمونه، Topology ما به صورت Enterprise Edition پیاده سازی شده است اما حتی اگر شما به صورت Standard هم راه اندازی کرده باشید، در فرایند ما تفاوتی ندارد.
در پنجره نمایان شده، در بخش IPv4 گزینه Limit service usage to selected IP address را انتخاب کرده و در قسمت Primary IP address آی پی مربوط به LAN سرور و در قسمت PSTN IP address نیز آی پی مربوط به کارت شبکه Voice سرور را وارد کرده و در نهایت OK میکنیم.
-
ایجاد Dial Plan در سرور SFB :
به تنظیمات نسبتاً پیچیده ی بخش Voice Routing رسیدیم. قدم اول برای انجام این تنظیمات، ایجاد یک Dial Plan میباشد. در بخش Dial Plan نسبت به ایجاد Normalization Rule ها اقدام میکنیم. اگر بخواهیم این بخش را با استریسک مقایسه کنیم میتوان آن را به Dial Pattern و گزینه های Prefix و Prepend شباهت داد.
برای شروع به کنترل پنل اسکایپ مراجعه کرده و وارد بخش Voice Routing میشویم. در ادامه و در قسمت DIAL PLAN با انتخاب گزینه New اقدام به ایجاد Dial Plan در سطح Pool یا User میکنیم.
پس از انتخاب گزینه ی مورد نظر، به تنظیمات آن میپردازیم. در بخش Name و Simple Name اقدام به انتخاب نامی مناسب میکنیم. در قسمت Dial-in Conferencing Region میتوانیم به اختیار نام شهر مرتبط با Dial Plan جاری را وارد کنیم و همچنین اگر در قسمت External Access Prefix مقداری وجود داشت، آن را حذف کنیم.
در قسمت Associated Normalization Rules یک Rule پیش فرض به نام Keep All وجود دارد. این رول به صورت کلی تمامی تماس ها را شامل میشود و بدونه هیچ کم و کاستی شماره تماس را انتقال میدهد. اگر بخواهیم در خصوص تمامی قسمت های Voice Routing در اسکایپ صحبت کنیم، مطلب طولانی و پیچیده شده و از حوصله این مقاله خارج میشود. لذا به اندازه ی نیاز و در حدی که ارتباط سالم و بدون مشکل بین اسکایپ و استریسک برقرار شود، مطالب ارائه خواهند شد.
پس از اتمام موارد مشخص شده، OK میکنیم تا تنظیمات بخش بعدی را شروع کنیم.
-
ایجاد Voice Policy در سرور SFB :
اکنون وارد بخش Voice Policy میشویم. در این بخش نیز مانند مرحله قبل دو گزینه داریم. این گزینه ها شامل Site Policy و User Policy میباشند. بر اساس نیاز خود یکی از این گزینه را انتخاب میکنیم.
(توضیحی در خصوص این گزینه ها : در اصل شما با انتخاب گزینه های Pool , Site و یا User انتخاب میکنید که Policy و یا Plan شما در سطح چه Scope ای اعمال شود. اگر Site یا Pool را انتخاب کنید، Policy یا Plan شما به کل سایت یا Pool اعمال میشود و اگر User Policy و یا User Dial Plan را انتخاب کنید این امکان را دارید که به ازای هر یوزر، پالیسی مجزا با دسترسی های مجزا ایجاد کرده و به آنها اعمال کنید.)
پس از انتخاب سطح Policy، وارد تنظیمات آن میشویم.
اکنون میباست یک نام مناسب برای Policy خود انتخاب کنیم. سپس در قسمت Calling Features امکانات مدنظر خود را برای این پالیسی انتحاب میکنیم. همانطور که قبلا عرض کردم، امکان پرداختن به تمامی گزینه ها و امکانات مشاهده شده، در این مقاله وجود ندارد لذا میتوانید موارد انتخابی خود را با تصویر زیر تطبیق دهید.
سپس در قسمت Associated PSTN Usage یک PSTN Usage جدید ایجاد میکنیم.
-
ایجاد PSTN Usage در سرور SFB :
با وارد شدن به بخش ایجاد PSTN Usage ابتدا یک نام مناسب برای آن انتخاب میکنیم و سپس در بخش Associated Routes نسبت به ایجاد یک Route برای این PSTN Usage اقدام میکنیم.
-
ایجاد Voice Route در سرور SFB :
بسیار خب، اکنون بر روی گزینه New در بخش Associated Routes کلیک میکنیم. برای این قسمت نیز یک نام مناسب انتخاب میکنیم.
در ادامه در قسمت Associated trunks بر روی Add کلیک میکنیم.
در این مرحله، ترانکی که در Topology Builder ایجاد کرده بودیم را انتخاب کرده و OK میکنیم.
پس از انجام مراحل فوق، Voice Route ما کامل شده و با کلیک بر روی دکمه OK مجددا به بخش PSTN Usage هدایت میشویم.
در این قسمت نیز به منظور تکمیل تنظیمات بخش PSTN Usage بر روی OK کلیک میکنیم.
این بار به بخش Voice Policy هدایت میشویم تا با کلیک بر روی کلید OK این بخش را نیز تکمیل نماییم.
اکنون در بخش Dial Plan با استفاده از گزینه Commit و سپس Commit All کلیه تنظیماتی که تا کنون انجام داده ایم را ذخیره و تثبیت میکنیم.
-
ایجاد Trunk Configuration در سرور SFB :
به مرحله آخر میرسیم! در این مرحله نسبت به انجام تنظیمات ترانک خود اقدامات لازم را انجام میدهیم. بدین منظور، بر روی گزینه New و سپس Site Trunk و یا Pool Trunk کلیک میکنیم.
ابتدا میباست ترانکی که در Topology Builder ایجاد کرده بودیم را انتخاب کنیم.
در این قسمت در گزینه Maximum early dialogs supported عدد مورد نظر خود را وارد میکنیم تا محدوده مکالمات همزمان خود را کنترل کنیم. سپس در بخش Encrypted support level گزینه Optional را انتخاب کرده و سایر تنظیمات این بخش را نیز مانند تصویر انتخاب میکنیم.
اکنون در قسمت Associated PSTN Usage میبایست PSTN Usage که در مراحل قبل ایجاد کردیم را انتخاب کنیم.
پس از بازگشت به این بخش بر روی OK کلیک میکنیم.
در نهایت کلیه تنظیمات انجام شده را Commit All میکنیم.
بسیار عالی و کاربردی هست،
ممنون از شما