شبکه جهانی وب یا اینترنت که از سال 1990 به عنوان سرویس ارائه خدمات در اختیار کاربران قرار گرفته است، از مجموعه پروتکل های اینترنت در خصوص برقراری ارتباطات استفاده می نماید. در صورتی که مجموعه ای به عنوان شبکه رایانه ای ایجاد گردد کامپیوتر کاربران از طریق IP Private ( آدرس محلی) خود شناسایی میشود ولی درخواست اتصال به اینترنت را توسط IP Public به ثبت می رساند. IP یک آدرس بی همتا 32 بیتی یا 2 به توان 32 میباشد که با محاسبه این عدد متوجه خواهیم شد، با توجه به گسترش دنیای اینترنت کاربران محدودیت اتصال را خواهند داشت. متخصصان جهت رفع این مورد راهکارهای متعددی همچون NAT و PAT را معرفی نموده اند.
بدلیل ارتباط این موضوع با مفاهیم دیگر ابتدا برخی اصطلاحات را بررسی می نماییم و سپس با درک بیشتر به مبحث اصلی می پردازیم.
شبکه ها را به دو دسته اصلی LAN (شبکه محلی) و WAN (شبکه بزرگ مانند اینترنت) تقسیم می نمایند، کامپیوتر هر کاربر در شبکه با آدرس IP شناخته می شود. Internet Protocol Address یا IP Address در لایه سوم TCP/IP یعنی اینترنت تشکیل می شود. Packetها هنگام ارسال همراه IP آدرس به روترها تحویل داده میشوند و باتوجه به آدرس مبداء و مقصد مسیردهی خواهند شد. در حال حاضر IPها با دو نسخه IP4 که همان آدرس دهی 32 بیتی می باشد و IP6 جهت افزایش کاربران با آدرس دهی 128 بیتی معرفی شده اند، البته استفاده از IP6 به دلیل عدم پشتیبانی برخی مسیریاب ها مقدور نمی باشد فلذا برای افزایش تعداد مسیر های دسترسی به اینترنت یا همان افزایش IP از مدل های اشتراک گذاری استفاده می گردد.
زمانی که چند رایانه قصد اتصال به اینترنت را داشته باشند و تنها یک درگاه جهت ارتباط موجود باشد نیاز است تا رایانه ای به عنوان سرور مرکزی پیکر بندی گردد، این رایانه ارتباط بین کاربران و دنیای اینترنت را عملی می نماید.
سه راهکار اصلی در این مدل وجود دارد:
1. ICS: برگرفته از کلمه Internet conection sharing به معنای اشتراک گذاری اتصال به اینترنت برای کاربران متعدد توسط یک درگاه می باشد. با پیشرفت در حوزه Network و استفاده اشتراکی منابع، ICS معرفی گردید در این روش کامپیوتر کاربری که در یک شبکه دارای اینترنت میباشد، با فعال سازی قابلیت Mini DHCP Server (ِپروتکل پیکر بندی پویا میزبان و یا DHCP) و اختصاص یک IP انفرادی به کاربران دیگر باعث دسترسی آنها به اینترنت خواهد شد. کامپیوترهای مرکزی در ICS دارای دو کارت شبکه می باشند، اولی جهت اتصال به درگاه اینترنت (مانند مودم ADSL) و دومی DHCP Server (یا ICS Sever) که امکان اتصال دستگاههای شبکه (کامپیوتر، لپ تاپ، گوشی هوشمند و...) به اینترنت را فراهم می نمایند. کلاینت متصل به ICS Server، آدرس IP بین 192.168.0.1 تا 192.168.0.254 (با Subnet برابر 255.255.255.0) را خواهد گرفت که از آن طریق به اینترنت متصل می گردد.
2. Proxy: پراکسی سرور نرم افزار می باشد که کامپیوتر مرکزی را واسط بین سرورها و یا کلاینت های مبداء و مقصد قرار می دهد. درخواست از طرف سیستم کاربر به Proxy Server ارسال شده سپس این پیغام تفسیر می شود و در دنیای وب در اختیار مقصد قرار می گیرد، در این راستا بعد از دریافت پاسخ توسط Proxy server بسته دریافتی به کلاینت مبداء باز می گردد. پراکسی جهت افزایش امنیت در ترافیک خروجی نقش forwarding Proxy Server و در ترافیک ورودی نقش Proxy Server Reverse را ایفا می نماید. با توجه به افزایش قیمت استفاده از اینترنت و محدودیت های پهنای باند این سرویس قابلیت Chaching اطلاعات را فراهم می سازد، در این حالت سایتهای بازبینی شده در حافظه جانبی قرار گرفته و هنگام درخواست مجدد به کاربر بدون اتصال به اینترنت ارائه می گردد.
3. NAT: تکنولوژی NAT ابتدا توسط شرکت cisco جهت استفاده در Routerهای همین شرکت معرفی گردید، در حال حاضر تمامی سیستم عامل ها و پلتفرم های نرم افزاری امکان پشتیبانی از آن را دارا می باشند. در این راهکار دستگاهی مانند روتر به عنوان نماینده ارتباط بین شبکه داخلی با یک IP Private و شبکه بزرگ با IP Public را برقرار می نماید. کمبود IP نیاز به تکنولوژی NAT را افزایش داده است، در ادامه مقاله به بحث اصلی در خصوص قابلیت های NAT و زیر مجموعه آن PAT می پردازیم.
Network Address Translation (برگردان نشانی شبکه یا NAT) راهکاری جهت ارسال/دریافت اطلاعات در شبکه می باشد، این روش با بازنویسی IP مبداء و همچنین Port Numberها یا شماره درگاه هایی که از TCP/IP (بسته های IP را مدیریت میکند ) سروکار دارد. IP Addressها در درون پروتکل دستکاری شده و از یک شبکه تارتانی به شبکه تارتانی دگر جفت بندی (Mapping) میگردند، در این حالت Packetها گویی از آدرسی ارسال شده و هنگام دریافت به آدرس اولیه فرستاده خواهند شد.
دسته بندی IPها در مدل NAT: عملیات NAT Routerها تبدیل آدرس های غیر معتبر (Inside Local) به آدرس های معتبر در شبکه جهانی می باشد، شرکت ISP به کاربران خود یک طیف وسیعی از آدرس های معتبر (Inside Global) را ارائه می نمایند. هنگامی که در شبکه محلی تکنولوژی NAT فعال میگردد کامپیوترهای عضو SubDomain برای ارتباطات داخلی با آدرس های Inside Local درخواست خود را به روتر NAT ارسال می نمایند. این روتر Packetها را با آدرس Inside Global به مقصد ارسال می نماید و مقصد پاسخ را با آدرس Outside Global به روتر NAT شبکه محلی خواهد داد، روتر پاسخ دریافتی را از طریق آدرس Outside Local در اختیار مبداء قرار میدهد. در این راستا در صورتی که آدرس مقصد در Routing Table وجود نداشته باشد آدرس در Translation Table ذخیره می گردد و در خواست ارتباط با شبکه عمومی Droppe می شود.
روش های پیکربندی NAT را میتوان به دسته های زیر تقسیم نمود:
1. Static NAT: شیوه های کاری به این گونه میباشد که یک IP آدرس غیر رجیستر شده به یک آدرس IP رجیستر شده تبدیل می شود، یعنی به ازای هر آدرس محلی یک آدرس مبدل وجود دارد. مزایای این روش را میتوان زمانی درک نمود که قصد داریم یک کامپیوتر در خارج از شبکه داخلی قابلیت دسترسی را داشته باشد.
2. Dynamic NAT: با توجه به نام این روش آدرس IP داخلی کاملاً پویا به رنج IPهای معتبر تبدیل می گردد، البته گروه IPهای رجیستر شده از قبل جهت استفاده تعریف می گردند.
3. Overlapping: در یک شبکه داخلی هنگام برقراری ارتباط با شبکه های دیگر نیاز به IPهای رجیستر شده وجود دارد، روتر جدولی از این آدرس ها را در خود ذخیره نموده است که در صورت درخواست کامپیوتری جهت ارتباطات خارجی یکی از این IPها را ارئه می نماید. در این روش میتوان از قابلیت Static NAT و یا تلفیق DNS و Dynamic NAT استفاده نمود.
4. Overloading: نمونه ای از روش Dynamic NAT میباشدکه به نام PAT نیز معرفی می گردد. در این حالت چندین IP ثبت نشده به یک آدرس رجیستر شده تبدیل می گردند، البته جهت عدم بروز مشکل به هر کدام از آدرس ها port اختصاص داده خواهد شد. برای مثال آدرسهای 192.168.32.10 و 192.168.32.12 داخلی به IP آدرس های 213.18.123.100:101 و 213.18.123.100:102 تبدیل می گردند.
Port Address Translation یا NAT with Overload از یک ویژگی خاص پروتکل TCP/IP استفاده می نماید که چندین IP محلی پشت یک IP ثبت شده در شبکه جهانی مخفی می گردند و با پورت ( تعداد پورت های موجود 65536 می باشد که از 4000 آن استفاده می شود) مشخص خواهند شد، هنگام دریافت پاسخ با توجه به اطلاعات موجود در روتر (چه IP آدرسی با چه شماره شماره پورتی ارتباط دارد) بسته ها به مبداء تحویل داده خواهند شد.
تشریح نحوه عملیات PAT:
1. شبکه محلی با استفاده از IP آدرس های خارج از Internet Assigned Numbers Authority (یا IANA) همان IP های غیر قابل روتینگ پیکربندی می شود.
2. مجموعه یک روتر را به عنوان NAT قرار میدهد، این روتر دارای محدوده IP آدرس های منحصر بفرد میباشد که توسط IANA در اختیار آن مجموعه قرار داده شده است.
3. کامپیوتری از این مجموعه در خواست ارتباط با شبکه خارجی را اعلام می کند.
4. روتر بسته اطلاعاتی را از کامپیوتر مبداء در داخل شبکه محلی دریافت می نماید.
5.روتر آدرس IP داخلی و پورت را در جدول ترجمه آدرس ها ذخیره می نماید، یک IP رجیستر شده انتخاب می شود و همراه همان پورت در جدولی دیگر نگهداری می گردد تا هنگام دریافت امکان مطابقت وجود داشته باشد.
6. هنگام دریافت یک بسته اطلاعاتی از مبداء توسط روتر، NAT Router آن بسته اطلاعاتی را بررسی می نماید. سپس آدرس مقصد و پورت تغییر داده شده و به کامپیوتر مبداء ارسال می گردد، طی این جستجوها درصورتی که عدم وجود کامپیوتر مبداء ( و یا نادرست بودن آدرس) ثابت گردد آن بسته اطلاعات دور انداخته خواهد شد.
7. کامپیوتر مبداء بسته اطلاعاتی تغییر یافته را دریافت می نماید، در این هنگام روتر در خواست کامپیوتر مبداء را برای مقصد مد نظر ارسال کرده و به محض دریافت پاسخ آن را به کامپیوتر داخلی تحویل خواهد داد.
با گذشت زمان تعداد کاربران افزایش یافته و نیازهای جدیدی در خصوص ارتباط با اینترنت ایجاد می گردد. موسسات و شرکتها هنگام اتصال اینترنت جهت مدیریت ارتباطات شبکه داخلی تشکیل داده و سیستمی را به عنوان نماینده جهت دسترسی به اینترنت و شبکه های بزرگ انتخاب مینمایند. با توجه به مطالبی که در این مقاله ارائه گردید، سرویس های NAT و PAT راهکارهای معروف در این رابطه می باشند.