السلام عليكم ورحمه الله وبركاته
أحاول في هذه المشاركة بعون الله شرح معظم ما نستطيع فعله للإستفادة القصوى من بوابتنا للانترنت. أقصد ببوابة الانترنت أي طريقة تتصل بها بالانترنت كانت. مثلا مودم انترنت موصل بكمبيوترنا بمنفذ usb (مثلا 3G او WiMax) او مركب داخل الجهاز في فتحة PCI (مثلا فاكس مودم) او بكيبل شبكة (مثلا راوتر DSL او ستالايت) او أي طريقة اخرى كانت (مثلا VPN)
اود الاعتذار مسبقا عن أني لن اتمكن من عرض شرح تفصيلي لكل المصنعين لهذه الاجهزة لكثرتهم ولصعوبة الموضوع علي. ما عليك معرفته هو ان جميع اجهزة الانترنت من مودمات/راوترات بغض النظر عن مصنعيها تتبع نفس المبدأ وكلها تقوم بنفس المهام بالضبط تقريبا، مع اختلاف بسيط في شكل وطريقة الاعداد من شركة لاخرى بحسب الفيرموير (نظام التشغيل) الذي وضعوه داخل معبر الانترنت الذي يصنعونه، وكما ذكرت الغرض هو توضيح كيف تعمل هذه الاشياء والفكرة العامة بحيث يكون الواحد فينا عارف ومستوعب مسبقا ما يحاول فعله، وهل يستطيع تنفيذ ما يفكر فيه ام لا؟ ودون ان يحتاج لاستشارة احد. وفي الاخير التنفيذ عليك انت يا صديقي لذلك لاتسألني كيف يمكنك عمل خطوة معينة في الموديل الفلاني الموجود لديك.. جوابي مسبقا هو "لا اعرف" لاننا لن ننتهي لو فتحنا باب مثل هذا ولن تستفيد انت .. ثم ان الموضوع ليس بتلك الصعوبة لو تكون لديك الأساس، وهو ما احاول تكوينه لديك بهذا الموضوع إن شاء الله.
( لاتعطني سمكة، بل علمني كيف اصطادها )
لنبدأ...
كيف نصطاد السمك؟ أأأأأ عفوا.. أقصد الأساسيات التي علينا معرفتها:
ماهو عنوان الـ IP ؟
عنوان الـ IP هو رقم طوله 4 بايت byte ونفصل بين كل بايت وبايت باستخدام نقطة "." (بايت.بايت.بايت.بايت) مثال عليه العنوان 192.168.1.1
البايت الواحد يساوي 8 بت bit .. هذا يعني ان عنوان ال IP طوله 4 بايتات او 32 بت اليس كذلك؟ (4 بايت × 8 بت = 32 بت)
المثال السابق (192.168.1.1) يسمى التمثيل العشري لعنوان ال IP والفائدة من هذا التمثيل هي ان نستطيع نحن البشر قرائته وحفظه. لكن في الحقيقة لا يبدو هكذا ابدا بالنسبة لاجهزة الشبكة.. بالنسبة لكمبيوتر مثلا، عنوان 192.168.1.1 يبدو هكذا:
11000000.10101000.00000001.00000001 !!
تستخدم الاجهزة التمثيل الثنائي (0 و 1) - بعبارة اخرى "ديجيتال" - لكي تستطيع تحويل العنوان الى نبضات كهربائية (مثلا 1 = +5 فولت ، 0 = -5 فولت). وتسري هذه النبضات عبر كيبل الشبكة مثلا لجهاز اخر يعيد تحويلها الى تمثيل ثنائي بنفس المبدأ.
لاحظ معي كيف ان كل بايت تم تمثيله بثمانية بت، وقيمة كل بت منها اما صفر او واحد (لا يوجد احتمال اخر)
لاحظ ايضا اننا اذا جعلنا جميع البتات في البايت الواحد قيمتها 1 (يعني 11111111) فان القيمة العشرية المقابلة هي 255 .. لذلك اعرف انك لن تجد عنوان IP يحتوي قسم فيه على رقم اكبر من 255 (عشري)
وظيفة عنوان الـ IP هي تمييز كل كمبيوتر عن غيره في نفس الشبكة لكي تستطيع هذه الاجهزة التفاهم فيما بينها. كل كمبيوتر في الشبكة الواحدة لابد ان يكون له عنوان IP فريد غير مكرر مع جهاز اخر في نفس الشبكة. هذه الشبكة ممكن تكون شبكة محلية في منزل او مكتب.. او ممكن تكون الشبكة الكبرى الانترنت.
اهم ما في عنوان ال IP هو انه يحدد شيئين اثنين مهمين جدا اريدك تعرفها تماما:
- يحدد رقم هذا الجهاز في الشبكة
- ورقم الشبكة نفسها التي يقع ضمنها هذا الجهاز بعنوانه الحالي
لذلك فإن الـ 32 بت التي تكون عنوان ال IP كما اتفقنا تنقسم الى قسمين، بتات تحدد رقم الجهاز العميل "الكمبيوتر" تسمى Host Bits، وبتات تحدد رقم الشبكة تسمى Network Bits وهذه نقطة مهمة جدا لنا .. الشبكة ليست ببساطة مجموعة اجهزة مربوطة بسويتش وخلاص. لا هذه نظرة من الناحية الفيزيائية فقط، لكن هناك ناحية منطقية ايضا، هل تعلم انه يمكننا بكل بساطة توصيل مجموعة اجهزة في سويتش واحد ومع ذلك يمكننا تقسيم هذه الشبكة الى مجموعة شبكات مختلفة ومنفصلة عن بعضها على الرغم من انها جميعا مربوطة بنفس السويتش؟
كما ذكرت، عنوان ال IP يحدد رقم الجهاز + رقم الشبكة. اي جزء في هذا العنوان يخص الشبكة و اي جزء يخص الجهاز العميل؟ هذه يحددها ما يسمى قناع الشبكة الفرعية Subnet Mask. مثال شهير على قناع شبكة فرعية هو 255.255.255.0 اتوقع مر عليك في احد مراحل استخدامك للانترنت او الشبكات عموما.
اذا باختصار نقول ان القناع يحدد اي جزء في عنوان الـ IP يخص الشبكة، واي جزء يخص الجهاز، نأتي الان الى التفاصيل وكيف يتم ذلك لانها نقطة يهمنا جدا فهمها وسأحاول تبسيطها بقدر الإمكان لان الموضوع في الأصل معقد ومتشعب.
القناع طوله هو نفس طول عنوان الـ IP (أي 32 بت) ولتحديد اي جزء من عنوان ال IP يخص العميل واي جزء يخص الشبكة نقوم بمقارنة القناع مع عنوان ال IP بشكل متوازي بمعنى ان كل بت تتم مقارنته بالبت المقابل له في عنوان ال IP بما ان الاثنين نفس الطول (32 بت)
لاحظ عنواننا السابق 192.168.1.1 ولنفترض ان القناع هو 255.255.255.0. نحتاج لتمثيل هذه القيم ثنائيا لكي نستطيع تمييز أي جزء في عنوان ال IP يخص الشبكة وأيها يخص الجهاز العميل أو الجهاز حامل عنوان ال IP:
عنوان الـ IP هو: 11000000.10101000.00000001.00000001
قناع الشبكــة هو: 11111111.11111111.11111111.00000000
أي بت في عنوان ال IP يقابل بت قيمته 1 في القناع فانه يخص الشبكة، وأي بت يقابل 0 في القناع يخص الجهاز العميل. قمت بتلوين كل بت قيمته 1 في القناع بالأزرق وكل بت قيمته صفر بالأحمر للتسهيل. من السابق نخلص الى أن الثلاثة بايتات الاولى (من اليسار) من عنوان ال IP تخص الشبكة، بينما البايت الرابع والاخير (اقصى اليمين) من عنوان ال IP يخص الجهاز العميل. اذا بالنسبة للعنوان 192.168.1.1 بقناع 255.255.255.0 فإن 192.168.1 تمثل جزء الشبكة في عنوان ال IP بينما 1 تمثل جزء الجهاز العميل.
لتبسيط الموضوع واخذه من ناحية سطحية لانه اكثر تعقيدا من هذا بكثير نقول:
اي بايت في القناع قيمته (التمثيل عشري) 255 يعني ان هذا جزء شبكة، و اي بايت قيمته 0 (عشري) يعني ان هذا الجزء من عنوان ال IP هو جزء الجهاز.. لذلك عنواننا السابق 192.168.1.1 بقناع 255.255.255.0 تعني ان الثلاث بايتات الاولى على اليسار تخص عنوان الشبكة بينما البايت الاخير يخص الجهاز.. لذلك فالجهاز صاحب عنواننا السابق موجود في الشبكة 192.168.1 (تكتب كاملة 192.168.1.0 بوضع صفر للبايتات التي تخص الجهاز العميل) والرقم المميز للجهاز في هذه الشبكة هو 1 (يكتب كاملا 192.168.1.1)
لذلك اذا اضفنا جهاز جديد للشبكة واعطيناه العنوان 192.168.1.2 بنفس القناع فهو في نفس الشبكة مع جهازنا الاول اليس كذلك؟ لأن العنوانين متماثلين في الجزء الذي يخص الشبكة (القناع هو الذي حدد جزء الشبكة). ويمكننا عنونة الاجهزة داخل هذه الشبكة الفرعية حتى نصل الى اقصى عنوان 192.168.1.255
لكن اعلم أنه في كل شبكة فرعية فإن اول عنوان واخر عنوان هي عناوين خاصة لا يمكن استخدامها، مثلا في مثالنا السابق العنوان 192.168.1.0 لا يمكن استخدامه لجهاز عميل لانه يمثل عنوان (أو رقم) الشبكة نفسها، بينما اخر عنوان 192.168.1.255 يمثل ما يسمى عنوان برودكاست broadcast لهذه الشبكة وله استخداماته الخاصة. لذلك في شبكتنا 192.168.1.0 يمكننا عنونة الاجهزة من 192.168.1.1 وحتى 192.168.1.254 يعني هذه الشبكة يمكن ان تحتوي على 254 جهاز كاقصى حد. لذلك اذا اردنا اضافة جهاز جديد فاننا سنضطر للدخول في بتات الشبكة هذه المرة وهذا غير ممكن وسيغير الحسبة كلها. اذا اضفنا جهاز بعنوان 192.168.2.1 بنفس القناع (255.255.255.0) فهو يعتبر في شبكة فرعية مختلفة عن بقية الاجهزة (الشبكة 192.168.2.0 هذه المرة) لذلك فانه لن يستطيع التفاهم مع بقية الاجهزة حتى لو كان موصل بنفس السويتش، وهذا ما قصدته بانك يمكنك توصيل شبكتين او اكثر في شبكة واحدة موصلة بسويتش واحد (شبكة واحدة من ناحية فيزيائية فقط). لو وصلت 10 اجهزة بسويتش وجعلت 5 منها تقع في الشبكة 192.168.1.0 بينما الخمسة الاخرى في الشبكة 192.168.2.0 اصبح لديك شبكتين في شبكة واحدة! وبالمناسبة شبكتين بالفعل حيث انك حتى لن تستطيع عمل ping من جهاز في الشبكة الاولى لجهاز في الشبكة الثانية! بينما كل 5 اجهزة في كل شبكة ستتفاهم مع بعض بشكل طبيعي سواء ping او مشاركة ملفات او غيره.
يعني بقناع 255.255.255.0 فان اي جهاز يحمل عنوان IP يختلف عن غيره في احد الثلاث بايتات الاولى يكون في شبكة مختلفة. وقس عليها اقنعة 255.255.0.0 او 255.0.0.0
نكتفي بهذا القدر حول القناع لانه ليس الغرض من موضوعنا واتمنى تكون وضحت الصورة ولو قليلا وبالتحديد جزئية عنوان ال IP ووظيفته وكيف نعرف نميز بالنظر الى عنوانين IP واقنعتهم فقط اذا كانوا في نفس الشبكة ام لا بغض النظر عن طريقة التوصيل الفيزيائية.
الموضوع لا يخلو من تعقيد خصوصا اننا تعرضنا لجزء منه فقط حيث هناك اقنعة اكثر تعقيدا مثل 128 و 192 و 224 و 240 و 252 وليس دائما يكون القناع 255 او 0 كما في مثالنا السابق. في البداية يبدو الموضوع معقد لكن بقليل من الممارسة يبدأ يظهر أسهل فأسهل. تفاصيل اضافية حول الارقام الثنائية والعشرية وعنونة الشبكة وتقسيمها باستخدام الأقنعة تجدونها في موضوع انصحكم بقرائته:
يتبع ....
تعليق