nat وما هي انواعه واهم المصطلحات الخاصه به
بامكانك الاطلاع علي
nat بعد
زيادة نسبة المستخدمين للـــ Internet
واحتياج كل مستخدم لــ IP Address خاص به
للاتصال عبر الانترنت.
فى حين أن IPv4 لم يعد يلبى هذه الاحتياجات بسبب سوء التوزيع مما يؤدى إلى نقص فى توفر public IP Address لكل مستخدم تم اللجوء حل يسمى Network Address Translation أو ال NAT وهذا الحل يمكننا ببساطة من لو كان عندنا فرضا شركة تتكون من 10 أفراديستخدموا ال internet فى عملهم .
قبل هذا الحل كان لابد من شراء public ip من ال ISP لكل فرد ليتمكنوا من استخدام الانترنت فى نفس الوقت أما مع هذا الحل فيمكننا شراء Public IP واحد فقط ليستخدمه الجميع وسوف نفهم فيما بعد كيفية عمل ذلك وله مميزات أخرى لن نتطرق لها الآن.
تعريف الـ NAT
هو عبارة عن تغيير عنوان (IP address)الموجود على غلاف البيانات المرسلة (Layer3 header) من عنوان لعنوان آخر، حيث ظهرت هذه الامكانية نتيجة استخدام عناوين خاصة (private IP addresses) للشبكات المحلية الداخلية ومن ثم الحاجة لربطها على شبكة الانترنت والتي تستخدم عناوين عامة (public IP addresses)، ومن الجدير بالذكر أن ال NAT قد يطبق لتغيير عنوان (private IP) لعنوان (private 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 على اى جهاز فى شبكة خارجية وبعد ذلك سوف تظهر النتائج.