آخرین ارسال های تالار گفتمان

هیچ ارسال جدیدی برای تالار گفتمان وجود ندارد .
شهریور
21
1389

NAT در سیسکو


از كاربردهاي NAT مي توان به موارد زير اشاره كرد:

  • ترجمه IP هاي Private به Public يا بلعكس
  • تغيير مركز سرويس دهنده اينترنت بدون نياز به تغيير IP ها داخلي
  • حفاظت از يك شبكه حساس در مقابل برخي حملات خارجي
  • تغيير پورت مقصد پكتها براي كاربران داخلي به صورت transparent

تعريف برخي اصطلاحات:

  • Inside Local : به آدرسي (هايي) اطلاق ميشود كه بر روي كلاينتهاي شبكه داخلي تنظيم شده اند.
  • Inside Global : به آدرسي اطلاق ميشود كه به اينترفيس داخلي روتر كه به شبكه داخلي متصل است داده شده است.
  • Outside Local : به آدرسهايي كه درون اينترنت يا شبكه Public ما قرار دارد گفته مي شود.
  • Outside Global : به آدرسي (هايي) كه بر روي اينترفيس خارجي روتر كه به شبكه Public متصل است گفته مي شود.


با يك مثال تصويري با اصطلاحات فوق بيشتر آشنا خواهيم شد.



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





Dynamic NAT به صورت Overload

ممكن است ما به شرايطي بر بخوريم كه تنها 1 عدد آدرس Valid در اختيار داريم و اجبار به NAT كردن آدرس مذكور به چندين آدرس را داريم. در چنين شرايطي بايد از قابليت Overload استفاده كنيم.
در اين حالت روتر براي ورود و خروج هر آدرس Invalid يك پورت مجزا در نظر مي گيرد كه تمامي آنها را در جدولي كه درون خود تشكيل مي دهد به ثبت مي رساند. به اين ترتيب هر پكت كه از روتر به مقصد اينترنت خارج مي شود دقيقا در هنگام بازگشت به همان آدرس Invalid كه صادر كننده آن است باز ميگردد. هر يك خط در جدول مذكور يك كانكشن به حساب مي آيد. اگر دقت كنيد بر روي كاتالوگ بعضي سخت افزارها محدوديتي براي تعداد اين كانكشن ها قائل مي شوند.

در مثال زير نحوه تنظيم يك روتر به صورت Overload را توضيح مي دهيم :

دياگرام خود را مقداري تغيير مي دهيم. در اين مثال ما روتر خود را كه داراي 3 اينترفيس است به 3 شبكه متصل ميكنيم. پورت سريال كه به اينترنت متصل و داراي آدرس 80.191.120.8/26 است . اينترفيس ethernet0 به شبكه داخلي اول ما متصل و داراي آدرس 172.16.100.1/24 ميباشد و در آخر اينترفيس ethernet1 را داريم كه داراي آدرس 192.168.30.1/24 است.
ميخواهيم آدرس 80.191.120.8 را به دو سابنت داخلي NAT كنيم:

وارد مد كانفيگ مي شويم

config terminal

يك pool براي آدرس Valid تهيه ميكنيم كه تنها 1 آدرس در آن وجود دارد

ip nat pool ovrld 80.191.120.8 80.191.120.8 netmask 255.255.255.192

با access-list زير آدرسهاي 2 رنج داخلي خود را به access-list شماره 3 نسبت مي دهيم

access-list 3 permit 172.16.100.0 0.0.0.255
access-list 3 permit 192.168.30.0 0.0.0.255

دستور اصلي NAT را مي نويسيم كه كلمه Overload ميبايست در آخر آن اضافه شود

ip nat inside source list 3 pool ovrld overload

اينترفيس خروجي NAT را مشخص ميكنيم

interface serial0
ip nat outside
exit

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

interface ethernet0
ip nat inside
exit

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

interface ethernet1
ip nat inside
exit


هم اكنون آدرس 80.191.120.8 عمل NAT را براي هر دو سابنت ما انجام مي دهد.



