الاثنين، فبراير 01، 2016

كيف نحول الايبهات IP Address من Decimal الى Binary والعكس وما هو ال ip

هل تعرف مما تتكون الايبهات ، وما هو و اصل ارقام الاى بى ادرس IP Address ، لقد تكلمنا فى دروس سابقة عن توزيع منظمة الايانا IANA للايبهات وتقسيمها الى ثلاثة فئات مختلفة حسب عدد المستخدمين ،ولكن هل فعلا هذا التوزيع يصلح لجميع الشبكات ام هو مجرد تقسيم نظرى لا يمكن تطبيقه فعليا ، لذلك سوف نشرح اليوم اصل الابى ادرس وكيف تعمل الايبهات .. تابع معى سطور هذا الموضوع.
شبكة تتكون من 500 جهاز كمبيوتر .. الى اى فئة من الفئات الثلاثة تنتمى هذه الشبكة CLASS A,CLASS B, CLASS C
 Hosts
 Subnet mask
 IP address
 Class
 16 million
 255.0.0.0
 1 - 127
 A
 65534
 255.255.0.0
 128 - 191
 B
 254
 255.255.255.0
 192 - 223
 C
 HOST = 500
هناك ثلاثة احتمالات منهم احتمالين صحيحين نظريا والثالث صعب تنفيذه ؟ كيف ... سوف نقوم بتحليل كل احتمال علي حدي في النقاط التالية.
• الاحتمال الاول : تنتمى هذه الشبكة الى CLASS A نظريا اى عدد المستخدمين اكثر من 16 مليون مستخدم مع subnet mask 255.0.0.0 ولكن عمليا صعب تنفيذه لانه عندما يتم توصيل هذه الشبكة بروتر router وتتصل بالانترنت وتتحول من lan الى wan عندها سوف يرى الروتر ان عدد المستخدمين فى الشبكة ليس 500 مستخدم فقط ولكن اكثر من 16 مليون مستخدم وبالتالى سوف تكثر رسائل broadcast وبطىء للشبكة مما يؤدى فى النهاية الى loop للشبكة او موت الشبكة .
• الاحتمال الثانى : ان تنتمى هذه الشبكة الى CLASS B نظريا اى عدد المستخدمين حوالى 65534 مستخدم مع subnet mask 255.255.0.0 ولكن عمليا صعب التنفيذ ايضا لانها ستواجه نفس مشاكل CLASS A من كثرة رسائل broadcast فى الشبكة وبالتالى ايضا موت الشبكة نتيجة loop .
• الاحتمال الثالث : صعب تنفيذه مع CLASS C لان عدد المستخدمين هنا حوالى 254 مستخدم وان محتاج الى شبكة متاحة لحوالى 500 مستخدم وبالتالى صعب التنفيذ نظريا وعمليا .
اذن ما الحل لانشاء شبكة تتكون من 500 مستخدم بطريقة صحيحة وعملية؟ الحل ليس متوفر مع منظمة الايبهات ايانا IANA اذن ما الحل؟
 الحل هو الطريقة اليدوية او Custom Mask او ماسك يدوى اى ليس اى من هؤلاء ( 255.0.0.0 او 255.255.0.0 او 255.255.255.0 ) لماذا نركز على الماسك فى الشبكة لانه هو اساس تكوين اى شبكة. وقبل ان نتعرف علي كيفية انشاء Custom Mask علينا ان نعرف اولا كيف يقوم كارت الشبكة NIC بتحويل البيانات او الداتا الى صفر وواحد.
اولا : الايبهات مكتوبة طبقا لنظام Decimal او النظام العشرى ( 192،126،123، وهكذا) ، لذلك كارت الشبكة هو المسئول عن تحويل الايبهات من النظام العشرى Decimal الى Binary او Bit يعنى صفر وواحد والعكس ايضا يحول الايبهات من Binary الى Decimal لكى يستطيع المستخدم العادى ان يفهم ان الداتا المرسلة قادمة من الجهاز رقم اى بى ادرس مثلا 192.0.0.10 وهكذا.
مثال : IP Address 192.168.0.10
نقوم بتحويله من decimal ( نظام ارقام عشرية ) الى binary اي bit 0,1 ، هذا الجدول ثابت فى تقسيمه بالنسبة لاى كارت شبكة ( قاعدة ثابتة )
1
 2
 4
 8
 16
 32
 64
 128
 IP
 0
 0
 0
 0
 0
 0
 1
 1
 192
 0
 0
 0
 1
 0
 1
 0
 1
 168
 0
 0
 0
 0
 0
 0
 0
 0
 0
 0
 1
 0
 1
 0
 0
 0
 0
 10
