ماهو NAT بروتوكول و ماذا يعمل و ما هيا خصائصة
هنتكلم النهاردة عن موضوع مهم جدا فى مدونة لينكدان للعرب Linkedin For Arab عن بروتوكول مهم جدا اسمه NAT
دا من اهم البروتوكلات المستخدمة فى شبكات الانترنت و هنعرف انواعة و خصائصة و مميزاتة و كمان من اهم البروتوكولات فى كورس CCNA وCCNP . كل دا هنعرفة بالتفاصيل فى مدونة لينكدان للعرب Linkedin For Arab
NAT Protocol |
بعد زيادة نسبة المستخدمين للـــ Internet واحتياج كل
مستخدم لــ IP Address خاص به للاتصال عبر الانترنت فى حين أن IPv4 لم يعد يلبى هذه الاحتياجات بسبب
سوء التوزيع مما يؤدى إلى نقص فى توفر public IP Address لكل مستخدم تم اللجوء حل يسمى Network Address
Translation أو ال NAT وهذا الحل يمكننا ببساطة من لو كان
عندنا فرضا شركة تتكون من 10 أفراديستخدموا ال internet فى عملهم . قبل هذا الحل كان لابد
من شراء public ip من ال ISP لكل فرد ليتمكنوا من استخدام الانترنت فى نفس الوقت أما مع هذا
الحل فيمكننا شراء Public IP واحد فقط ليستخدمه الجميع وسوف نفهم فيما بعد كيفية عمل ذلك وله
مميزات أخرى لن نتطرق لها الآن
أنواع الــ NAT :
1- Static NAT :
وهذا النوع من الـــ NAT بختار بنفسي لكل Private IP من الموجودين
عندي Public IP عندما يخرج إلى شبكة أخرى أو إلى الانترنت مثلا يعنى 192.168.32.10
لما يحاول الاتصال بالــ Internet بيظهر على الــ Internet بـــ 213.18.123.110 وهكذا مع باقي الأجهزة .
مثال : لو عندي web server لموقع ما أكيد ال web server ده موجود فى شبكة
داخلية وله private IP ولكن يظهر للشبكات الخارجية بــ public IP ليتم الاتصال به .
2- Dynamic NAT :
فى هذا النوع من الــ NAT بختار مجموعة من
الــ Private IP ليظهروا عبر الشبكات الخارجية بمجموعة من الــ Public IP وهنا لا يشترط أن
يظهر مثلا 192.168.32.10 فى الشبكات الخارجية بــ 231.18.123.116 بل يأخذ أول Public IP حر أو بمعنى لا
يستخدمه احد طيب ماذا لو لم يجد 192.168.32.10 أي public IP حر ووجد الجميع مستخدم من قبل الغير
…. سوف ينتظر إلى أن يجد Public IP حر ويخرج حينها إلى الشبكة الخارجية فى صورته . وهنا طبعا أكيد عدد
ال private ip اكبر من عدد الـ public ip .
3- NAT Overloading
وهذا النوع هو المنتشر بكثرة ومن
اشهر الأمثلة عليه هو DSL Modem وهو عبارة عن مجموعة من الــ private IP تظهر للشبكات الخارجية بــ Public IP واحد فقط ويتم
التفرقة بينهم باستخدام ال TCP/UDP port number بمعنى أن 192.168.32.10 و
192.168.32.12 يظهروا للشبكات الخارجية بـــ 213.18.123.100 ولكن يتم التفرقة
بينهم باستخدام TCP/UDP port number،حيث أن 192.168.32.10 يظهر بــ 213.18.123.100:101 أي عن طريق ال port 101 و 192.168.32.12
عن طريق 213.18.123.100:102
ويمكنك أن ترى هذا الموضوع باستخدام الأوامر التالية
1- Start>run>cmd>ipconfig/all من هذا الأمر سوف تعرف private ip
2- افتح Internet explorer أو FireFox مثلا واكتب http://showip.net/ سوف يظهر لك ال public ip الذي تستخدمه
وبالأسفل connected at port وبها رقم ال port الذي تتصل من خلاله
3- جرب الخطوة 1و2
على جهاز أخر موجود على الشبكة سوف تجد نفس ال public IP ولكن الاختلاف فى ال port number
مصطلحات ال NAT :
1- Inside & Outside Networks
كل جهاز موجود فى ال Inside Network أو الشبكة
الداخلية يعتبر Inside Device سواء كان pc, switch,…… وأي جهاز موجود فى Outside Network أو الشبكة الخارجية يعتبر Outside Device
2- Local Address
وهو أي IP Address بيظهر فى الشبكة الداخلية
3- Global Address
وهو أي IP Address بيظهر فى الشبكة الخارجية
4- Inside Local Address
وهو كل جهاز له private IP موجود بالشبكة
الداخلية
5- Outside Local Address
وهو أي جهاز خارجي هايظهر للشبكة
كأنه جهاز داخلي بمعنى أخر لو ال router عندي استلم packet من pc وليكن له ip 171.16.86.1 وأنا عندي Network ID 10.1.1.0 ال router بيعمل translate أو ترجمة لــ source Address ليظهر كأنه موجود فى الشبكة عندي
فيظهر عندي فى الشبكة الداخلية بهذا الشكل ip 10.1.1.X
6- Inside Global Address
وهو أي جهاز داخلي له private ip هايظهر للشبكات
الخارجية بــPublic IP
7- Outside Global Address
وهو أي جهاز خارج الشبكة الداخلية
وله public IP
1- Static NAT
Allow PC 0 to use the internet and appear at the outside
networks by 200.1.1.3
المطلوب هنا نسمح لــ PC 0 باستخدام الـ Internet بواسطة اننا
هانجعل يظهر فى الشبكات الخارجية بــ Public IP وهو 200.1.1.3 وده هايتم باخطوات التالية :
R1(config)#int fa 0/0
R1(config-if)#ip nat inside
هنا بعرف الــ Router ان Fa 0/0 بيطل على الشبكة الداخلية
R1(config)#int s 2/0
R1(config-if)#ip nat outside
هنا بعرف الــ Router ان S 2/0 بيطل على الشبكة الخارجية
R1(config)#ip nat inside source static 192.168.1.2 200.1.1.3
وهنا الامر الرئيسى لـ Static NAT وهنا بقول للـ Router ان ال private ip الفلانى لما يحب
يخرج لشبكة تانية اظهره فى الشبكة الخارجية بــالـ public ip الفلانى
R1# show ip nat translations
وهنا من الامر ده بعرف انا عامل NAT لكام Device واعرف منه ال ip الخاص به فى
الشبكة الداخلية ولما يخرج لشبكة اخرى هايبقى ال ip بتاعه ايه ..
R1(config)#no ip
nat inside source static 192.168.1.2 200.1.1.3
الامر ده علشان الغى ال NAT من على الـ Router علشان انتقل
للمرحلة القادمة وهي الــ Dynamic NAT
2- Dynamic NAT
R1(config)#int fa 0/0
R1(config-if)#ip nat inside
R1(config)#int s
2/0
R1(config-if)#ip nat outside
R1(config)# ip nat pool mac 200.1.1.3 200.1.1.254 netmask
255.255.255.0
هنا بعرف range لل public ip واديته اسم mac وممكن اى اسم اخر
R1(config)#ip nat
inside source list 1 pool mac
هنا بعرف ان اى جهاز واخد private ip فى الشبكة ال inside لما يروح يكلم اى
حد من شبكة خارجية ياخد من range ال public ip اللى اسمه mac ومعنى list 1 اى طبق على ال inside interface ال access-list اللى رقمها 1
R1(config)access-list 1 permit 192.168.1.0 0.0.0.255
R1# show ip nat translations
وهنا من الامر ده بعرف انا عامل NAT لكام Device واعرف منه ال ip الخاص به فى
الشبكة الداخلية ولما يخرج لشبكة اخرى هايبقى ال ip بتاعه ايه ..
ملحوظة : الامر show ip nat translation مش هايطلع اى نتائج الا بعد ان استخدم الاجهزة ال inside خارج الشبكة الداخلية بمعنى اخر ممكن اعمل ping على اى جهاز فى شبكة خارجية وبعد ذلك سوف تظهر النتائج
لو عجبك المقال متنساش تشوف باقى المقالات فى لينكدان للعرب Linkedin for arab
تعليقات
إرسال تعليق