Destination NAT

dstNAT يا outside source address translation بدين معني است كه ما عمل NAT را براي شبكه Public خود انجام دهيم. با يك مثال قضيه را روشن ميكنم:
فرض كنيد آدرس IP يكي از مشتركين شما  NAT شده است. يعني مشترك به صورت دستي آدرس را در كامپيوتر خود وارد كرده و default gateway را آدرس اينترفيس داخلي روتر شما قرار داره است. شما قبلا عمل NAT را براي وي انجام داده ايد و او را به اينترنت متصل نموده ايد. حال مشترك نياز دارد كه كاربري در اينترنت به كامپيوترش وصل شود يا اينكه قصد هاست كردن يك وبسايت بر روي كامپيوتر حود را دارد. با شرايط فعلي اين امر امكان پذير نيست زيرا كه آدرس معتبري ير روي آن تنظيم نشده و از اينترنت قابل رويت نيست.
ما براي رفع مشكل اين يوزر مي بايست عمل dstNAT را انجام دهيم. يعني به روتر خود بگوئيم هر گاه پكتي با درخواست اتصال به آدرس X را داشت آن را به كامپيوتري در شبكه داخلي با آدرس Y بفرست. بدين ترتيب با داشتن آن آدرس valid ميتوانيم به هاست لوكال خود دسترسي پيدا كنيم. اين امر نيز به دو صورت static و dynamic قابل اجراست كه در مثالهاي زير توضيح داده شده است.

Static dstNAT

ابتدا همانند قبل يك static nat ميان 2 آدرس 10.1.1.1 و 11.11.11.254 ايجاد ميكنيم

سپس اين خط را به تنظيمات خود اضافه ميكنيم

ip nat outside source static 11.11.11.254 10.1.1.1




Dynamic dstNAT

در اين مثال نيز ابتدا تمامي تنظيمات Dynamic NAT را كه قبلا گفته شده انجام ميدهيم سپس اين خط را به آخر آن اضافه ميكنيم

ip nat outside source list 8 pool pool1


بدين ترتيب عمل reverse را نيز براي NAT خود انجام ميدهيم.




Redirect in NAT

در بعضي مواقع نياز داريم كه يك پورت يا IP را به صورت transparent براي يوزرهاي خود عوض كنيم. به عنوان مثال ما در شبكه خود يك وب سرور داريم. اين سرور قبلا بر روي پورت 80 كار كرده است اما اكنون به دلايلي مجبور به تعويض پورت آن به 8080 شده ايم. ممكن است آگاه سازي يوزرهاي ما برايمان مشكل ساز باشد و بخواهيم بدون هيچ تغييري براي آنها اين پورت را عوض كنيم. در چنين مواقعي Redirect به كمك ما مي شتابد.
در مثال زير با چگونگي تنظيمات اين نوع NAT آشنا مي شويم:

در اين مثال ما يك روتر سيسكو داريم كه 2 اينترفيس سريال و اترنت دارد. كه آدرس سريال را 100.100.100.5 و آدرس اترنت را 10.20.30.1 قرار داده ايم.
آدرس وب سرور ما 10.20.30.55 مي باشد كه در شبكه داخلي ما قرار دارد.
براي Redirect كردن پورت 80 به 8080 بدين صورت عمل ميكنيم:

config terminal
ip nat inside source static tcp 10.20.30.55 8080 10.20.30.55 80

اينترفيس خروجي NAT را مشخص ميكنيم

interface serial0
ip nat outside
exit

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

interface ethernet0
ip nat inside
exit


حال يك سولوشن ديگر پياده ميكنيم.