سوف نقوم الان بتوضيح الجدول السابق :
كما ذكرنا من قبل ان الاى بى ادرس IP Address يتكون من 4 اوكتت وكل octet ( ثمانى الارقام او 8 bits ) اذا الاى بى ادرس يتكون من 32 bits او 32 بت ، كيف ذلك؟ ، اذا قمنا بضرب عدد
4octet × 8 bits = 32 bits هو مجموع ارقام الاى بى ادرس.
قمنا بتقسيم الى 8 اعمدة كل عمود به رقم ( ما هى هذه الارقام ) اذا جمعناها سوف تعطينا مجموع الحد الاقصى للاوكتت الواحد. ( قاعدة ثابتة فى كارت الشبكة )
128+64+32+16+8+4+2+1 = 255 ( الحد الاقصى للاوكتت الواحد )
Ip address 192
• الاوكتت الاول : 192 طبقا للتحويل من decimal الى binary هو مجموعة كل من 128 + 64
• الاوكتت الثانى : 168 طبقا للتحويل من decimal الى binary هو مجموع كل من 128 + 32 + 8
• الاوكتت الثالث : 0 طبقا للتحويل من decimal الى binary هو يظل 0
• الاوكتت الرابع : 10 طبقا للتحويل من decimal الى binary هو مجموع كل من 8 + 2
ملحوظة هامة : كارت الشبكة NIC يقوم بتحويل كل اوكتت octet على حدة اى يبدأ بالاوكتت الاول ثم الثانى ثم الثالث ثم الرابع.
هناك طريقة اخرى للتحويل وهى : طريقة الطرح ، مثلا الاوكتت الاول 192
نقوم بطرح 128 من 192 لو ان الطرح ايجابى اى يمكن طرح 128 من 192 يكون الطرح ايجابى ونضع فى الجدول رقم 1 اما لو كان العكس لا يمكن طرح 192 من 128 يكون الطرح سلبى ونضع صفر او 0 وهكذا.
• 192 - 128= 64 هنا الطرح ايجابى وممكن ونضع فى الجدول 1
• 64 - 64 = 0 هنا الطرح ايجابى وممكن ونضع فى الجدول 1
• 0–32 = 0 هنا لا يمكن ان نطرح 32 من الصفر ويكون الناتج سلبى وبالتالى نضع صفر
• 0 – 16 = 0 هنا لا يمكن ان نطرح 16 من الصفر ويكون الناتج سلبى وبالتالى نضع صفر
• 0 – 8 = 0 هنا لا يمكن ان نطرح 8 من الصفر ويكون الناتج سلبى وبالتالى نضع صفر
• 0 – 4 = 0 هنا لا يمكن ان نطرح 4 من الصفر ويكون الناتج سلبى وبالتالى نضع صفر
• 0 – 2 = 0 هنا لا يمكن ان نطرح 2 من الصفر ويكون الناتج سلبى وبالتالى نضع صفر
• 0 - 1 = 0 هنا لا يمكن ان نطرح 1 من الصفر ويكون الناتج سلبى وبالتالى نضع صفر
وهكذا يتم التحويل من decimal الى binary فى الاوكتت الثانى والثالث والرابع بنفس الطريقة. مثال الاوكتت الثانى 168.
• 168 – 128 = 40 yes نضع 1
• 40 – 64 = ???? no نضع 0
• 40 – 32 = 8 yes نضع 1
• 8 – 16 = ??? no نضع 0
• 8 – 8 = 0 yes نضع 1
• 0 – 4 = ??? no نضع 0
• 0 – 2 = ??? no نضع 0
• 0 – 1 = ??? no نضع 0
وهكذا يكون موضع التحويل سهل من خلال الطريقتين المختلفتين. اما عن التحويل من binary الى decimal تشبه الطريقة الاولى. فعلي سبيل المثال:
• 10 هى مجموعة كل من 8 + 2 = 10
• 192 مجموع كل من 128 + 64
• 168 مجموع كل من 128 + 32 + 8
وكل الطرق السابقة تعتبر طرق يدوية ويمكن ان نحول من decimal الى binary والعكس عن طريق الالة الحاسبة Calculator الخاصة بالكمبيوتر بكل سهولة عن طريق اتباع الخطوات التالية :
اذهب الى قائمة ابدء Start ثم اختار كل البرامج All Programs ثم نختار Accessories كافة التطبيقات ثم نختار الالة الحاسبة Calculator
بعد ذلك نفتح الالة الحاسبة وتكون بهذا الشكل Standard ونقوم بالضغط على قائمة View
 2
ونختار منها الشكل Scientific
 3
كما يظهر فى الصورة نرى ان الالة الحاسبة مبرمجة على Dec او decimal ونقوم بكتابة IP Address 192
 4
ثم نختار Bin او binary فتتم عملية التحويل والعكس صحيح
5
وفى نهاية درسنا نكون قد وضحنا ما هى الايبهات decimal والايبهات binary ووضحنا الفرق بينهما وكيف تتم عملية التحويل من خلال كارت الشبكة NIC وانه هو المسئول عن عملية  التحويل