دنیای امروز ما به اینترنت و استفاده از آن بسیار وابسته شده است. وقتی میخواهید با خواهر خود که آن سر دنیاست صحبت کنید و او را ببینید، به سراغ اینترنت و چت ویدیویی میروید، یا مثلا هفته آینده در مورد موضوعی ارائه مطلب دارید، باز هم به سراغ اینترنت و جستوجو در آن میروید تا مطالب مرتبط را پیدا کنید. حالا تصور کنید اکنون همان هفته آینده است و تمام کارهای لازم را برای آن ارائه مطلب انجام دادهاید. با زمانبندی دقیق صبح بیدار میشوید، سر فرصت صبحانه میخورید، لباس مناسب برای ارائه مطلب و تاثیرگذاری بیشتر میپوشید و راهی محل ارائه مطلب خود میشوید؛ مثلا دانشگاه یا محل کار. پشت چراغ قرمز هستید و فقط یک چهارراه مانده تا به محل مورد نظر برسید. درست همانجاست که ناگهان یادتان میافتد فایلهای PowerPoint را در رایانه رومیزی خود در خانه جا گذاشتهاید، بدون این فایلها هم به هیچ وجه نمیتوانید ارائه مطلب را انجام دهید. در اینجا دو حالت مختلف ممکن است رخ دهد. این دو حالت نیز به میزان اطلاعات شما و کارهایی که در گذشته انجام دادهاید بستگی دارد. میپرسید چگونه؟ در حالت اول به نظر میرسد که تنها راه دسترسی به فایلها این است که به خانه برگردید و فایلها را بردارید. در این صورت دیر به ارائه مطلب خود میرسید و به احتمال زیاد آن را از دست خواهید داد اما حالت دوم این است که شما با پیکربندی شبکه خانگی برای دسترسی از راه دور آشنا باشید و این شبکه را طوری تنظیم کرده باشید که بتوانید از هر جا و از طریق اینترنت به این شبکه و تمامی عناصر داخلی آن دسترسی پیدا کنید. با خیال راحت به محل ارائه میروید، لپتاپ را روشن میکنید، به شبکه خانگی خود وصل میشوید و فایلها را از طریق اینترنت به لپتاپ انتقال میدهید.
این تنها یک نمونه برای استفاده از قابلیت دسترسی از راه دور به شبکه محلی بود. شما هم میتوانید اتفاقهایی را به یاد آورید که اگر دسترسی از راه دور به رایانه خود داشتید، آن مشکل برایتان پیش نمیآمد. در این پست و پست آینده با هم راه حلی را مرور میکنیم که با انجام آن روی روتر/مودم قابلیت دسترسی از راه دور ممکن میشود.
احتمالا میدانید برنامههایی برای دسترسی از راه دور از یک رایانه به رایانه دیگر وجود دارد، مثلا ابزار Remote Desktop Connection ویندوز یکی از همین نرمافزارهاست اما مشکل این نرمافزار این است که رایانه مورد نظر برای اتصال باید یک آیپی منحصربهفرد داشته باشد که به صورت معمول اینطور نیست، به خصوص برای اینترنت ایران و سیستم آیپیدهی پویا (Dynamic IP).
البته برنامههای دیگری مانند TeamViewr و Hamachi وجود دارد که از طریق راهکارهایی ارتباط راه دور رایانهها را ممکن میسازد اما مشکل این راه حل نیز این است که در هر دو یا چند کامپیوتر حتما باید این برنامه نصب باشد و به اینترنت وصل شده باشد ولی راه حل معرفیشده توسط ما باعث میشود روتر/مودم شما به عنوان یک عنصر منحصربهفرد و با نام مشخص در اینترنت حضور پیدا کند و به راحتی و از هر نقطهای قابل شناسایی و دسترسی باشد. در واقع امکان دسترسی نه تنها به یک یا چند رایانه منحصربهفرد، بلکه به کل شبکه خانگی یا اداری ممکن میشود.
قبل از شروع کار باید به نکتهای که در قبلا در موردش صحبت کردیم اشاره کنیم؛ همان مثال برق شهری و خانگی و شباهتش به اینترنت و شبکه محلی شما. در داخل شبکه خانگی یا اداری یک آدرسدهی آیپی به صورت محلی صورت میگیرد که هر عنصر در شبکه با آیپی محلی شناخته شود. این آیپیها هیچ معنا و ارتباطی در شبکه اینترنت ندارند. در واقع مودم/روتر یک آیپی در شبکه اینترنت دارد و اطلاعات را از طریق سرویس Port Forwarding به عنصر مورد نظر در داخل شبکه محلی شما ارسال میکند. مثلا لپتاپ با آیپی محلی ۱۹۲.۱۶۸.۰.۳ وجود دارد و درخواست بارگذاری یک صفحه وب را ارسال میکند. این درخواست به مودم/روتر میرسد و حالا درخواست شما با آیپی منحصربهفرد مودم که مثلا ۱۰.۶۹.۱۶۴.۷ است در اینترنت حضور پیدا میکند و با مسیریابیای که انجام میشود به سروری که آن صفحه وب در آن قرار دارد میرسد. صفحه وب درخواستشده دوباره از طریق مسیریابی به آیپی ۱۰.۶۹.۱۶۴.۷ که آیپی شما در اینترنت است، بازگردانده میشود و به مودم/روتر میرسد. حالا سرویس Port Forwarding میداند که این درخواست صفحه وب از ابزاری با آیپی محلی ۱۹۲.۱۶۸.۰.۳ انجام شده است، بنابراین اطلاعات صفحه وب را به همان دستگاه ارسال میکند و صفحه را مثلا به گوشی شما با آیپی ۱۹۲.۱۶۸.۰.۲ نمیفرستد.
حالا از همین سرویس Port Forwarding برای تعیین میزان دسترسی به شبکه محلی استفاده خواهیم کرد. نکته قابل توجه این است که کدام پورت (Port) برای کدام پروتکل است. مثلا اگر بخواهید از رایانه محلی خود به عنوان میزبان یک سایت استفاده کنید، باید پورت ۸۰ که برای پروتکل HTTP است یا پورت ۲۲ را برای دسترسی از طریق SSH فعال کنید. سایت PortForward.com با ارائه لیستی کامل از سرویسهای مختلف و پورت استاندارد مربوطه، شما را در این زمینه کمک میکند. با این لیست متوجه میشوید برای دسترسی از راه دور و استفاده از سرویسهای مورد نظر باید کدام پورت را باز کنید.
در مورد بخش Port Forwarding در مطالب گذشته کمی صحبت کردیم. برای دسترسی به این بخش در روتر خود ابتدا باید وارد صفحه مدیریت شوید و در بخشی به نام Port Forwarding، Virtual Servers یا NAT & QoS میتوانید به Port Forwarding و تنظیمات آن دسترسی پیدا کنید. جدولی مشابه تصویر زیر:
این جدول استاندارد بوده و در روترها و فرمویرهای مختلف دارای ستونهای مشابهی است. نام ستونها و توضیح هر کدام به شرح زیر است:
Application: نام ابزار یا سرویسی است که پورتی را برای آن Forward میکنید. در واقع این فیلد بیشتر برای توضیح نام سرویسی است که عملیات انتقال پورت (Port Forward) برای آن انجام میدهید. بیشتر هم جنبه یادآوری دارد؛ مثلا انتقال پورت برای SSH. همانطور که اشاره کردیم این فیلد برای توضیح بیشتر است بنابراین برای مثال علاوه بر نام سرویس میتوانید نام رایانهای را که این انتقال پورت برای آن انجام میشود نیز وارد کنید. برای نمونه و همانطور که در تصویر قبل میبینید، سرویس VNC هم برای سیستمی با نام Grey و هم برای رایانه Hunter انتقال پورت پیدا کرده است.
Port to: شماره پورت سرویس مورد نظر در داخل شبکه محلی شماست. مثلا اگر بخواهید سرویس VNC را برای رایانهای در شبکه محلی فعال کنید، شماره پورت آن ۵۹۰۰ است.
Port from: این مقدار شماره پورتی را نشان میدهد که از آیپی خارجی وارد شبکه محلی میشوید. برای نمونه تصور کنید که در شبکه محلی خود دو رایانه روشن با نام Grey و Hunter دارید و میخواهید از طریق سرویس VNC که پورت اصلی آن ۵۹۰۰ است، به یکی از این سیستمها دسترسی دور داشته باشید. درخواست شما از نقطه دیگری از دنیا با پورت ۵۹۰۰ به روتر شبکه محلی شما میرسد ولی شما در Port Forwarding روتر مقدار Port From را برای هر دو رایانه عدد ۵۹۰۰ تعریف کردهاید، در این صورت تداخل ایجاد میشود زیرا روتر نمیتواند تشخیص دهد درخواست دسترسی از پورت ۵۹۰۰ برای کدام یک از دو رایانه است. برای حل این مشکل میتوانید بدین ترتیب عمل کنید: Port to هر دو را ۵۹۰۰ تعریف کنید. یعنی دسترسی از طریق سرویس VNC انجام بگیرد اما مقدار Port From یک سیستم را شماره پورت استاندارد و دیگری را شمارهای دیگر تعریف کنید. مثلا Port From برای کامپیوتر Grey عدد ۵۹۰۰ و برای رایانه Hunter شماره ۵۹۰۱ است. بدین ترتیب هرگاه درخواست برای دسترسی از راه دور به روتر شما برسد، اگر درخواست از پورت ۵۹۰۰ باشد با همان پورت به سیستم Grey هدایت میشود و اگر درخواست با پورت ۵۹۰۱ باشد، درخواست با پورت ۵۹۰۰ به رایانه Hunter منتقل میشود. بدین شکل تداخل از بین میرود.
Protocol: از طریق یک فیلد میتوانید تعیین کنید که سرویس مورد نظر شما توسط پروتکل TCP یا UDP یا هر دو استفاده شود. بحث در مورد TCP یا UDP از حوصله این مطلب خارج است فقط این را بدانید که بیشتر سرویسها فقط روی TCP هستند و شما میتوانید حالت هر دو (Both) را برای این فیلد تعیین کنید.
IP Address: این فیلد مربوط به آدرس آیپی رایانه یا ابزاری است که شما میخواهید روی آن عملیات انتقال پورت را فعال کنید. مثلا همانطور که در شکل میبینید، آدرس آیپی کامپیوتر Grey مقدار ۱۹۲.۱۶۸.۰.۱۰۰ و آیپی کامپیوتر Hunter عدد ۱۹۲.۱۶۸.۰.۱۰۱ است. به طور معمول آیپیهای شبکه محلی قالبی به صورت *.*.192.168 یا *.*.10.0 دارند. در مطالب گذشته در مورد آدرسهای آیپی مطالبی را منتشر کردیم، در ادامه نیز توضیحات بیشتری ارائه خواهد شد.
Enable: برای هر دستور (Rule) یک دکمه Enable یا فعالسازی وجود دارد و تا زمانی که این گزینه برای آن دستور تیک نخورده باشد، این قانون فعال نمیشود. اگر برای سرویسی قانونی را تعریف کردهاید، مطمئن شوید که گزینه Enable تیک خورده باشد تا آن قانون انتقال پورت در روتر شما فعال شود.
انتقال پورت انجام دهید
تا اینجا در مورد گزینههای مربوط به قوانین انتقال پورت خواندید، حالا میتوانید روی دکمه Add کلیک کنید تا قانون انتقال پورت خود را تعریف کنید و برای این قانون باید تمامی فیلدهایی را که در بالا در موردشان صحبت کردیم پر کنید و در نهایت نیز مطمئن شوید که گزینه Enable برای آن دستور فعال باشد. مثلا میخواهید برای یکی از رایانههای داخل شبکه محلیتان با نام USER-PC و آدرس ۱۹۲.۱۶۸.۰.۲۳ سرویس FTP را فعال کنید، باید مقدار فیلد Application دستور مورد نظر خود را تعیین کنید، مقدار Port From و Port To آن را عدد ۲۱ بگذارید؛ این عدد شماره استاندارد پورت سرویس FTP است. مقدار Protocol آن را Both گذاشته و در نهایت گزینه Enable را برای آن فعال کنید.