در شبكه ما يك روتر وجود دارد كه داراي 3 اينترفيس است. اينترفيس سريال كه آدرس 200.200.200.43 و اينترفيس ethernet0 كه آدرس 172.16.10.1 و اينترفيس ethernet1 كه آدرس 192.168.0.1 را داراست.
ما در شبكه اي كه به اينترفيس ethernet1 متصل شده يك سرور داريم كه آدرس آن 192.168.0.6 است. به دلايلي مجبور به تعويض آدرس آن به 192.168.0.12 شده ايم. به دليل اينكه اين سرور مربوط به اتوماسيون اداري ما بوده بسيار كار دشواريست كه بر روي 176 كلاينت خود كه با اين سرور كار ميكنند و در شبكه اي كه به اينترفيس ethernet0 وصل است آدرس سرور را عوض كنيم.
براي همين به سراغ روتر قدرتمند خود مي آئيم و تمامي درخواستهايي را كه به مقصد 192.168.0.6 مي روند را به 192.168.0.12 هدايت ميكنيم.
در زير نحوه انجام اين كار توضيح داده شده است.

config terminal
ip nat inside source static 192.168.0.12 192.168.0.6

اينترفيس خروجي NAT را مشخص ميكنيم

interface serial0
ip nat outside
exit

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

interface ethernet0
ip nat inside
exit

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

interface ethernet1
ip nat inside
exit



Change Translation Timeouts

وقتي كه ما از Dynamic NAT استفاده مي كنيم يك IP به يك IP ديگر نسبت داده مي شود. فرضا اگر كلاينت ما 1 ساعت از اين IP استفاده كند تا يك مدت بعد اين IP خارجي براي وي به صورت رزرو مي ماند. اگر بعد از يك پريود زماني كلاينت ما از آن استفاده نكند به كلاينت ديگري اختصاص داده مي شود.
زمان اين تاخير را ميتوانيم مشخص كنيم كه در حالت Dynamic NAT بدون Overload اين زمان به صورت پيش فرض 24 ساعت است.

با دستور زير اين امر محقق مي شود:

config terminal
ip nat translation timeout 21600

عدد فوق بر اساس ثانيه بوده كه در مثال بالا ما اين زمان تاخير را بر روي 6 ساعت تنظيم كرده ايم.

همانطور كه گفتيم مثال بالا براي حالت Dynamic NAT بدون Overload هست. در حالت Overload چون براي هر يوزر يه آدرس خارجي نداريم مقدار اين زمان اصلا مشخص نيست.
در حالت Overload تنها ميتوانيم زمان براي پروتكلهاي خاص مشخص كنيم:

در مثال زير پروتكلها آورده شده اند:

config terminal
ip nat translation udp-timeout 120
ip nat translation dns-timeout 100
ip nat translation tcp-timeout 480
exit


مانيتور كردن NAT درون Router

show ip nat translations
show ip nat statistics

 

