(Network Address Translation) NAT چیست؟ و چگونه کار میکند
برای دسترسی به اینترنت به یک آدرس IP عمومی (Public IP) نیاز است، اما می توانیم از یک آدرس IP خصوصی (Private IP) در شبکه داخلی خود استفاده کنیم. ایده NAT این است که به چندین دستگاه اجازه دهد از طریق یک آدرس عمومی واحد به اینترنت دسترسی پیدا کنند. برای دستیابی به این هدف، ترجمه آدرس IP خصوصی به یک آدرس IP عمومی لازم است. ترجمه آدرس شبکه (NAT) فرایندی است که در آن یک یا چند آدرس IP محلی به یک یا چند آدرس IP جهانی و بالعکس جهت دسترسی به اینترنت به میزبانهای محلی ترجمه می شود. همچنین NAT، ترجمه شماره پورت را انجام می دهد، یعنی شماره پورت میزبان را با شماره پورت دیگری، در بسته ای که به مقصد منتقل می شود، ماسک می زند. سپس ورودی های مربوط به آدرس IP و شماره پورت را در جدول NAT قرار می دهد. به طور کلی NAT روی روتر یا فایروال انجام می شود.
NAT (Network Address Translation) چگونه کار می کند؟
به طور کلی، روتر مرزی border router یا فایروال لبه شبکه برای ترجمه آدرس NAT استفاده میشود و لازم است که این تجهیز دارای یک اینترفیس در شبکه محلی (داخل) و یک رابط در شبکه جهانی (خارج) باشد. هنگامی که یک بسته می خواهد از شبکه داخلی خارج شود، آنگاه NAT، آن آدرس IP محلی (خصوصی) را به یک آدرس IP جهانی (عمومی) تبدیل می کند. هنگامی که یک بسته وارد شبکه محلی می شود، آدرس IP جهانی (عمومی) به یک آدرس IP محلی (خصوصی) تبدیل می شود.
چرا شماره پورت را در ترجمه آدرس NAT تغییر می دهیم؟
فرض کنید در یک شبکه دو سیستم A و B وجود دارند. حال، هر دو درخواست خود را روی یک پورت یکسان به یک مقصد ارسال می کنند، به عنوان مثال پورت ۴۴۳ در سمت مقصد. اگر NAT تنها ترجمهی آدرس های IP را انجام دهد، هر دو آدرس IP آنها توسط یک آدرس IP پابلیک شبکه پوشانده شده و به مقصد ارسال می شوند. مقصد پاسخهایی را به آدرس IP پابلیک روتر ارسال می کند. بنابراین، با دریافت پاسخ، برای NAT مشخص نخواهد بود که پاسخ به کدام سیستم تعلق دارد (زیرا شماره پورت برای A و B یکسان است). در این راستا برای جلوگیری از بروز چنین مشکلی NAT از شماره پورتهای متفاوت استفاده می کند.
ترجمه آدرسهای داخلی و خارجی
آدرسهای داخلی (Private IP) به آدرسهایی اشاره دارد که برای استفاده در اینترنت باید ترجمه شوند. آدرسهای خارجی (Public Address) به آدرسهایی گفته می شود که در کنترل یک سازمان نیست.
انواع آدرسها:
Inside local address: یک آدرس IP که به یک میزبان در شبکه داخلی اختصاص داده می شود. این آدرس توسط ارائه دهنده خدمات ISP شناخته شده و معتبر نیست، اینها آدرس IP های خصوصی هستند. این آدرس داخلی است و از شبکه داخلی دیده می شود.
Inside global address: آدرس IP ای که نمایانگر یک یا چند آدرس IP محلی در جهان خارج است. این آدرس میزبان داخلی است که از شبکه خارجی مشاهده می شود.
Outside local address: این آدرس IP واقعی میزبان مقصد در شبکه محلی پس از ترجمه است.
Outside global address: آدرس جهانی خارج، این میزبان بیرونی است که از شبکه خارج دیده می شود. این آدرس IP میزبان مقصد خارجی قبل از ترجمه است.
انواع NAT:
Static NAT:
در این نوع NAT، یک آدرس IP داخلی با آدرس IP خارجی به صورت یک به یک بین آدرس محلی و جهانی ترجمه می شود. این به طور کلی برای میزبانی سرورها استفاده می شود. این موارد در سازمانها مورد استفاده قرار نمی گیرد زیرا دستگاههای زیادی وجود دارند که به دسترسی به اینترنت نیاز دارند و برای دسترسی به اینترنت، به آدرس IP عمومی نیاز دارند.
در این نوع ترجمه آدرس اگر ۳۰۰۰ دستگاه نیاز به دسترسی به اینترنت داشته باشد، این سازمان مجبور است ۳۰۰۰ آدرس عمومی خریداری کند که بسیار هزینه بر است.
Dynamic NAT:
در این نوع NAT، یک آدرس IP داخلی نشده از یک مجموعه آدرس IP عمومی به یک آدرس IP ثبت شده (Public) ترجمه می شود. اگر آدرس IP استخر آزاد نباشد ، بسته حذف می شود زیرا فقط یک شماره مشخص از آدرس IP خصوصی به آدرس های عمومی قابل ترجمه است.
فرض کنید اگر ۲ استخر pool آدرس IP عمومی وجود داشته باشد ، فقط ۲ آدرس IP خصوصی در یک زمان معین قابل ترجمه هستند. اگر ۳ آدرس IP خصوصی می خواهد به اینترنت دسترسی پیدا کند، بسته سوم از بین می رود، بنابراین بسیاری از آدرس های IP خصوصی به مجموعه ای از آدرس های IP عمومی ترجمه می شوند. هنگام استفاده از تعداد کاربرانی که مایل به دسترسی به اینترنت هستند، از NAT استفاده می شود. این همچنین بسیار پرهزینه است زیرا سازمان مجبور است بسیاری از آدرس های جهانی IP را برای ایجاد استخر IP خریداری کند.
Port Address Translation (PAT):
PAT به عنوان NAT Overload نیز شناخته می شود. در این نوع NAT، بسیاری از آدرسهای IP داخلی را می توان به یک آدرس IP خارجی ترجمه کرد. از شمارههای پورت برای تشخیص ترافیک استفاده می شود، یعنی اینکه ترافیک به کدام آدرس IP تعلق دارد. این نوع NAT بیشتر استفاده می شود زیرا مقرون به صرفه است زیرا هزاران کاربر می توانند با استفاده از تنها یک آدرس IP خارجی به اینترنت متصل شوند.
مزایای NAT:
- NAT در استفاده از IP های خارجی صرفه جویی می کند چون آدرسهای IPv4 به پایان رسیده است.
- امنیت بیشتر را جهت شبکه داخلی شما فراهم می کند زیرا آدرس IP دستگاهها در هنگام ارسال و دریافت ترافیک، پنهان خواهد ماند
معایب NAT:
- ترجمه باعث تاخیر می شود.
- در هنگام فعال شدن NAT، برخی از برنامهها عملکرد درست را ندارند.
- استفاده از پروتکل های تانل مانند IPsec را پیچیده می کند.
امیدوارم که از خواندن این مقاله لذت برده باشید. سوالات و نظراتتون رو در پایین همین پست با ما به اشتراک بزارید.
دیدگاهتان را بنویسید
برای نوشتن دیدگاه باید وارد بشوید.