Static NAT


این نوع NAT به صورت یک به یک عمل میکند. بدین معنی که یک عدد inside-localرا به یک outside-global ترجمه می کند. کاربرد این نوع NAT وقتی است که میخواهیم یک private ip را به یک public ip تبدیل کنیم.

به عنوان مثال یک روتر سیسکو داریم که 2 عدد اینترفیس دارد. یکی سریال که به اینترنت متصل و دومی اترنت که به شبکه داخلی ما وصل شده است.


ما میخواهیم آدرس 10.1.1.1را به 11.11.11.254ترجمه کنیم.

بر روی روتر سیسکو چنین عمل میکنیم:

 
وارد محیط کانفیگ میشویم

config terminal

با این دستور یک NAT استاتیک انجام میدهیم

ip nat inside source static 10.1.1.1 11.11.11.254

وارد اینترفیس سریال میشویم

interface serial0

این اینترفیس را به عنوان خروجی NAT مشخص میکنیم

ip nat outside

از اینترفیس خارج می شویم

exit

وارد اینترفیس اترنت میشویم

interface Ethernet0

اینترفیس را به عنوان ورودی NAT مشخص میکنیم

ip nat inside

از اینترفیس و مد کانفیگ خارج میشویم

هم اکنون با ست کردن آدرس 10.1.1.1و گیت وی 10.10.10.10روی کلاینت میتوانیم به اینترنت دسترسی داشته باشیم.

Dynamic NAT


Dynamic NAT نیز همانند Static NAT است اما با این تفاوت که در NAT به صورت Dynamic میتوانیم یک یا چندین IP با به چندین IP ترجمه کنیم.


اما چرا چندین IP به چندین IP؟

فرض کنید شما Admin یک ISP هستید و به دلیل کمبود IP نیاز به NAT دارید. بر فرض مثال شما دارای 10 Valid IP و 100 Invalid IP که باید به آنها ترجمه کنید. ممکن است تا کنون برای شما پیش آمده باشد که یوزری تماس گرفته و اعلام نا رضایتی کند از اینکه مدتهای طولانی برای دانلود یک فایل از سایت Rapidshare.com باید انتظار بکشد. این به دلیل این است که سایت Rapidshare.com تمامی یوزرهای شما را به چشم یک کاربر میبیند. برای رفع این مشکل میتوانیم 10 آدرس معتبر را به 100 آدرس غیر معتبر ترجمه کنیم که تا حدود زیادی مشکل را حل خواهد کرد.

در Dynamic NAT معمولا آدرسهای معتبر را به وسیله IP nat pool مشخص و آدرسهای غیر معتبر را توسط یک access-list مشخص میکنیم. دلیل استفاده از access-list ایجاد امنیت بیشتر است.


حال با یک مثال به نحوه ایجاد یک Dynamic NAT واقف می شویم:

یک روتر سیسکو داریم که از یک سو توسط اینترفیس سریال به اینترنت متصل گردیده که دارای رنج IP 217.219.109.128/25 و از سوی دیگر توسط اینترفیس اترنت به شبکه داخلی با رنج 172.16.0.0/24 متصل شده است.
آدرس اینترفیس سریال را 217.219.109.129 و آدرس اینترفیس اترنت را 172.16.0.1 قرار میدهیم.

config terminal

ابتدا برای آدرسهای Valid خود یک Pool تهیه می کنیم

ip nat pool pool1 217.219.109.130 217.219.109.254 prefix-length 25

Prefix-length در مثال بالا همان subnet mask آدرسهای ما می باشد

حال access-list مربوط به آدرسهای داخلی را می نویسیم

access-list 8 permit 172.16.0.0 0.0.0.255

دستور اصلی NAT را می نویسیم

ip nat inside source list 8 pool pool1

که در دستور فوق عدد 8 بیانگر آدرسهای داخلی و pool1 مشخص کننده آدرسهای خارجیست

interface serial0

اینترفیس را به عنوان خروجی NAT مشخص میکنیم

ip nat outside

از اینترفیس خارج می شویم

exit

وارد اینترفیس اترنت میشویم

interface ethernet0

اینترفیس را به عنوان ورودی NAT معرفی میکنیم

ip nat inside