19 دیدگاه + فرستادن دیدگاه

  • Hello there! This is my first visit to your blog! We are a group of volunteers annd starting a new prokject in a community in the sam niche. Your blog provided us beneficial information to work on. You have done a extraordijnary job!


    سایت
  • May I just say what a comfort to uncover somebody who actually knows what they're talking about on the web. You actually know how to bring a problem to light and make it important. More people should look at this and understand this side of the story. I was surprised you're not more popular since you certainly possess the gift.


    سایت
  • Thank you for the good writeup. It in fact was a amusement account it. Look advanced to far added agreeable from you! However, how can we communicate?


    سایت
  • I'm really loving the theme/design of your web site. Do you ever run into any internet browser compatibility issues? A handful of my blog readers have complained about my blog not working correctly in Explorer but looks great in Opera. Do you have any advice to help fix this problem?


    سایت
  • Hiya! I know this is kinda off topic nevertheless I'd figured I'd ask. Would you be interested in trading links or maybe guest authoring a blog post or vice-versa? My site addresses a lot of the same subjects as yours and I feel we could greatly benefit from each other. If you happen to be interested feel free to send me an e-mail. I look forward to hearing from you! Fantastic blog by the way!


    سایت
  • I think this is among the most vital information for me. And i am glad reading your article. But want to remark on some general things, The site style is perfect, the articles is really nice : D. Good job, cheers


    سایت
  • Hey there just wanted to give you a quick heads up and let you know a few of the pictures aren't loading properly. I'm not sure why but I think its a linking issue. I've tried it in two different web browsers and both show the same results.


    سایت
  • This is really interesting, You're a very professional blogger. I have joined your rss feed and look forward to seeking more of your wonderful post. Additionally, I have shared your web site in my social networks


    سایت
  • Hey there! I've been following your web site for some time now and finally got the bravery to go ahead and give you a shout out from Lubbock Tx! Just wanted to mention keep up the good job!


    سایت
  • Hello there, You have done an incredible job. I will definitely digg it and for my part suggest to my friends. I am sure they'll be benefited from this website.


    سایت
  • I like the valuable information you supply in your articles. I'll bookmark your weblog and take a look at once more here frequently. I am moderately certain I will be told plenty of new stuff right here! Good luck for the next!


    سایت
  • It's hard to find knowledgeable people for this subject, however, you sound like you know what you're talking about! Thanks


    سایت
  • Loving the info on this website, you have done outstanding job on the posts.


    سایت
  • My brother suggested I may like this web site. He used to be totally right. This publish truly made my day. You can not believe simply how a lot time I had spent for this information! Thank you!


    سایت
  • I have been surfing online more than 2 hours today, yet I never found any interesting article like yours. It's pretty worth enough for me. In my opinion, if all webmasters and bloggers made good content as you did, the web will be a lot more useful than ever before.


    سایت
  • Meu membros da família o tempo todo dizem que eu sou desperdiçando meu tempo aqui no líquido , exceto eu sei que estou recebendo familiaridade diário lendo thes boa conteúdo.


    سایت
  • Halten Sie Ihre Haltung Abnehmen http://cigopweight.space/x162arpd-6c55.html A legjobb diГ©ta gyors fogyГЎs vГ©lemГ©nyek http://cigopweight.space/tt-2-4-3-r78f3256s-91133z.html milyen tablettГЎk tГ©nyleg segГ­t a fogyГЎsban lefogyott vГ©lemГ©nyek http://cigopweight.space/5mo64z8g55ep3x-ut.html Г©rtГ©kelГ©seket kefir hajdina diГ©ta hГ©ten http://cigopweight.space/f4fd4f44bn771j.html carica per il video di perdita di peso http://cigopweight.space/8-ug-knt5r2x7q7m3.html Kollagen und Гњbergewicht http://cigopweight.space/gez6p8dbbl2b.html hogyan lehet egy lapos has diГ©ta http://cigopweight.space/43d393pe3-wc.html Recensioni di olio di cumino nero per la perdita di peso http://cigopweight.space/


    سایت
  • Sanatorien der Ukraine Behandlung von Fettleibigkeit http://cigopweight.space/5a2-mkph32sz7r8dgr3rw.html cosa mangiare proteine ​​nei giorni di dieta http://cigopweight.space/87d-8-mgvlo2y-4ldr6f1.html insalata di verdure dieta spogliatoio http://cigopweight.space/qslqi92-y9ap-2ro528kq.html Elleboro dosaggio Caucasica per la perdita di peso http://cigopweight.space/7di8xr1h-bh252-2j33-5.html gyГЎrtГіi karcsГєsГ­tГі termГ©kek http://cigopweight.space/4h95z-v77-t7wwy.html trattamento dell'obesitГ  a Chihuahua http://cigopweight.space/sil-sxxap61yi99.html dieta per 10 giorni meno 10 kg http://cigopweight.space/2t95j-5-a393134.html fГјr Gewichtsverlust Reinigung Tee in der Apotheke http


    سایت
  • How to get without going to a doctor http://www.brandssolution.co.uk/uploads/160_120/pharmacy/ivera.html lowest price for online.


    سایت

فرستادن دیدگاه


برای افزایش امنیت لطفا کدی را که در تصویر زیر می بینید در کادر وارد کنید :
CAPTCHA Image   Reload Image
Enter Code*: