محمد أحمد العيل

الأعضاء
  • المساهمات

    308
  • تاريخ الانضمام

  • تاريخ آخر زيارة

  • Days Won

    27

السُّمعة بالموقع

136 Excellent

المعلومات الشخصية

  • النبذة الشخصية مهندس نظم معلومات، أكتب في مدونتي (تلميحات تقنية) عن البرامج الحرة ومفتوحة المصدر. لدي خبرة في التطوير بلغة جافا وإدارة قواعد بيانات MySQL و Oracle، إضافة إلى إدارة أنظمة لينوكس (دبيان ومشتقاتها).
  1. يتناول هذا المقال طريقة منهجية ستساعدنا في تطوير آليات للتعرّف على المشاكل التي تواجهها شبكات المبدّلات، وبالتالي تحديد مشاكل الاتصال المحتملة على المنافذ، ممّا يخوّلنا التعرف على المشاكل الحاصلة في شبكات VLAN وعند التوصيل بالجذع (Trunking) أو حتى كشف اختلالات العمل في بروتوكول توصيل شبكة VLAN بالجذع (VTP) أو في بروتوكول الشبكة الممتدة (STP). تشخيص حالة المبدّلات لا يعدّ فحص شبكات المبدّلات وتشخيصها علمًا دقيقًا، بل هو أقرب للفن. يكون لدينا عادةً حدس حول جزء الشبكة الذي توجد به المشكلة أو يتسبّب فيها. في ما يلي اقتراحات عامة لجعل تشخيص مشاكل شبكات المبدّلات أكثر فاعلية. أوّلًا، يجب أن تعلم الإعدادات المضبوطة على شبكة المبدّلات محل التشخيص. يجب في هذا الإطار معرفة الخدمات المُفعَّلة على المبدّلات. ثانيًّا، يجب أن تكون لدينا معرفة دقيقة بالمُخطَّط الفيزيائي والمنطقي للشبكة، لكي تكون لدينا رؤية واضحة عن كيفية ترابط الأجهزة، فيزيائيًّا ومنطقيًّا، ممّا يساعدنا في تتبع المسارات. وأخيرًا، يُفضَّل عند تشخيص المشاكل والبحث عنها أن تكون لدينا خطة نسير عليها بدلًا من القفز هنا وهناك. المنهجية التي أتبعها شخصيًّا هي سياسة نموذج OSI ذي الطبقات السبع. أبدأ عادة بالمستوى الأول وأتأكد من أنّ الطبقة الفيزيائية تعمل على نحو صحيح قبل أن أنتقل إلى الطبقة الثانية للتأكد من أنّ طبقة الربط تعمل كما يُرام. بعد التأكّد من الرابط المحلي أنتقل إلى الخطوة الموالية وهي التأكد من أن الرابط يتخاطب مع الروابط الأخرى التي لا تتصل به مباشرة. في الأخير، لا نفترض أي شيء. لا نفترض أن أيًّا من المكوّنات الأساسية يعمل بدون مشكلة إلّا إذا اختبرناه أولا، فقد يكون شخص آخر غيّر الإعدادات دون أن ينبّه على ذلك أو يوثّق التغيير. إضافة إلى ذلك، لا تتعامل مع التغذية الراجعة من المستخدمين على أنها حقيقة ثابتة، لأن المستخدمين يعطون أحيانًا معلومات مضلّلة. قبل سنوات كنتُ أفحص الشبكة وأخبرني مستخدم أنّ الشبكة لا تعمل، لذا افترضتُ بداية أنّ الرابط لا يعمل. تبيّن لي بعد ذلك أنّ ما يعنيه هو أنّ الشبكة بطيئة جدّا. غني عن القول أنّ التحقّق اللازم لمعرفة مصدر المشكل يختلف في شبكة بطيئة عنه في عدم القدرة على الاتصال بالشبكة. تشخيص مشاكل الاتصال عبر المنفذ نوعية الكابل المستخدم واحد من الأمور التي على الفني أو مدير الشبكة فحصها أثناء التحقّق من الاتصال عبر منفذ. إلّا أنّ ذلك المشكل لم يعد مطروحًا في الغالب، لأنّ غالبية الكوابل المستخدمة في المؤسسات الآن هي من النوع Cat 5e. في الماضي، أثناء الانتقال من استخدام كابلات Cat 3 إلى كابلات Cat 5، كان شائعًا تواجد نوعين أو أكثر من الكابلات في الشبكة. لذا، إنْ أوصلت دون انتباه كابلا من النوع Cat 3 بمنفد بسرعة 100 ميغابت للثانية فإن الكابل لم يكن بمقدوره دعم تلك السرعة. الأمر مختلف هذه الأيام. يجب الانتباه كذلك إلى ألّا يُستخدَم كابل ذو طول يتجاوز المئة (100) متر، رغم أنّ ذلك نادر هذه الأيام نظرًا لكون المؤسسات تشتري كابلات مصنَّعة جاهزة، خلافًا لسنوات مضت كان فنيو الشركة هم من يجهّز الكابلات. التحقّق من انتماء منفذ من منافذ المبدّل إلى شبكة VLAN طريقة أخرى لتشخيص مشاكل الاتصال عبر المنفذ. إنْ أسنِد المنفذ لشبكة VLAN غير تلك التي يرتبط بها فلن يمكنه التواصل معها. يجب كذلك التحقّق من أنّ المنفذ لم تعطِّله إحدى الخدمات الأمنية، مثل أمن المنفذ (Port security)، أو مدير نظام آخر عن طريق الخطأ. لذا، حتى وإنْ كان منفذ شبكة VLAN الصحيح فقد يكون عُطِّل خطأً أو عن قصد لأسباب أمنية. لذا يجب الانتقال إلى إعدادات المنفذ وتنفيذ الأمر show interface للتأكد من أن المنفذ نشط ويعمل. في الأخير يجب التأكد من توافق أنماط الاتصال ثنائي الاتجاه (Duplex). عند وقوع مشكلة عدم توافق في نمط الاتصال ثنائي الاتجاه (المزدوج) فإن ما يحدث هو، ليس فقدان الاتصال، بل بطأه، لأن أحد الجانبين يفترض وجود اتصال ثنائي الاتجاه في آن (Full-Duplex)، أي أنه يُرسل بيانات ويتلقى أخرى في الوقت نفسه، في حين يفترض الطرف الآخر أن الاتصال ثنائي الاتجاه بالتناوب (Half-duplex). يعتمد الاتصال ثنائي الاتجاه بالتناوب مبدأ CSMA/CD (الناقل متعدد الوصول مع اكتشاف الاصطدام، Carrier-sense multiple access with collision detection). عندما يريد أحد طرفيْ الاتصال إرسال بيانات فإنه يتحقّق أولًا من خلو الرابط من البيانات القادمة من الطرف الآخر، وفور اكتشافه لها يتراجع عن الإرسال. لذا فإن كل ما يرسله المنفذ ذو النمط Full-duplex لا يتلقاه المنفذ الآخر ذو نمط الاتصال Half-duplex. هذا الأخير لن يرسل أي بيانات إلى المنفذ الآخر لأنه كل ما أراد إرسالها وجد بيانات قادمة من الآخر فيتوقّع أن اصطدامًا سيقع بين البيانات ويتوقّف عن الإرسال. الاستثناء الوحيد هو في حالات السكون، عندما لا يكون لدى أحد المنفذين ما يرسله، وبالتالي يمكن للآخر إرسال بياناته ويتلقاها الآخر. تشخيص مشاكل شبكات VLAN والروابط الجذعية انعدام التوافق هو أحد المشاكل التي قد نواجهها في شبكات VLAN. شبكة VLAN الأصلية بالنسبة لمعيار 802.1q هي إطار بيانات بدون وسم. تتوافق المبدّلات مبدئيًّا على شبكة VLAN الأصلية ذاتها. لذا يجب أن يُسنَد هذا التفضيل إلى شبكة VLAN مشتركة بين المبدّلات جميعا. قد ينتهي المطاف، في حالة انعدام التوافق، بإعادة توجيه إطارات بيانات من شبكة VLAN (رقم 1 مثلًا) على مبدّل، توجيهها إلى شبكة VLAN أخرى (رقم 2 مثلًا) على مبدّل آخر، وبالتالي يحدث سوء فهم. يوجد سبب آخر لمشاكل التوصيل بالجذع وهو انعدام التوافق بين أوضاع الرابط الجذع. تستخدم مبدّلات Cisco بروتوكول التوصيل الديناميكي بالجذع DTP ‏(Dynamic trunking protocol) للتفاوض حول اختيار الرابط الجذع، إلا أنّ هذا البروتوكول قد يواجه مشاكل في التفاوض حول خدمات الرابط الجذع بين مبدّلات Cisco قديمة وأخرى أحدث منها. لذا يُنصَح بإعداد الرابط الجذع يدويًّا كل ما كان ذلك ممكنا. أو ربما يمكن إيجاد تسوية عبر ضبط التوصيل بالجذع يدويًّا على أحد الطرفيْن وترك الطرف الآخر يتفاوض تلقائيًّا حول خصائص الرابط الجذع. يُعاد توجيه إطارات البيانات داخل شبكة VLAN عبر النظر في عنوان MAC الخاص بالوجهة، إلّا أننا نحتاج للمرور عبر موجّه لتسهيل التواصل بين شبكات VLAN. في الوقت نفسه لا يمكن للموجّه معرفة جميع الخواص المتعلّقة بالطبقة الثانية، لذا، ومن أجل تمكين الموجِّه من توجيه البيانات من شبكة VLAN إلى شبكة VLAN أخرى نخصّص لكل شبكة VLAN عنوان IP فريدا، لكي يكون بإمكان الموجِّه توجيه الرزم من عنوان IP إلى آخر، وهو ما يعني بطريقة غير مباشرة التوجيه من شبكة VLAN إلى أخرى. لذا إنْ منحنا شبكتي VLAN الشبكة الفرعية نفسها فستكون لدينا مشكلة. تشخيص بروتوكول VTP ينبغي الانتباه عند تشخيص مشاكل بروتوكول VTP للأمر المستخدَم في عرض الإعدادات. لا يُظهِر الأمر show run معلومات عن إعدادات VTP وشبكات VLAN المتعلقة به، إذا كان المبدّل يعمل وفق وضع الخادوم أو العميل، والسبب في ذلك هو أن معلومات VTP في تلك الحالة تُخزَّن في ملف مستقل يُسمَّى VLAN.dat على مبدّل Cisco. يجب استخدام الأمر show VTP status أو show vlan لعرض الإعدادات المتعلقة ببروتوكول VTP. سنتحدّث في ما يلي عن تشخيص الاختلالات في بروتوكول VTP التي قد تظهر عند إضافة مبدّل إلى الشبكة. ما يحدث عند ربط مبدّل مستعمَل لديه اسم نطاق موافق للنطاق الذي تستخدمه شبكة مبدّلات Cisco التي نربطه بها، ولديه إعدادات تجعله يعمل وفق وضع الخادوم مع رقم مراجعة أكبر من رقم المراجعة الذي تعمل وفقه مبدّلات الشبكة، ما يحدث في هذه الظروف هو أن جميع مبدّلات الشبكة التي تعمل وفق وضع العميل ستبدأ بأخذ معلومات شبكات VLAN من المبدّل الجديد ذي المعلومات المزيَّفة. ستلغي المبدّلات العميلة كل المعلومات القديمة لديها عن شبكات VLAN وتبدأ بأخذ معلوماتها من المبدّل الجديد ذي رقم المراجعة الأكبر. المشكلة في هذه الحالة هي أن خادوم VTP الجديد قد يكون خادومًا مزيَّفًا يمد المبدّلات بمعلومات مزيَّفة. يعني هذا أن جميع المستخدمين الذين كانت لديهم اتصالات بشبكات VLAN قبل الخادوم الجديد سيفقدون تلك الاتصالات، ويتحول لون الإشارات الضوئية على المنافذ في هذه الحالة إلى اللون الأصفر. توجد حالة مماثلة تحدث عند إعادة تشغيل مبدّل، فيفقد المبدّل العميل جميع المعلومات التي استقاها من قاعدة بيانات VLAN، وبالتالي لا يعلم بوجود شبكات VLAN ما عدا الشبكة رقم 1، وبالتالي يصبح المستخدمون الذين لا ينتمون لشبكة VLAN تلك في حالة خمول، مع إشارة ضوئية صفراء، لأن المنافذ ليس لديها شبكة VLAN ترتبط بها. توجد أسباب عدّة لإخفاق بروتوكول VTP في تبادل معلومات VLAN. في ما يلي احتمالات للتحقق منها : تأكد من أنّ المنافذ التي تربط المبدّلات في ما بينها هي جميعها منافذ جذع، لأن بروتوكول VTP لا يعلن عن معلومات الشبكة إلّا عبر الروابط الجذعية. تأكّد من أن المبدّل الخادوم يتوفّر على جميع شبكات VLAN المطلوبة مُعدَّة لنشر معلوماتها. تأكّد من أن المبدّلات لديها خادوم VTP واحد على الأقل لإعلام المبدّلات العميلة بمعلومات VLAN. انتبه عند إعداد اسم نطاق VTP وكلمة السر الخاصة به أنّهما حسّاسان لحالة الأحرف (Case-sensitive). تأكّد من أنّ المبدّلات جميعًا تشغّل الإصدار نفسه من VTP. تحقّق من اسم نطاق VTP وإصداره على المبدّل بالوضع الشفاف. يختلف سلوك المبدّل في الوضع الشفاف حسب إصدار بروتوكول VTP. في الإصدار الأول (VTP 1) يتحقّق المبدّل في هذا الوضع عن اسم النطاق ورقم الإصدار، ولا يعيد توجيه البيانات إلا إذا تطابق هذان الوسيطان مع الإصدار والنطاق اللذين ينتمي لهما المبدّل. أما في الإصدار الثاني فإن المبدّل في الوضع الشفاف يعيد توجيه إعلانات VTP دون النظر في رقم الإصدار أو اسم النطاق. يجب الانتباه إلى أنّ الإصدارين الأول والثاني من بروتوكول VTP لا يدعمان نشر معلومات شبكات VLAN التي يتجاوز معرّفها القيمة 1005 (يُطلَق على شبكات VLAN التي يوجد معرّفها في المجال 1006-4096 اسم شبكات VLAN ذات المجال المُوسَّع Extended range VLAN). تشخيص مشاكل بروتوكول الشبكة الممتدة STP أول ما يجب على مَن يريد تشخيص المشاكل في بروتوكول STP فعله هو أن يكون لديه مُخطَّط شبكة يوضّح المبدّل الذي اختير ليكون الجسر الجذر، وكذلك الروابط التي عطّلها البروتوكول للحصول على شبكة خالية من الحلقات اللامتناهية. الحلقات اللامتناهية هي إحدى المشاكل الأكثر تأثيرًا على أداء الشبكة، وأول ما يدل على حدوثها هو الاستخدام الكبير جدًّا للبث الإذاعي نظرًا لوجود عواصف البث الإذاعي (Broadcast storm). المؤشّر الثاني على الحلقات اللامتناهية هو بطء الشبكة تدريجيًّا ليصل الأمر في النهاية إلى فقدان إمكانية الاتصال نظرًا لوجود الكثير من البيانات التي تدور بين المبدّلات بدون توقّف. المؤشّر الثالث يظهر عند النظر في الإشارات الضوئية على المبدّلات حيث تُظهِر بالتزامن وميضًا شديد السرعة. الحل الأسرع لإيقاف الحلقات اللامتناهية هو إيقاف جميع المنافذ الموجودة على المبدّل المركزي، ثم إعادة توصيلها الواحد بعد الآخر لمعرفة الرابط الذي تسبّب في الحلقة. يمكن كذلك استخدام أوامر التنقيح (Debugging)، مثل الأمر debug spanning tree events، للحصول على تفاصيل أكثر حول ما يحدث على المبدّل الذي يواجه المشكلة. للحؤول دون مشاكل STP فمن الأفضل عدم ترك البروتوكول يختار المبدّل الجذر تلقائيًّا، وبدلًا من ذلك اختيار المبدّل المناسب لذلك يدويّا. وفي الأخير يجب التأكد من أننا نستخدم بروتوكول الشجرة الممتدة السريع للرفع من أداء الشبكة والحصول على حالة مستقرة بسرعة. ترجمة – بتصرّف – للمقال Troubleshooting Switched Network
  2. سنتطرَّق في هذا المقال إلى مصادر قلق في ما يتعلّق بأمن الشبكة ككل، دون أن نقتصر على المبدّلات، ومالذي بإمكاننا فعله للتقليل من الأخطار التي قد تمثّل تهديدًا أمنيًّا للشبكة. سنتعلّم ميزات أمنية أساسية يمكننا تطبيقها لتأمين الشبكات التي تعتمد على أجهزة Cisco. نظرة عامة على أمان المبدلات تنصب الكثير من المنظّمات جدارًا ناريًّا وأجهزة متطوّرة على حواف الشبكة (Edges) لإيقاف الهجمات القادمة من الخارج. لا تُضبَط على المبدّلات والموجّهات سوى إجراءات أمنية دنيا نظرًا لكونها أجهزة داخلية معدّة أساسًا لتلبية الحاجة للاتصالات داخل شبكة المؤسسة. تسمح الكثير من الشركات والمؤسسات الآن لموظّفيها باستخدام حواسيب محمولة يمكنهم التنقل بها بين المنزل ومقر العمل، إلا أن تلك الحرية في الحركة ومكان العمل لها ثمنها المتمثل في التهديد المحدق الذي تمثله، فمنزل الموظَّف ليس لديه في الغالب مستوى التأمين نفسه الذي توفّره المؤسسة داخل شبكتها. يمكن مثلًا أن يُصاب حاسوب الموظَّف بفيروس أو برنامج ضار آخر في المنزل، ثم ينقل الفيروس أو البرنامج الضار إلى مقر العمل عندما يذهب إليه، وفي هذه الحالة تكون الحماية التي توفّرها الأجهزة الأمنية على الحافة محدودة لأن التهديد يأتي من داخل الشبكة. لتلك الأسباب يجب أن نطبّق الإجراءات الأمنية المطلوبة على المبدّلات والموجّهات الداخلية للحماية ضد الهجمات ذات المصدر الداخلي. الممارسات المنصوح بها أمنيا في ما يلي نصائح لممارسات يجب اتباعها عند وضع أجهزة جديدة أو توفير خدمات إضافية يجب التفكير في سياسات تنظيم أمنية، مثل تحديد إجراءات للتدقيق في أجهزة الشبكة، وكذلك تصميم إطار أمني يتحكّم في استخدام أجهزة الشبكة. تأمين المبدّلات بتأمين النفاذ إلىها والبروتوكولات المستخدمة على المبدّل. لتأمين النفاذ إلى المبدّل يجب تعيين كلمة سر للنظام، مثل استخدام الأمر enable secret الذي يجعل المبدّل يتأكد من ألّا يدخل وضع الضبط بصلاحيات واسعة إلا المستخدمون المسموح لهم بذلك. يجب كذلك تأمين النفاذ إلى منفذ التحكم في المبدّل أو الموجّه (Console port) لأنه يسمح لمستخدم بتجاوز الإجراءات الأمنية عبر أمور من قبيل استرجاع كلمة السر. لذا يجب أن نتأكد من أن الوصول الفيزيائي إلى منفذ التحكم محدود. يمكن أن يكون ذلك بوضع المبدّلات في أماكن مغلقة مخصّصة لها أو في أماكن آمنة مثل مركز بيانات (Data center). يجب التأكد من تأمين الاتصالات البعيدة عبر تأمين النفاذ إلى المبدّلات عن طريق Telnet لكي نمنع الولوج بدون إذن عن بعد. إلا أنّ من نقاط ضعف بروتوكول Telnet هو أن البيانات تُتبادل بدون تعمية، لذا يجب استبدال Telnet ببروتوكول SSH كل ما كان ذلك ممكنا. تُفعّل Cisco خدمات HTTP على أجهزة الشبكة لتسهيل الإدارة، إلا أن المخاطر الأمنية تجعل من الأفضل تعطيلها على المبدّلات والموجّهات. يجب كذلك ضبط رسائل التحذير اللازمة لردع المتسللين المحتملين من التجول داخل الأجهزة. تعمل الكثير من الخدمات القديمة منذ سنوات في الخلفية على أجهزة الشبكة بوصفها الخيار الافتراضي، إلا أن الدوافع الأمنية تجعل من المطلوب تعطيل كل تلك الخدمات إنْ لم تكن مستخدمة عمليا. يجب حفظ السجلّات للاستفادة منها في فحص المشاكل والتحقيقات الأمنية. يجب تعطيل بروتوكول CDP على المنافذ التي لا تحتاجه. يجب كذلك تأمين بروتوكول الشبكة الممتدة للتأكد من أنّ خصوصيته غير منتهكة من مبدّل يدّعي أنه هو المبدّل الجذر، لذا يجب أخذ الاحتياطات لتأمين الرابط الجذر. تتفاوض مبدّلات Cisco تلقائيًّا حول إمكانيا الرابط الجذع، إلّا أنّ بإمكان المتسللين تزوير ذلك التفاوض ليقرّروا الرابط الجذع، وبالتالي الحصول على إمكانية الوصول إلى شبكات VLAN جميعها. لهذا السبب يجب تعطيل التفاوض التلقائي حول اختيار الرابط الجذع وتفعيل الرابط الجذع يدويًّا حسب الحاجة. يجب إغلاق المنافذ غير المستعملة للتقليل من إمكانية الوصول الفيزيائي إلى المنفذ. علاوة على ذلك يجب إسناد شبكة VLAN غير مستعملة إلى المنافذ غير المستعملة، وبالتالي حتى لو استطاع المتسلّل تفعيل المنفذ يجده في شبكة VLAN معزولة لا تحوي أي جهاز. بالنسبة للمنافذ المستخدمة، يجب تطبيق ميزات مثل أمن المنفذ (Port security) للتأكد من أنّ الأجهزة المسموح لها هي فقط ما يمكنه النفاذ عبر المنفذ. أمن المنفذ تقيّد ميزة أمن المنفذ الوصول إلى المنفذ بتعريف عناوين MAC الخاصة بالمستخدمين المسموح لهم بالاتصال به. يمكن كذلك تحديد عدد عناوين MAC التي يمكنها الدخول عبر المنفذ. معيار 802.1X للاستيثاق المعتمد على المنفذ إحدى الميزات الأمنية المتقدّمة التي تدعمها مبدّلات Cisco هي المعيار 802.1X للاستيثاق المعتمد على المنفذ (Port-Based Authentication). تطلب هذه الميزة من المستخدمين إدخال بيانات دخول، ثم يطلب المبدّل من خادوم استيثاق، مثل RADIUS، التحقق منها. يكون خادوم الاستيثاق غالبًا منفصلًا عن المبدّل ولكنّه قد يكون برنامجًا يعمل على عتاد المبدّل. ترجمة – وبتصرّف – للمقال Securing the Expanded Network
  3. سنتعلّم من خلال هذا المقال كيفية التوسّع في فكرة التوصيل بالجذع (Trunking)، التي تستخدَم عادة بين المبدّلات، توسيعها لتصل إلى الموجِّه (Router). يعود السبب في استخدام التوصيل بالجذع على مستوى الموجِّه إلى الرغبة في تقليل عدد بطاقات الشبكة التي نحتاجها في تسهيل عمل الموجّه في التوجيه إلى مسارات بين شبكات VLANs. يُتوصَّل إلى الهدف المذكور عبر إنشاء بطاقات شبكة افتراضية، تسميها شركة Cisco بطاقات فرعية للشبكة (Sub-interfaces). سنتعرَّف بعد التطرق إلى المفاهيم الأساسية إلى كيفية إعداد عمليات التوجيه بين شبكات VLAN على موجِّه Cisco. المسار بين شبكات VLAN المختلفة تقوم فكرة شبكات VLAN على تجزئة المبدّل إلى أجزاء متعّددة يُعزَل كل واحد منها عن الأخرى، ويُسمَّى كل جزء شبكة VLAN. إلا أننا نحتاج للمرور عبر موجِّه لتسهيل التواصل بين شبكات VLAN. يحتاج الموجِّه لكي يعمل بالنيابة عن شبكة VLAN إلى أن تكون لديه بطاقة شبكة داخل شبكة VLAN تلك. تعني الفكرة أعلاه أننا بحاجة لعدد بطاقات شبكة على الموجّه بعدد شبكات VLAN التي نريد التوجيه بينها، ولعنوان IP فريد من كل شبكة VLAN. مثلًا، إنْ كانت لدينا ثلاث شبكات VLAN فسنحتاج لثلاث بطاقات، وإنْ كانت لدينا خمس شبكات فسنحتاج لخمس بطاقات على الموجّه. ماذا عن 100 شبكة VLAN؟ أو ربما 5000؟ (العدد الأكبر من شبكات VLAN المدعوم في معيار IEEE 802.1Q هو 4096). يتضح من الأمثلة السابقة أن استخدام بطاقات الشبكة الموجودة فيزيائيًّا قد لا يكون عمليًّا في ظل وجود عدد كبير من شبكات VLAN قد يتعدى عدد بطاقات الموجِّه. مالحل إذن؟ نظرة عامة على التوجيه بين شبكات VLAN اقترح المهندسون تمديد فكرة التوصيل بالجذع المستخدَمة في توصيل المبدّلات لاستخدامها في التخاطب بين شبكات VLAN، وبهذه الطريقة تتصل شبكات VLAN جميعها بالموجِّه عن طريق بطاقة شبكة واحدة فقط. يُلقَّب الموجِّه في هذه بالموجِّه وحيد الذراع (One-arm router) أو الموجه على عصا (On a stick router)، لأن نشاطات التوجيه كلها تتم على بطاقة شبكة واحدة من الموجِّه. تقسيم بطاقة شبكة فيزيائية إلى بطاقات فرعية يحتاج الموجّه لبطاقة شبكة لكل شبكة VLAN لكي يستطيع تسهيل التواصل بين شبكات VLAN، إلا أن فكرة التوصيل بالجذع تسمح بتوصيل شبكات VLAN كلها بطاقة شبكة واحدة، وهو ما يمثّل تحديّا. قلنا إن الاستجابة لهذا التحدي كانت عبر تقسيم بطاقة واحدة إلى بطاقات افتراضية تُسمَّى البطاقات الفرعية. تُسنَد بطاقة فرعية واحدة نيابة عن شبكة VLAN إلى مسار خاص، وذلك بالنسبة لشبكات VLAN كلها. توجِّه كل بطاقة نيابة عن شبكة VLAN المسنَدة إليها. يجب أن يُسنِد مدير النظام يدويًّا بطاقة فرعية إلى شبكة VLAN، إذ لا توجد طريقة للربط التلقائي. التوجيه بين شبكات VLAN باستخدام الرابط الجذر في المعيار 802.1Q نريد في المثال التالي التوجيه بين شبكات VLAN باستخدام الرابط الجذر، كما يعرّفه المعيار 802.1Q، على موجّه Cisco عبر بطاقة الشبكة fa0/0. الخطوة الأولى هي إنشاء بطاقات فرعية على بطاقة الشبكة fa0/0. أنشأنا في الإعدادات الظاهرة أعلاه بطاقتين فرعيتين، fa0/0.1 وfa0/0.2. من المهم الانتباه إلى أنه يجب إنشاء العلاقة بين شبكة VLAN والبطاقة الفرعية أولًا قبل أن تمكن إضافة عنوان IP. نربط بين البطاقة وشبكة VLAN المناسبة عبر الأمر encapsulation dot1Q داخل إعدادات البطاقة الفرعية. رُبِط في المثال بين شبكة VLAN رقم 1 والبطاقة الفرعية fa0/0.1، وبين شبكة VLAN رقم 2 والبطاقة الفرعية fa0/0.2. تجدر الإشارة إلى أنه ليس من الواجب التوافق بين رقم الشبكة واسم البطاقة الفرعية، أي أنه من الممكن ربط الشبكة رقم 2 بالبطاقة الفرعية الأولى fa0/0.1. في الأخير، نحتاج لتحديد أي شبكة هي شبكة VLAN أصلية، نظرًا لكون المعيار 802.1Q يستخدم فكرة شبكة VLAN الأصلية. حدّد المثال الشبكة رقم 1 على أنها شبكة أصلية بتمرير الوسيط native للأمر encapsulation بعد اسم المعيار (dot1Q) ورقم شبكة VLAN، ليصبح الأمر كاملًا encapsulation dot1Q 1 native. ترجمة – وبتصرّف – للمقال Routing Between VLANs
  4. سنتعرّف خلال هذا الدرس على المشاكل المرتبطة بتكرار الاتصالات الذي يدل على وجود روابط إضافية بين المبدّلات. توجد مشكلات تتعلق بتكرار الروابط بين المبدّلات، وهو ما سنتعرّف عليه من خلال هذا الدرس والدروس الموالية، وسنتطرّق لكيفية إنشاء شبكة بدون حلقات تكرار (Loops) ممّا يساعد في التخلص من كل تلك المشكلات المرتبطة بشبكات المبدّلات التي توجد بينها روابط متعددة. سنتعلم في الأخير كيف نجعل بروتوكول الشجرة الممتدة (Spanning tree protocol) أكثر فاعلية وصلابة عبر التعريف ببروتوكول الشجرة الممتدة السريع (Rapid Spanning tree protocol) وكذلك بضبط إعدادات المبدّل الجذر (Root switch) والمبدّل الجذر الاحتياطي ( Backup root switch). تقنيات الربط بين المبدّلات يمكن نشر تقنيّات إيثرنت عدّة عند ربط الاتصال بين المبدّلات، وذلك بغرض توفير النطاق الترددي (Bandwidth) اللازم لربط الاتصال. لذا نستخدم عادة اتصال Fast Ethernet (سرعة تصل إلى 100 ميغابت للثانية) لربط الاتصال بين المستخدم النهائي والمبدّل. ثم نستخدم اتصالًا من نوع Gigabit Ethernet (سرعة تصل إلى 1 جيغابت للثانية) لربط المبدّل بالمبدّل المركزي الذي نسميه مبدّل التوزيعات (Distributions)، نظرًا لكون الكثير من اتصالات Fast Ethernet ستتجمّع على هذا الرابط الصاعد (Uplink). من المهم جدًّا التأكد من وجود نطاق ترددي كافٍ ليتناسب مع تأثير التجميع. يمكننا كذلك استخدام اتصال من نوع 10‎ Gigabit Ethernet ليكون العمود الفقري للشبكة الذي يربط المبدّلات المركزية في ما بينها، والذي يُجمّع الكثير من الاتصالات. يوجد خيار آخر يُعرَف بقناة إيثرنت (Etherchannel) ويقوم على مبدأ دمج روابط عدة محدودة الاتصال في رابط منطقي واحد ذي نطاق ترددي أعرض، وهو ما يسمح بالرفع من قدرة رابط الاتصال عبر توزيع الحمل (Load balancing) داخل رابط قناة إيثرنت وكذلك توفير روابط احتياطية لكون قناة إيثرنت توزّع الحمل بين الروابط المتاحة. إنْ حدث عطل في رابط عضو في قناة إيثرنت فإن آلية توزيع الحمل ستقسم البيانات الموجَّهة لذلك الرابط بين بقية الروابط في القناة. نستطيع تخمين عرض النطاق الترددي الذي نحتاجه لقناة إيثرنت بتجميع حركة البيانات المقدَّرة لكل رابط من القناة. مخطّطات شبكة بروابط مكرّرة نرغب عادة عندما نربط مبدّلات عدّة معًا في استخدام روابط متعدّدة لربط المبدّلات في ما بينها، وبالتالي إنشاء بنية تحتية تعتمد على التكرار، ممّا يحمي من مشكل نقطة الإخفاق الوحيدة (Single point of failure). إلا أن هذا التكرار يتسبّب في مشاكل تتعلّق بحلقات التغذية الراجعة (Feedback loops) على المبدّل، مثل عواصف البث الإذاعي (Broadcast storm) والنسخ المتعدد لإطارات إيثرنت وكذلك عدم استقرار قواعد البيانات الخاصة بعناوين MAC. في ما يلي مراجعة سريعة لكيفية تعامل المبدّل مع إطارات البث الإذاعي. عندما يتلقّى المبدّل إطار بث إذاعي بعنوان الوجهة FFFF.FFFF.FFFF فلن يجده لديه في قاعدة بيانات عناوين MAC. نتيجة لعدم وجود العنوان الوجهة في قاعدة البيانات يُتعامل مع إطار البث الإذاعي كما يُتعامل مع عنوان MAC غير معروف وبالتالي يرسل المبدّل الإطار إلى المنافذ جميعًا ما عدا المنفذ مصدر الإطار. تُعرَف تلك العملية بإغراق المنافذ (Ports flooding). عواصف البث الإذاعي عندما يرسل المضيف X بثًّا إذاعيًّا إلى المبدّل A، فإن المبدّل A يعيد إرسال إطار البث الإذاعي إلى المنافذ كلها ما عدا المصدر، وينتقل الإطار إلى المبدّل B. يعيد المبدّل B الكرّة ويرسل إطار البث الإذاعي إلى المبدّل A الذي يعيدها بدوره إلى الموجّه B، ممّا يتسبّب في حلقة بث إذاعي لا نهاية لها. تحدث حلقات البث الإذاعي تلك كثيرًا وتسمّى بعواصف البث الإذاعي (Broadcast storms). نسخ متعدّدة من إطار البيانات يرسل المضيف X في المثال أدناه إطار بيانات إلى الموجّه Y الذي يتلقّى الإطار مباشرةً. إلا أن إطار البيانات يُرسَل أيضًا إلى المبدّل A الذي لا يتعرَّف على عنوان MAC الخاص بالموجّه Y فيغرق المنافذ جميعًا – ما عدا المنفذ المصدر – بإطار البيانات. يعيد المبدّل B إرسال الإطار إلى جميع المنافذ المتصلة، فيحصل الموجّه Y على نسخة أخرى من إطار البيانات نفسه. يجب على المستقبل، أي الموجِّه A في المثال، التحقق جيّدًا من الرزم للتأكد من أنه لا يعالج إطار البيانات نفسه. عدم الاستقرار في قاعدة بيانات عناوين MAC يرسل المضيف X في المثال أدناه إطار بيانات ضمن بث أحادي إلى الموجِّه Y في الوقت الذي لم يتعرَّف فيه بعد أي من المبدِّلين على عنوان MAC الخاص بالموجِّه. سيعدّ كل من المبدّلين أن المضيف X يرتبط بالمنفذ 1، وبما أن عنوان MAC الخاص بالموجّه لا يوجد حتى اللحظة في قاعدة بيانات العناوين لدى المبدّلين فسيغرق كل واحد منهما المنافذ المتصلة، ما عدا المنفذ المصدر، أي في هذه الحالة المنفذ رقم 2 على كل مبدّل. سيتلقى بعدها كل من المبدّلين الإطار على المنفذ 2، ويظن أن المضيف X أصبح مرتبطًا بالمنفذ 2. بالمختصر، يعود السبب في انعدام الاستقرار في قاعدة بيانات عناوين MAC إلى أنّ المبدّل لا يعرف كيف يفرّق بين إطار بيانات وصله مباشرة وإطار بيانات وصله بطريقة غير مباشرة عن طريق مبدّل ثان. من هنا يأتي الخلط. التخلص من حلقات الإرسال عن طريق بروتوكول الشجرة الممتدة يحب مديرو الأنظمة فكرة مخطّطات الشبكة التي تحوي التكرار في روابط الاتصال، إلا أنّ المبدّلات لا تتعامل جيّدًا مع هذا الأمر لأنها تتسبب في الكثير من حلقات التغذية الراجعة في المبدّل. يكمن الحل في الإتيان بمخطط شبكة بروابط مكرّرة لا تحوي حلقات لا متناهية من التغذية الراجعة، وذلك عن طريق التأكد من تنشيط رابط واحد فقط بين المبدّلات. يُعطَّل الرابط الإضافي بحظر منفذ ظرفيًّا ممّا يكسر الحلقة بين المبدّلات. طُوِّر المعيار IEEE 802.1d ليوحّد طريقة عمل بروتوكول الشجرة الممتدة (STP اختصارًا) ليتأكّد من عدم وجود حلقات لا متناهية ضمن شبكة المبدّلات. كيف يعمل بروتوكول STP الفكرة الأساسية التي يعمل بروتوكول الشجرة الممتدة على تنفيذها هي تحويل الشبكة إلى شكل نجمي لا توجد فيه حلقات تكرار بين المبدّلات. يتبع البروتوكول الخطوات التالية للوصول إلى الهدف المنشود : يحدّد البروتوكول مبدّلًا محوريًّا (مركزيًّا) من بين المبدّلات، تبحث بقية المبدّلات (غير المركزية) عن الطريق الأفضل للوصول إلى المبدّل المركزي، تُعطَّل ظرفيًّا جميع الطرق غير الفضلى للوصول إلى المبدّل المركزي، ليتحول مخطَّط الشبكة إلى الشكل النجمي (مركز ينطلق منه شعاع إلى كل طرف). لا يمكن وجود أكثر من جسر جذري (مبدّل) (Root bridge) ضمن نطاق بث إذاعي في بيئة تعتمد على بروتوكول الشجرة الممتدة. يشبه الأمر أن يكون لديك مبدّل مركزي واحد في شبكة نجمية. يوجد على كل مبدّل غير جذري (Non-root bridge) منفذ جذري واحد فقط. يعثر الجسر غير الجذري على الطريق الأفضل نحو الجذر، ويكون المنفذ الذي يؤدّي لهذا الطريق هو المنفذ الجذري. تُعطَّل كل المنافذ الأخرى المؤدية للجذر ولا تُستخدَم. اختيار المبدّل الذي يؤدي دور الجسر الجذر يعلن كل مبدّل لبقية المبدّلات في الشبكة دوريًّا (كل ثانيتين) عن وحدة بيانات بروتوكول الجسر ( Bridge Protocol Data Unit أو BPDU اختصارا). توجد في وحدة البيانات المعلن عنها الكثير من الوسائط إلا أن أهمها بالنسبة لاختيار الجسر الجذري هما معرّف الجسر (Bridge ID) والجسر الجذري. الجسر الجذري هو عنوان MAC الخاص بالمبدّل، ومعرّف الجسر هو الأولوية الحالية للمبدّل. تأخذ الأولوية على جميع المبدّلات القيمة المبدئية 32768، ويعود السبب في ذلك إلى أن طول حقل الأولوية يبلغ 16 بتًّا وهو ما يجعل القيمة القصوى للحقل هي 65536. العدد الوسط لمجال القيم الذي يمكن أن تأخذها الأولوية هو إذن 32768. عند البدء في إرسال إعلانات BPDU المذكورة أعلاه، يعلن كل مبدّل عن نفسه بوصفه الجسر الجذري. يبدأ بعدها كل مبدّل بالتعرف على الشبكة وعلى المبدّلات الأخرى ويُختار المبدّل الذي سيكون الجسر الجذري. يعتمد بروتوكول الشجرة الممتدة المبدّل الذي لديه أدنى قيمة في حقل الأولوية أو الذي لديه عنوان MAC الأصغر. إن كان لمبدّل أولوية أصغر فسيُعتمَد بغض النظر عن صغر عنوان MAC الخاص به أو كبره. المنفذ الجذر الخطوة الموالية لاختيار المبدّل الذي سيؤدي دور الجسر الجذري هي أن يختار كل جسر غير جذري المسار الأفضل نحو الجذر. فلنأخذ المثال البسيط التالي. فلنفترض وجود رابطين بين المبدّل غير الجذر والمبدّل الجذر (كما في يسار الصورة) : رابط بسرعة 100 ميغابت للثانية والثاني بسرعة 10 ميغابت للثانية، وهو ما يعني أن أسرع مسار للوصول إلى الجسر الجذر هو الرابط ذو 100 ميغابت للثانية. وبالتالي سيختار المبدّل غير الجذر ذلك الرابط ليكون المنفذ الجذر (Root port)، أي المسار الأفضل إلى الجذر. في المثال على يمين الصورة يوجد رابط مباشر بسرعة 100 ميغابت للثانية بين المبدّلين، ورابط متعدّد المسارات والنطاقات الترددية نحو الجذر. لا يمكننا في هذه الحالة الجمع بين النطاقات الترددية للحصول على نطاق ترددي أعرض (110 في المثال)، لأن أحد الرابطين يوجد بعد الآخر. لتسهيل عملية قياس سرعة المسارات يلجأ بروتوكول الشجرة الممتدة إلى فكرة أسهل من النطاقات الترددية التي يصعب تطبيق عمليات بسيطة مثل الجمع عليها، نظرًا لارتباطها بموقع المبدّل. تقوم الفكرة على تحويل النطاق الترددي إلى تكلفة يمكن جمعها ببساطة. لذا نستخدم جدول التحويل التالي. لم يأخذ الجدول الأصلي الذي اقترحه معهد IEEE نطاقات ترددية تتجاوز 1 جيغا، لذا كانت تكلفة الروابط التي تتجاوز 1 جيغا ثابتة عند 1، إلا أن المعهد أعاد مراجعة الجدول ليأخذ السرعات العالية في الحسبان (العمود الموجود في وسط الجدول). اختيار المنفذ الجذر في بروتوكول الشجرة الممتدة قلنا إذن إن البروتوكول يستخدم جدول تكاليف يحوّل النطاق الترددي للرابط إلى تكلفة يمكن للمبدّلات غير الجذر استخدامها للعثور على المسار الأقل تكلفة نحو الجذر. إن نظرنا في المثال المُوضَّح في الصورة أعلاه نجد أن المبدّل X لديه مساران صالحان للاستخدام نحو الجذر Z. يمكن استخدام المنفذ 1 أو المنفذ 2 عبر المبدّل Y. بتحويل النطاقات الترددية إلى تكاليف نجد أن المبدّل X لو استخدم المسار ذا المنفذ رقم 1 فستكون تكلفة الوصول إلى الجذر تساوي 19. أما إذا استخدم المبدّل X المسار الذي يمر عبر المبدّل Y فسيتطلّب ذلك المرور على رابط ذي تكلفة 100 متبوعًا برابط آخر تكلفته 19، أي أن المجموع يساوي 119. بالتالي سيختار المبدّل X المسار ذا التكلفة الأقل للمرور إلى الجذر. أي أن المنفذ 1 سيكون هو المنفذ الجذر. اختار بروتوكول الشجرة الممتدة، عبر استخدام BPDU، المبدّل Z ليكون الجسر الجذر. واعتمد على فكرة تحويل النطاقات الترددية إلى تكاليف لتحديد المسارات الأقل تكلفة بين كل واحد من المبدّلين X وY، ووقع الاختيار بالتالي على المنفذ رقم 1 بالنسبة لكل من المبدّلين ليكون المنفذ الجذر. ممّا يعني أن الرابط بين المبدّلين X وY عبر المنفذ 2 على كل من المبدّليْن ليس ضمن المسار الأفضل ويجب بالتالي تعطيله. يمكن ملاحظة أنه يكفي تعطيل أحد المنفذيْن على طرفيْ الرابط لتعطيله، وبالتالي يُطرَح السؤال أيهما نعطّل، المنفذ 2 على المبدّل X أو المنفذ 2 على المبدّل Y؟ توازن المبدّلات، عند تحديد أي منفذ على رابط ليس ضمن المسار الأفضل، بين تكلفة الوصول للجذر وتعطّل منفذ المسار ذا التكلفة الأكبر. يتساوى المبدّلان في المثال أعلاه في تكلفة الوصول للجذر، وفي هذه الحالة يختار البروتوكول المنفذ الذي لديه معرّف جسر (عنوان MAC) أكبر. أي أن المبدّل Y هو ما سيقع عليه الخيار، وبالتالي يُعدَّل المنفذ رقم 2 على المبدّل Y. لو وُجد رابط يصل بين منفذين من المبدّل نفسه فإن البروتوكول سيختار المنفذ ذا الرقم الأكبر. آلية PortFast للتفريق بين المنافذ يبدأ بروتوكول الشجرة الممتدة في كل مرة يوصَل فيها منفذ مبدّل بجهاز على الشبكة ويُفعَّل، يبدأ عمليات تعرّف واستماع يتأكّد من خلالها من عدم وجود حلقة لا متناهية في الشبكة، ويتعرَّف على عنوان MAC الخاص بالمبدّل لإعادة توجيه البيانات. بروتوكول الشجرة الممتدة ساذج ويتحقّق من أي منفذ متصل ومفعَّل. يستغرق البروتوكول 30 ثانية بعد توصيل جهاز مستخدم نهائي بالمبدّل في انتظار بيانات BPDU على المنفذ ولمعرفة عنوان MAC المتصل بالمنفذ قبل أن يُعلّمه على أساس أنه يمكن إعادة توجيه البيانات إليه. يتسبّب هذا الأمر بمشاكل لبعض تطبيقات المستخدمين التي تحتاج للاتصال بالشبكة في أقل من 30 ثانية. كان تطبيق Novell مثالًا شائعًا على تلك التطبيقات، إذ يحتاج للاتصال بالشبكة في أقل من 15 ثانية، وهو ما جعل بروتوكول الشبكة الممتدة يتسبّب في الكثير من المشاكل لمستخدمي تطبيقات Novell في شبكات المبدّلات. أتت Cisco بفكرة PortFast للتغلب على مشكل التأخر في الاتصال بسبب بروتوكول الشجرة الممتدة، وأصبح بالإمكان ضبط إعدادات المنافذ يدويًّا للذهاب مباشرة إلى وضع إعادة التوجيه، وتجاوز مرحلتي الاستماع والتعرف على العنوان. يمكن تفعيل خاصية PortFast بالذهاب مباشرة إلى بطاقة الشبكة المخصوصة واستخدام الأمر spanning-tree portfast، كما يمكن تنفيذ الأمر spanning-tree portfast default في وضع الضبط العام لتفعيل الخاصية على جميع المنافذ غير الجذعية. نستخدم الأمر show run interface الذي يمكّن من عرض تفاصيل إعدادات بطاقة الشبكة. إيجابيات قناة إيثرنت يعتمد بروتوكول الشبكة الممتدة للتأكد من خلو الشبكة من حلقات لا متناهية على التأكد من وجود رابط نشط واحد فقط بين المبدّلات، ومن مرور المبدّلات جميعًا على الجذر. لذا، إنْ أضفت روابط فيزيائية جديدة بين المبدّلات فسيعطّل البروتوكول تلك الروابط بكل بساطة ولن تُستخدَم. لكن باستخدام قناة إيثرنت يمكن تجميع أو تحزيم كل تلك الروابط الفيزيائية ضمن اتصال منطقي واحد، وهو ما يمكّن من مخادعة بروتوكول الشجرة الممتدة وجعله يتعامل مع كل تلك الروابط كما يتعامل مع اتصال واحد، وبالتالي لا يعطّل تلك الروابط الإضافية. بتفعيل الروابط الإضافية يمكننا عن طريق قناة إيثرنت إنشاء اتصال فائق السرعة بين المبدّلات، وتوزيع حمل حركة البيانات بين الروابط المتعدّدة. تتيح قناة إيثرنت كذلك مزايا التكرار لأن آلية عمل قناة إيثرنت ستوزّع البيانات بين الروابط المتوفرة في حال تعطل أحدها لأي سبب كان. شجرة ممتدة لكل شبكة محلية افتراضية نحتاج لاستيعاب مفهوم "الشجرة الممتدة لكل شبكة محلية افتراضية" (Per VLAN spanning tree،‏ PVST اختصارًا) قبل أن نشرح مفهوم PVST‎‎‎+‎. طُوّر بروتوكول الشجرة الممتدة لإنشاء شبكات مبدّلات فيزيائية خالية من حلقات التكرار غير المتناهية، في حين أن شبكات VLAN مفهوم منطقي وليس فيزيائيّا. لذا يمكن التساؤل كيف يعمل بروتوكول الشبكة الممتدة ضمن بيئة محلية ذات شبكات افتراضية؟ تختلف الإجابة حسب طريقة وسم وحدات البيانات BPDU في بروتوكول التوصيل بالجذع. في بيئة تقوم على بروتوكول ISL يكون لكل وحدة بيانات وسم VLAN خاص بها، ولا ترى شبكة VLAN سوى وحدات البيانات الخاصة بها. بما أن كل شبكة VLAN ترى بيئة الشبكة من منظور مختلف فإن كل شبكة VLAN ستُطبّق بروتوكول الشجرة الممتدة على شبكتها الخاصة. تُسمَّى تلك الآلية التي تجعل كل شبكة VLAN تتوفر على شجرتها الممتدة الخاصة في بيئة تعتمد على بروتوكول ISL للتوصيل بالجذع بالشجرة الممتدة لكل شبكة محلية افتراضية PVST. على الجانب الآخر، يعتمد معيار 802.1Q على شبكة VLAN الأصلية لإرسال وحدات البيانات BPDU. بالتالي يمكن لكل شبكة VLAN رؤية وحدات البيانات بغض النظر عما إذا كانت موجَّهة لها أم لا، وهو ما ينتج عنه شجرة ممتدة واحدة لكل الشبكة المحلية بما فيها من شبكات افتراضية. تُسمَّى تلك الآلية ببروتوكول الشجرة الممتدة المشتركة Common spanning tree protocol ‏(CST). آلية PVST المزيدة (‎PVST‎‎‎+‎) يظهر من النقاش في الفقرة الماضية أن فكرة PVST (الشجرة الممتدة لكل شبكة محلية افتراضية) حل أفضل، لكنّه مُطبَّق فقط في بروتوكول ISL الاحتكاري للتوصيل بالجذع الخاص بشركة Cisco، في حين يُطبّق المعيار IEEE 802.1Q بروتوكول الشجرة الممتدة المشتركة. آلية PVST المزيدة هي إضافة لآلية PVST المعيارية تسمح بعمل كل من بروتوكول الشجرة الممتدة المشتركة (CST) وبروتوكول الشجرة الممتدة لكل شبكة محلية افتراضية (PVST‎) معًا على مبدّلات Cisco، مع دعم المعيار IEEE 802.1Q. تُستخدَم وحدات BPDU موسومة بشبكات VLAN (كما هي الحال في بروتوكول PVST) عند التخاطب بين مبدّلات Cisco وبالتالي الرفع من الأداء، أما عند التخاطب مع مبدّلات من شركة أخرى فيُستخدَم بروتوكول CST للحفاظ على التوافقية. بروتوكول الشجرة الممتدة السريع (المعيار IEEE 802.1w) يستغرق بروتكول الشجرة الممتدة في إصداره المستخدَم في المعيار IEEE 802.1d الذي هو التعريف الموحَّد الأصلي للبروتوكول حوالي 50 ثانية لاختيار منفذ جذر جديد وبدء استخدامه في حال عطب في المنفذ الجذر الأصلي. طُوٍّر المعيار IEEE 802.1w لتحسين أداء بروتوكول الشبكة الممتدة. من التحسينات المُدخَلة في البروتوكول تقليل مدة تجاوز العطب (Failover) والانتقال إلى منفذ جذر جديد، لأن عملية اختيار المنفذ الجذر أصبحت تتضمَّن اختيار منفذ جذر بديل، إلى جانب المنفذ الجذر الأساسي. لذا يتحول المبدّل تلقائيًّا إلى المنفذ البديل المعروف مسبقًا في حالة حدوث عطب على المنفذ الجذر الأصلي، وبالتالي التقليل بقدر كبير في مدة تجاوز العطب الأصلية (50 ثانية). توجد تحسينات أخرى في المعيار IEEE 802.1w مثل تبني فكرة PortFast من Cisco وبالتالي التعرف على المستخدم النهائي مباشرة ومنح المنفذ القدرة على إعادة توجيه الحزم بسرعة دون الحاجة لاستغراق 30 ثانية في مرحلة التحقق ضمن بروتوكول الشبكة الممتدة. أوامر تفعيل PVRST‎ يمكن تفعيل بروتوكول PVRST ‏(Per-VLAN rapid spanning tree، شجرة ممتدة السريعة لكل شبكة VLAN) على مبدّلات Cisco بالذهاب إلى وضع الضبط العام وتنفيذ الأمر spanning-tree mode rapid–pvst. نستخدم أحد الأمرين show spanning-tree vlan أو debug spanning-tree pvst+ للتحقق من عمل البروتوكول. ترجمة – وبتصرّف – للمقال Improving Performance with Spanning-Tree
  5. سنتعرف من خلال هذا الدرس على كيفية تنفيذ ميزات مثل الشبكات المحلية الافتراضية (Virtual private network، أو VLAN اختصارًا) وخدمات التوصيل بالجذع (Trunking) على مبدّلات Cisco. سنتعرف خلال الحديث عن شبكات VLAN على بروتوكولات التوصيل بالجذع والغرض منها، وهي بروتوكولات تعمل عادةً بوجود تقنية شبكات VLAN، ثم نتطرق إلى بروتوكول التوصيل بالجذع في الشبكات المحلية الافتراضية (VLAN trunking protocol‏، VTP)، وهو بروتوكول احتكاري من Cisco، وما يفعله في بيئة شبكات التبديل العاملة بأجهزة Cisco. سنتعلم في آخر الدرس كيفية ضبط التوصيل بالجذع في شبكات VLAN وخدمات VTP ضمن بيئة Cisco. مشاكل الشبكات سيئة التصميم تنتمي أقسام المنظمة جميعًا، في الشبكات ذات التصميم السيئ، إلى نطاق الشبكة نفسه؛ لذا فكل ما يحدث في قسم يمكن أن يزيد تدفق البيانات في الشبكة ويؤثر بالتالي على بقية الأقسام. بما أن الأقسام كلها تتواجد في النطاق نفسه فإن ذلك يتسبب في إنشاء نطاق واسع للبث الإذاعي (Broadcast) مما ينتج عنه تلقي كل قسم للبث الإذاعي الموجَّه للآخر. سينتج عن ذلك أيضًا عدد كبير من عناوين MAC، وعندما لا يتعرف مبدّل على كيفية التعامل مع عنوان MAC فإنه يغرق المنافذ جميعًا. على نفس المنوال، عندما يتلقى المبدّل رزم البث المتعدد (Multicast) من الأقسام المختلفة فسيتعامل معها كما يتعامل مع البث الإذاعي وستُرسَل بالتالي إلى منافذ الأقسام جميعا. هذا الإرسال المبالغ فيه لرزم البيانات إلى كل قسم يتسبب في مشاكل تدبير لمدير النظام، كما يجعل فحص الشبكة وتشخيصها أمرًا بالغ الصعوبة. علاوة على ذلك، يوجد مشكل أمني في كون الإشارة تصل إلى أقسام الشركة جميعها بغض النظر عن تلك المعنية. نظرة عامة على الشبكات المحلية الافتراضية يعود أحد المشاكل الأساسية التي تتسبب فيها الشبكات سيئة التصميم إلى إغراق منافذ المبدّل بالرزم التي لا داعي لها. يمكن التغلب على هذا المشكل بتخصيص مبدل فيزيائي لكل قسم، إلا أنّ هذا الحل مكلف، لذا خرج المهندسون بفكرة تمكّن من الفصل بين إشارات البث الإذاعي بطريقة تحاكي الفصل بينها بمبدّلات فيزيائية. تسمح تلك الطريقة بتجزئة المبدّل منطقيًّا إلى قطاعات يُسمّى كل قطاع منها شبكة محلية افتراضية (VLAN). تهدف الشبكة المحلية الافتراضية إلى الفصل بين إشارات البث الإذاعي الخاصة بكل شبكة. تمنح شبكات VLAN القدرة على تجزئة المبدّل إلى قطاعات منطقية (مُفترَضة)، مما يتيح مرونة في تجميع المستخدمين ضمن شبكات VLAN، حسب معايير محددة. رغم أن الهدف من شبكات VLAN في الأصل هو الفصل بين إشارات البث الإذاعي، إلا أنّ الفصل كان كاملا لدرجة أن كل الإشارات، سواء كانت لبث إذاعي أو أحادي (Unicast)، أصبحت معزولة داخل كل شبكة VLAN. يعد هذا الفصل الشامل ميزة أمنية. إرشادات لتطبيق فضاء عناوين IP تتيح شبكات VLAN لمديري الأنظمة تجزئة الشبكة إلى شبكات محلية افتراضية خاصة بأقسام المنظمة أو المؤسسة، إلا أن التواصل بين تلك الشبكات يحتاج للمرور عبر موجّه. لا يتعرف الموجّه على فكرة شبكات VLAN لأنها مفهوم تجزئة ينتمي للطبقة الثانية. يعيَّن عنوان IP فريد لكل شبكة VLAN حتى يتسنى للموجّه رؤية كل واحدة منها عبر عنوانها، وبالتالي يمكنه تسيير الرزم بينها. تصميم الشبكات المحلية الافتراضية في المنظمات تمثّل كلُّ شبكة VLAN في شبكة مبدّلات بعنوان IP يُستخدَم للتواصل بين شبكات VLAN. لذا يجب بناء مخطط لعناوين IP عبر الشبكات الفرعية، ممّا يعني أنه يجب حجز مجالات من عناوين IP المتجاورة وإعدادها للاستخدام على أجهزة في مناطق محدَّدة من الشبكة. في ما يلي بعضٌ من ميزات العنونة الهرمية : سهولة الإدارة وتشخيص المشاكل. نظرًا لكون العناوين معيَّنة ضمن مجال من العناوين المتجاورة فإنّه من السهل تحديد العنصر المتسبب في المشكل انطلاقًا من عنوان IP الخاص به. الحد من الأخطاء وتقليل حدوثها. يمكن أن يقلّل التعيين المرتَّب لعناوين الشبكة من حالات الفهم الخاطئ للمخطط وتكرار تعيين العناوين نفسها. تقليل المُدخَلات في جدول التوجيه. تزداد الحاجة لعناوين IP مع زيادة شبكات VLAN التي ننشئها. بما أن العناوين معيَّنة ضمن مجالات من العناوين المتجاورة فإنّ بالإمكان تجميع المسارات (Route summarization) لتقليل عدد المُدخَلات التي يعلن عنها بروتوكول التوجيه، وبالتالي تقليل موارد الموجّه والنطاق الترددي (Bandwidth) اللازمين. أنواع البيانات المنقولة على الشبكة كم من شبكة VLAN تحتاجها في شبكتك؟ يعد نوع البيانات المنقولة في الشبكة أحد الطرق التي يمكن الاعتماد عليها لتحديد عدد شبكات VLAN التي نحتاجها. قد تستحق بيانات إدارة الشبكة إنشاء شبكة VLAN خاصة بها، والأمر نفسه ينطبق على هواتف الصوت عبر بروتوكول الإنترنت (Voice over IP, VoIP). إن كانت لدينا أجهزة بث متعدّد (Multicast) فيمكن أن نجعل لها شبكة VLAN خاصة بها. يمكن أن نعدّ كذلك شبكة VLAN خاصة بحركة البيانات العادية أو غير المهمة. إيجابيات شبكات VLAN الخاصة بالصوت عبر الإنترنت من المعتاد عند تصميم شبكات لنقل الصوت عبر بروتوكول الإنترنت تعيين شبكة VLAN منفصلة لنقل الصوت. يعود السبب في ذلك إلى أن الصوت حسّاس جدًّا لتأخر الرزم، وإنْ مزجنا بين البيانات الأخرى والصوت ضمن شبكة VLAN فقد يستبب ذلك في مشاكل تأخير لحركة البيانات الصوتية. علاوة على ذلك، يمكّن جعل الصوت في شبكة VLAN منفصلة من تنفيذ آليات جودة الخدمة (Quality of service, QoS) في الطبقة الثانية على شبكات VLAN من أجل منح الصوت الأولوية في حركة البيانات. وفي الأخير يتيح ذلك لمدير الشبكة قدرة أكبر على تطبيق سياسات أمنية. آلية تنفيذ شبكات VLAN في المبدّلات تعمل مبدّلات Cisco من عائلة Catalyst على تطبيق مبدأ شبكة VLAN بحصر إعادة توجيه البيانات إلى المنافذ الوجهة التي تنتمي لمجموعة VLAN التي ينتمي إليها المنفذ المصدر. لذا، عندما يأتي إطار بيانات إلى منفذ من المبدّل فإن هذا الأخير يجب ألّا يعيد إرسال الإطار إلّا إلى المنافذ التي تنتمي لشبكة VLAN التي ينتمي إليها المنفذ الذي أتت منه البيانات. جوهر عمل VLAN هو أنّ المبدّل يحصُر نقل البيانات سواء تعلقت بالبث الأحادي، أو المتعدّد أو الإذاعي، يحصره في مجموعة من المنافذ يُطلَق عليها اسم شبكة VLAN. أي أن البيانات الصادرة من شبكة VLAN معيَّنة لا تنتقل إلّا إلى منافذ تنتمي لشبكة VLAN المعنية. أنماط الانتماء لشبكات VLAN توضّح الصورة أدناه طرق تعيين شبكات VLAN على منافذ المبدّل. توجد طرق عدّة لتعيين منفذ لشبكة VLAN على المبدّل، بعضها ديناميكي والآخر ثابت، إلا أنه لا يمكن تخصيص سوى منفذ واحد لكل شبكة VLAN. يتمثّل التعيين الثابت في تخصيص منفذ يدويًّا لشبكة VLAN محدّدة، ولن يتغيّر تعيين هذا المنفذ ما لم تعد تعيينه مرة أخرى. أما الطريقة الديناميكية فتتمثل في تعيين منفذ لشبكة VLAN ظرفيًّا حسب المستخدم المربوط بالمنفذ. كيف يتعرّف المنفذ على شبكة VLAN التي عليه ربط المستخدم بها؟ الجواب يكمن في وجود خادوم لسياسات الإدارة (Management policy server) يسجّل عناوين MAC الخاصة بالمستخدمين وشبكات VLAN التي ترتبط بها. لذا، عندما يتصل المستخدم بمنفذ VLAN، يستعلم المنفذ من الخادوم المذكور عن عنوان MAC المتصل ويحدّد بالتالي شبكة VLAN التي عليه ضم المستخدم إليها. فلنتصور الآن أن كل مستخدم يحتاج لشبكة VLAN لحاسوبه الشخصي وأخرى للاتصال الصوتي باستخدام بروتوكول الإنترنت. ذكرنا سابقًا أنه من المفضَّل أن يكون لكل من الصوت والبيانات الأخرى شبكة VLAN خاصة به، وهو ما يعني أننا سنحتاج لمنفذين على المبدّل لكل مستخدم (منفذ لكل شبكة VLAN). ينتج عن هذه المقاربة مضاعفة العتاد اللازم، إنْ أردنا توفير خدمة الهاتف للمستخدمين جميعا، وبالتالي تتضاعف التكلفة. اقترحت Cisco للتغلب على تلك المعضلة السماح بإنشاء شبكة VLAN خاصة بالصوت على منافذ شبكة VLAN أخرى، وبالتالي يستقبل المنفذ نفسه شبكتيْ VLAN، الأولى للبيانات العادية والثانية لبيانات الصوت عبر بروتوكول الإنترنت. توجد قيود يجب الالتزام بها لكي تعمل ميزة "شبكتيْ VLAN بنفس المنفذ" تلك. القيد الأول أنه لا يمكن أن تشترك شبكتا VLAN من النوع نفسه في المنفذ، بمعنى أنه لا يمكن وجود شبكتيْ VLAN للبيانات العادية أو شبكتيْ VLAN للبيانات الصوتية. القيد الثاني أن الشبكة الأساسية (الأولى) يجب أن تكون شبكة بيانات عادية والشبكة الثانوية (الثانية) يجب أن تكون شبكة بيانات صوتية. علاوة على ذلك، لا تعمل ميزة "شبكتيْ VLAN بنفس المنفذ" إلا مع حلول الهاتف عبر بروتوكول الإنترنت التي تقدمها Cisco، ولن تعمل مع حلول الشركات الأخرى. وصل مبدلات عدة في ما بينها نحاول في هذه الفقرة الإجابة على السؤال : "كيف نصل مبدّلات VLAN عدة معا؟". توجد إجابة سهلة وهي استخدام كابل لكل VLAN يمر على المبدّلات جميعا، بمعنى أن الكابل الأول ينطلق من منفذ شبكة VLAN الأولى على المبدّل الأول ويمر على منفذ شبكة VLAN تلك على المبدّل الثاني، ثم على المبدّل الثالث، …إلخ. الأمر نفسه ينطبق على الكابل الثاني مع شبكة VLAN الثانية. إلا أن طريقة الربط هذه غير فعّالة ومكلّفة، لذا أتى مهندسو الشبكات بفكرة أخرى فعّالة ولا تزيد التكاليف. تتمثل هذه الفكرة في استخدام كابل ذي اتصال سريع لوصل شبكات VLAN جميعا. يُسمّى هذا الكابل بالرابط الجذع (Trunk link). قلنا إن الطريقة الأكثر فاعلية والأقل تكلفة لربط مبدّلات تعمل عليها شبكات VLAN هي استخدام الرابط الجذع، إلا أنه توجد مشكلة مرتبطة بتشارك شبكات VLAN في رابط النقل ذاته. عندما نرسل إطارات بيانات من شبكات VLAN المختلفة على الجذع المشترك فإن المبدلات التي تصلها الإطارات ليست لديها وسيلة لمعرفة شبكة VLAN التي يُوجَّه إليها الإطار. يكمن الحل في تعيين وسم (Tag) لكل شبكة VLAN، ثم إلصاق تلك الوسوم على إطارات البيانات، وهكذا عندما تصل إلى المبدّل فإنه ينظر في الوسم ويتعرف من خلاله على شبكة VLAN المطلوبة. وسم إطارات البيانات قلنا إذن إن وسم الإطارات يساعد في الحفاظ على هوية شبكة VLAN التي ينتمي إليها إطار البيانات خلال مروره عبر الرابط الجذع. تشترك الشركات المصنّعة للمبدّلات في مبدأ الوسم، إلا أنها تختلف في طريقة وسم الإطار. اعتمدت شركة Cisco على البروتوكول الاحتكاري ISL‏ (Inter-Switch Link بمعنى الرابط بين المبدّلات) الذي ينشئ غلافًا يحوي إطار إيثرنت محاطًا يمعلومات VLAN، في حين يُدرج بروتوكول IEEE 802.1Q، وهو بروتوكول معياري وضعه معهد IEEE وتدعمه مبدّلات Cisco، معلومات VLAN داخل إطار إيثرنت. من الفروق الأخرى بين البروتوكولين أن بروتوكول ISL يطلب وسم مجموعات VLAN كلها بدون استثناء، في حين يطلب بروتوكول IEEE 802.1Q من كل شبكات VLAN أن تكون موسومة ما عدا واحدة. تُسمّى شبكة VLAN غير الموسومة تلك بشبكة VLAN الأصلية (Native VLAN). يعدّ البروتوكول 802.1Q وسيلة التوصيل بالجذع الأكثر استخدامًا في شبكات التبديل. إطار 802.1Q يدرج بروتوكول 802.1Q معلومات وسم VLAN ضمن إطار إيثرنت. نرى في الصورة التالية الموقع الذي تُدرَج فيه معلومات وسم VLAN داخل إطار إيثرنت. تُدرَج معلومات VLAN بين حقل المصدر (Src) ونوع البيانات (أو طولها حسب إصدار إيثرنت). كيف يمكن إذن لجهاز على الشبكة أن يفرّق بين إطار إيثرنت عادي وإطار بيانات 802.1Q الأطول؟ الجواب أنه علاوة على إدراج معلومات شبكة VLAN يُدرَج كذلك نوع آخر من المعلومات يتعلق بنوع الإطار. يخبر الحقل EtherType في بداية الوسم الجهاز المستقبل بنوع الإطار، وتشير القيمة 0x8100 إلى أن الإطار يتبع المعيار 802.1Q. يوجد كذلك بت للأولوية (Pri) لتسهيل جودة الخدمة (QoS) في شبكات VLAN. شبكات VLAN الأصلية يعتمد بروتوكول 802.1Q مفهوم "شبكة VLAN الأصلية" ، وهي شبكة VLAN لا يحمل فيها إطار 802.1Q أي وسم (معرّف شبكة VLAN). يعود السبب في إدخال مفهوم شبكة VLAN الأصلية إلى الرغبة في السماح بإمكانية التواصل عن طريق شبكة VLAN الأصلية بين بيئة إيثرنت بها شبكات VLAN وبيئة إيثرنت لا توجد بها تلك الشبكات، مثل شبكة تعتمد على موزّع (Hub) بدلًا من مبدّل. تحجز المبدّلات عادة المعرّف 1 لشبكات VLAN الأصلية. الفكرة التي تأسس عليها الرابط الجذع هي السماح لشبكات VLAN جميعًا بالمرور عبره، إلا أنه يوجد مشكل متعلّق بالرابط الجذع. فلنفترض السيناريو التالي الذي تُنشَأ فيه شبكات VLAN يدويًّا على المبدّلات الثلاثة كما هو موضَّح في الصورة. تُنشَأ يدويًّا على المبدّلين X وY الشبكات VLAN 2 ، وVLAN 3 وVLAN 4. في حين لا تُنشَأ على المبدّل المركزي سوى شبكتين VLAN 2 وVLAN 3. عندما تريد شبكة VLAN 4 إرسال بيانات إلى الطرف الآخر فسيتطلب ذلك المرور عبر المبدّل المركزي، إلا أنه ستحدث مشكلة. لا يعرف المبدّل المركزي بوجود شبكة VLAN 4، وبالتالي لن يمكن لبيانات هذه الشبكة المرور عبره. يظن عاملون على الشبكات في كثير من الأحيان أن بيانات VLAN 4 ستمر إلى الجانب الآخر نظرًا لوجود الرابط الجذع، إلا أن هذا ليس الواقع في السيناريو السابق نظرًا لكون المبدّل المركزي لا يعلم بوجود تلك الشبكة. بما أن المبدّل المركزي لديه رؤية مغايرة لشبكات VLAN لا توجد من بينها VLAN 4، فلن يكون قادرًا على تسهيل توصيل VLAN 4 بالجذع بين المبدّلين X وY. لذا ومن أجل الحؤول دون مشاكل التوصيل بالجذع يجب التأكد من أن المبدّلات كلّها لديها المعلومات نفسها عن شبكات VLAN. لذلك الغرض أنشأت Cisco بروتوكول توصيل شبكات VLAN بالجذع VTP‏ (VLAN trunking protocol). ميزات VTP يعمل بروتوكول VTP على إرسال إعلانات عن شبكات VLAN على روابط الجذع فقط. يهدف البروتوكول إلى مزامنة معلومات VLAN بين جميع المبدّلات. توجد ثلاثة أوضاع في بروتوكول VTP : وضع الخادوم (Server)، وضع العميل (Client)، الوضع الشفاف (Transparent). يمكن لمبدّل يعمل وفقًا لوضع الخادوم أن ينشئ معلومات عن شبكات VLAN، أو يعدّل تلك المعلومات أو يحذفها. لا يمكن لمبدّل يعمل على وضع العميل أن ينشئ أو يعدّل أو يحذف معلومات عن شبكات VLAN، إلا أن بإمكانه تعيين منافذ لشبكات VLAN التي علم بوجودها. تتوقّف مهمة بروتوكول VTP هنا على جعل المبدّل العميل يتعرّف على معلومات شبكة VLAN، أما المنافذ المستخدمة لكل شبكة فليس ذلك من مهمة البروتوكول، بل هي مهمة منفصلة تُنجَز محليًّا على المبدّل. يستطيع مبدّل على الوضع الشفاف أن ينشئ شبكات VLAN أو يعدّلها أو يحذفها للاستخدام المحلّي، إلا أنه لا يرسل إعلانات VTP وبالتالي لا يتشارك مع البقية إعدادات VLAN الخاصة به، وإن استقبل إعلانات فإنه يكتفي بتمريرها للمبدّلات العميلة، ويفضّل استخدام إعداداته المحلية. لا يعني كون الإعدادات محلية أن المبدّل في الوضع الشفاف معزول عن البقية. على سبيل المثال، أنشأ مبدّل على الوضع الشفّاف شبكة VLAN 5 محليّا، وفي الوقت نفسه أنشأ مبدّل على وضع الخادوم شبكة بالاسم ذاته (VLAN 5)، وأرسل معلوماتها إلى المبدّل العميل. يستقبل المبدّل العميل المعلومات ويعلم بوجود الشبكة VLAN 5، إلا أن المبدّل الشفاف يستقبل تلك المعلومات هو الآخر، لأن المبدّلات لا تهتم ما إذا كانت معلومات شبكة VLAN تُحصِّل عليها محليًّا أو خارجيّا. ما يهم المبدّلات هو معرّف شبكة VLAN، أي أن المبدّلات الثلاثة أصبحت لديها الشبكة VLAN 5 بغض النظر عن مصدر المعلومة. من هذا المنطلق يُرسَل البث الإذاعي الموجَّه للشبكة VLAN 5 إلى المبدّلات الثلاثة. عمليات بروتوكول VTP تُرسَل إعلانات بروتوكول VTP بصيغة إطارات بث متعدّد لكي تعالج المبدّلاتُ المقصودة، فقط دون غيرها، معلومات البروتوكول. في الحالة العادية تُرسَل معلومات VTP كل ما وُجِدت تغييرات ضمن بيئة VLAN. حتى إنْ لم يحدث تغيير في بيئة VLAN فإن المبدّل الخادوم سيرسِل كل خمس دقائق إعلانات VTP إلى المبدّلات العميلة. كيف يزامن الخادوم والعملاء المعلومات في ما بينهم؟ الإجابة هي ببساطة أنهم ينظرون في رقم المراجعة (Revision number) الذي يوجد ضمن معلومات بروتوكول VTP. عندما يتلقى المبدّل العميل معلومات شبكة VLAN عن طريق بروتوكول VTP فإنه يقارن بين رقم المراجعة الذي تلقاه والرقم الموجود لديه، فإن كان رقم المراجعة الذي تلقاه أكبر يزامن المعلومات الجديدة كلها من خادوم VTP. تجدر الإشارة إلى أن المبدّل العميل يضع معلومات VLAN الجديدة كلها محل المعلومات الحالية لديه. ضبط شبكات VLAN والتوصيل بالجذع في ما يلي خطوات إعداد شبكات VLAN والتوصيل بالجذع: نبدأ بإعداد بروتوكول توصيل شبكة VLAN بالجذع (VTP). نتأكد من تفعيل التوصيل بالجذع لأن بروتوكول VTP لا يرسل الإعلانات إلا عن طريق الروابط الجذعية. ننشئ معلومات شبكة VLAN على المبدّل الخادوم لكي يمكن نشرها على العملاء. تعيين المنافذ يدويًّا لشبكات VLAN. تعيين المنافذ ليس من مهام بروتوكول VTP، الذي يقتصر دوره على مساعدة المبدّلات العميلة في الحصول على معلومات الشبكات، وليس من مهمة البروتوكول التدخل في كيفية استغلال المبدّل للمعلومات التي يتيحها له. إرشادات لضبط بروتوكول VTP تنتظم المبدّلات العاملة ببروتوكول VTP في نطاقات (Domains). تشترك المبدّلات التي تتقاسم النطاق معلومات VTP نفسها ولا يمكن لمبدّل أن ينتمي لأكثر من نطاق واحد. لا يمكن لمبدّلين موجودين في نطاقين مختلفين تقاسم المعلومات. لا يوجد مبدئيًّا أي نطاق على مبدّلات Catalyst ويستمر هذا الوضع إلى أن يُضبَط نطاق أو يتلقى المبدّل إعلانًا عبر الرابط الجذع يحوي معلومات النطاق. وضع VTP المبدئي هو وضع الخادوم. تستخدم المبدّلات مبدئيًّا الإصدار الثاني من بروتوكول VTP بدون كلمة سر. يمكن لمبدّل جديد أن يكون جزءًا من نطاق VTP فور تلقيه إعلانات من خادوم. يمكن لعميل VTP أن يستبدل معلومات قادمة من خادوم إنْ كانت معلومات العميل ذات رقم مراجعة أكبر. الحالة الطبيعية هي أن يكون رقم المراجعة لدى العميل أصغر أو يساوي رقم المراجعة لدى الخادوم. إلا أنه توجد حالة خاصة تتمثل في ربط مبدّل جديد في وضع الخادوم ليحل محل خادوم معطوب. نشير في الأخير إلى أن اسم النطاق لا يمكن حذفه بعد تعيينه. بالإمكان إعادة تسمية النطاق إلا أنه يمنع حذفه. مشاكل التوصيل بالجذع عند استخدام المعيار 802.1Q في ما يلي نصائح بخصوص إعدادات التوصيل بالجذع للحؤول دون مشاكل عند إعداد التوصيل بالجذع في شبكات 802.1Q. يجب التأكد من أن شبكة VLAN الأصلية عند التوصيل بالجذع هي نفسها للشبكة المحلية بكاملها. يجب الانتباه إلى أن شبكة VLAN الأصلية هي إطار إيثرنت غير موسوم. لا يمكن لمنفذ توصيل بالجذع أن يكون آمنًا، لأن المنفذ الآمن مضبوط ليكون منفذ ولوج وليس منفذ توصيل بالجذع. لكي نضبط يدويًّا منفذًا ليصبح رابطًا جذعيًّا فكل ما علينا فعله هو الذهاب إلى بطاقة الشبكة المعنية وتنفيذ الأمر switchport mode trunk. إضافة شبكة VLAN جديدة نتأكّد قبل إضافة شبكة VLAN جديدة أننا نتصل بمبدّل في وضع خادوم VTP أو الوضع الشفّاف، وليس بمبدّل في وضع العميل، ثم نستخدم الأمر vlan في وضع الإعداد العام. على سبيل المثال vlan 2. يمكننا بعد ذلك تسمية الشبكة بالأمر name لتوضيح الغرض منها وسهولة التعرف عليها. لا يهتمّ المبدّل سوى برقم الشبكة ( 2 في المثال السابق). SwitchA#conf t SwitchA(config)#vlan 2 SwitchA(config-vlan)#name lab11 تعيين منافذ المبدّل إلى شبكات VLAN كل ما علينا فعله لتعيين منفذ أو بطاقة شبكة إلى شبكة VLAN هو استخدام الأمر switchport access vlan 2 بعد الدخول في إعدادات البطاقة. يشير الوسيط vlan 2 في الأمر إلى شبكة VLAN ومعرّفها. يمكن باستخدام الأمر show vlan brief عرض منافذ المبدّل وشبكات VLAN التي عُيِّنت لها. ترجمة - وبتصرّف - للمقال Implementing VLANs and Trunk.
  6. cisco icnd1

    سنتعرف من خلال هذا الدرس على كيفية استخدام بروتوكولي Telnet وSSH للنفاذ إلى الأجهزة البعيدة لأغراض إدارة الإعدادات. سنتعلم كيفية بدء جلسات Telnet وSSH، كما سنتعلم كيفية تعليق (Suspend)، استئناف وغلق تلك الجلسات. سنرى في الأخير بعضًا من أوامر IOS، مثل ping وtrace، لاختبار الاتصال ولفحص مشاكل النفاذ عن بعد. استخدام Telnet للاتصال عن بعد بجهاز يعد النفاذ إلى عناصر الشبكة عن بعد باستخدام بروتوكولات الطرفيات الافتراضية مثل SSH وTelnet من المهام الشائعة التي يؤديها مدير الشبكة. الفرق بين بروتوكول SSH وTelnet هو أن الأول يوفر خدمات تعمية (Cryptography) مثل التحقق من الخصوصية (Confidentiality)، وسلامة البيانات (Integrity) والاستيثاق (Authentication)، أما الثاني فالآلية الأمنية الوحيدة المتوفرة هي الاستيثاق من المستخدم بينما تُنقَل البيانات عبر الشبكة دون تأمين. يمكن تنفيذ أوامر في واجهة سطر الأوامر الخاصة بالموجّه، سواء استخدمت بروتوكول Telnet أو SSH للاتصال. يمكنك بمجرد النفاذ إلى الجهاز البعيد القيام بالوظائف الإدارية. عرض اتصالات SSH وTelnet سترغب – غالبًا – في الاتصال بأجهزة بعيدة متعددة من مكان واحد. يمكنك فعل ذلك بدون الحاجة إلى قطع جلسات الاتصال جميعها. يؤدي تنفيذ الأمر telnet متبوعًا بعنوان IP الوجهة إلى الاتصال بالجهاز البعيد. يعني ظهور محث (Prompt) وطلب استيثاق - في حال ضبطه على الوجهة - أن الاتصال بالجهاز البعيد قد نجح. يمكنك بعدها الاتصال عن بعد بالطريقة نفسها بجهاز آخر. يتيح استخدام الأمر show sessions عرض الاتصالات الحالية. تتضمن مُخرجات الأمر عنوان IP الوجهة، وعدد البايتات المتبادلة واسمًا للاتصال. يبين عمود مدة الخمول (Idle) المدة التي ستُنهَى الجلسة فيها إنْ لم تُستخدَم. تعني القيمة 0 في هذا العمود أن مدة الخمول غير محدودة. يحدّد العمود Conn عددًا يعرف الاتصال ويمكن بالتالي الإشارة للاتصال بالمعرّف المذكور كما سنرى. Router#sh sessions Conn Host Address Byte Idle Conn Name 1 192.168.6.21 192.168.6.21 0 0 192.168.6.21 * 2 192.168.6.23 192.168.6.23 0 0 192.168.6.23 لاحظ النجمة (*) في بداية السطر الثاني. تشير هذه النجمة إلى آخر جلسة بدأتها، وهي الجلسة التي ستعود إليها بعد الضغط على زر الإدخال. يمكن استخدام الأمر show users داخل جلسة Telnet لعرض قائمة بالمستخدمين المتصلين (على الجهاز البعيد) سواء كانوا متصلين عن بعد أو مباشرة على طرفية الجهاز، وستظهر نجمة كذلك أمام آخر المستخدمين اتصالا. يعرف العمود الأول من المخرجات (Line) جلسات الاتصال الخاصة بالمستخدمين. Switch#sh users Line User Host(s) Idle Location * 1 vty 0 cisco idle 00:00:00 10.10.98.1 Interface User Mode Idle Peer Address يمكن على نفس المنوال إظهار حالة اتصالات SSH بالأمر show ssh. تعليق واستعادة جلسة Telnet ليس ضروريًا إنهاء الجلسات عندما تكون متصلًا من جهاز بآخر بعيد، بل قد يكفيك تعليق الجلسة. يسمح خيار التعليق باستعادة الجلسة بعد تعليقها. يمكن تعليق الجلسة بعد الولوج إلى الجهاز البعيد بالضغط على الأزرار ‎<‎Ctrl-Shift+6>‎x‎. الترتيب الصحيح هو الضغط بالتوالي على الأزرار Ctrl وShift و6، إبقائها مضغوطة معًا ثم تركها والضغط مباشرة على الحرف x. اضغط زر الإدخال وستعود إلى الجلسة النشطة الأخيرة (الجلسة المُشار إليها بالنجمة عند تنفيذ الأمر show sessions). استخدم الأمر resume متبوعًا برقم الجلسة المعلقة (نتائج الأمر show sessions) لاسترجاعها. كما يمكنك العودة إلى الجلسة بمجرد إدخال رقمها. Router# 2<Enter> [Resuming connection 2 to 192.168.6.23 ... ] Switch# إنهاء جلسة Telnet توجد خيارات عدة لإنهاء جلسة اتصال والخروج منها. يمكن دائمًا الخروج من الجلسة الحالية بالأمر disconnect. إن كانت لديك جلسات عدة مفتوحة يمكن تمرير معرّف الجلسة إلى الأمر السابق لإنهائها. يمكن كذلك استخدام الأمر clear line متبوعًا بمعرف جلسة المستخدم (العمود الأول من مُخرجات الأمر show users) المُراد إنهاؤها. استخدام الأمرين ping وtraceroute لدينا إذن بروتوكولات Telnet، وSSH وCDP؛ وكلها أدوات مفيدة لإدارة الشبكات، وتساعد في بناء مخطّط الشبكة ثم الاتصال عن بعد بالأجهزة وإدارتها وتعيين وسائط الإعدادات وكذلك مراقبة الأجهزة والبحث عن الأخطاء والمشاكل. توجد أداتان أخريان للفحص والبحث عن الأخطاء في الإعدادات وهما الأمران ping وtraceroute اللذين يفيدان في التحقق من وجود اتصال بالشبكة وتحديد مشاكل الاتصال في ما يتعلق باختيار المسار، وجودة الخدمة، وآجال وصول الرزم والإخفاقات المحتملة في الشبكة. ترجمة – وبتصرف – للمقال Accessing Remote Devices
  7. سنتعرّف خلال هذا الدرس على برنامج Cisco لإدارة أجهزة الأمان والموجِّهات SDM (أو Security device manager)، ونصف ميزاته، عناصره الأساسية وخياراته العامة. سنركز على استخدام شاشات الإرشاد (Wizards) لتنظيم الإعدادات وإخفاء تعقيدات الأوامر. مالغرض من Cisco SDM؟ برنامج Cisco SDM هو أداة لإدارة موجِّهات Cisco وأجهزتها الأمنية (مثل الجدران النارية). يتضمن البرنامج مجموعة كبيرة من الوظائف التي تهدف لتسهيل الإدارة، زيادة التوافقية (Interoperability) والرفع من مستوى الأمان. أول ما نشير إليه هو أن البرنامج مُضمَّن، بمعنى أنه مجموعة من الملفات بصيغة HTML وصيغ أخرى تُضمَّن في الذاكرة الوميضية للموجِّه. لذا كل ما عليك فعله هو إدخال عنوان IP الموجِّه في المتصفح وإن كان دعم SDM مفعلًا على الموجِّه فستحصل على واجهة مستخدم رسومية بقوائم تحدد خيارات الإعدادات. يعمل برنامج SDM على إخفاء تعقّد الأوامر وواجهات سطر الأوامر عن مديري الأنظمة مما يسمح بنشر سريع للإعدادات وسهولة فحصها ومراقبتها. يعتمد البرنامج على شاشات الإرشاد التي تعمل بطرح أسئلة وحسب الأجوبة عليها تنشئ إعدادات جاهزة لوظائف محدَّدة. يتوفر البرنامج كذلك على أدوات يضعها تحت تصرف مديري الأنظمة الذين يحتاجون لتحرير لوائح التحكم في الوصول ACLs ‏(Access control lists) والمديرين الذين لا يزالون يعتمدون على ضبط العناصر وسطر الأوامر لتنفيذ عمليات فحص ومراقبة متقدمة. برنامج Cisco لإدارة الموجِّهات والأجهزة الأمنية هكذا يبدو البرنامج. كل ما عليك فعله هو الدخول إلى عنوان IP نشط على الموجّه عبر المتصفح. يُفضَّل استخدام بروتوكول HTTPS والاعتماد عليه من أجل الخصوصية، والسلامة والاستيثاق (Authentication). الصفحة الرئيسية عبارة عن تطبيق شبيه بلوحة تحكم تظهر فيه معلومات عامة عن الموجِّه بما فيها نوع الطراز، والموارد المتاحة وتوفر الميزات الوظيفية. يظهر في المثال أعلاه موجِّه لا يقتصر عمله على الميزات المتعلقة ببروتوكول IP بل يعمل كذلك عمل جدار ناري ذي شبكة افتراضية خاصة (Virtual private network, VPN). تتضمّن لوحة التحكم المكوِّنات والوظائف الخاصة مثل وظائف الأمان، إلى جانب معلومات الإدارة العامة المتعلقة ببطاقات الشبكة وخادوم DHCP. نرى في المثال السابق أن سياسيات الجدار الناري غير نشطة. فرغم أن الموجِّه لديه إمكانيات الجدار الناري إلا أنها إما معطَّلة أو غير مضبوطة. يمكن كذلك رؤية معلومات حية مثل عدد أنفاق حزمة بروتوكول الإنترنت الأمنية (IPsec tunnels) وزبناء VPN المتصلين حاليا بالموجِّه. التوافق بين إصدار SDM وإصدار نظام تشغيل الموجه يُضمَّن برنامج SDM في نظام التشغيل IOS من Cisco، إلا أنه في الوقت نفسه مكوِّّن مستقل. يمكن ترقية برنامج SDM دون الحاجة لترقية نظام تشغيل الموجِّه بكامله. تستطيع بتنفيذ الأمر show version رؤية رقم إصدار نظام التشغيل وكذلك رقم إصدار برنامج SDM. يمكن ترقية إصدار البرنامج، وفي هذه الحالة ستُنسَخ ملفات الترقية إلى الذاكرة الوميضية في الموجِّه، وبالتالي يصبح البرنامج يدعم الإصدارات الجديدة من نظام IOS ومجموعة جديدة من الأوامر. تدعم كثير من موجِّهات Cisco برنامج SDM بما فيها عائلة ISR. يُنصَح باستخدام الإصدارات الحديثة من البرنامج إن أردت دعم الإصدارات الأخيرة من IOS والمجموعة الأحدث من أوامر النظام. التوافق بين إصدار IOS وإصدار SDM مهم جدّا. في الواقع، لن تعمل بعضٌ من إصدارات SDM مع بعض من إصدارات IOS. من أسباب انعدام التوافق أن SDM سيولِّد أوامر تُنفَّذ على نظام التشغيل، ويجب بالتالي أن يولِّد تلك الأوامر لإصدارات مخصوصة من IOS. ضبط الموجه لدعم SDM لا يكفي وجود ملفات SDM على الذاكرة الوميضية للموجِّه، بل يجب تفعيل النفاذ إلى التطبيق وضبطه على الموجِّه. في ما يلي الخطوات اللازمة لذلك. ستحتاج لتفعيل وظيفة HTTP أو HTTPS على الموجِّه حسب ما إذا كنت تريد توفير الخصوصية أم لا. يمكن إنشاء سياسات تقبل اتصالات HTTP ثم ربط المنفذ ببروتوكول HTTPS وبالتالي يناقش المتصفح والموجِّه إجراء معاملة معمّاة (Encrypted transaction)، أي اتصال آمن. في ما يلي الأوامر التي تحتاجها. ! ip http server ip http secure-server ip http authentication local ! الخطوة الموالية هي إنشاء حسابات مستخدمين للنفاذ إلى SDM. سيُطلَب من المستخدمين إدخال معلومات تلك الحسابات عند الاتصال بالموجِّه عبر المتصفح. تتطلب حسابات المستخدمين مستوى الامتيازات 15، وهو المستوى الأعلى ويتضمن الصلاحيات نفسها التي يتمتع بها المستخدم في وضع الإدارة في سطر الأوامر (تذكر أنك تدخل وضع الإدارة بتنفيذ الأمر enable في سطر الأوامر). الخطوة الأخيرة هي تفعيل SSH وTelnet للولوج المحلي ومستوى الامتيازات 15. بدء تشغيل SDM يعمل برنامج SDM بصيغة بريمج جافا (Java applet) داخل المتصفح، لذا أول خطوة هي إدخال عنوان IP نشط للموجه في شريط عنوان المتصفح. تظهر الصفحة الرئيسية لبرنامج SDM في المتصفح ويظهر كذلك صندوق الولوج لإدخال اسم المستخدم وكلمة السر. إنْ استطعت الولوج بحساب لديه مستوى الامتيازات 15 فسيبدأ تنزيل واجهة البرنامج إلى المتصفح. قد يظهر المتصفح تحذيرًا أمنيًّا، ويعود السبب في ذلك إلى أن SDM هو بريمج جافا موقَّع ذاتيا (Self signed). يمكن قبول شهادة التوقيع للجلسة الحالية فقط، كما يمكن قبوله بصفة دائمة. قد تختلف الخيارات حسب المتصفح المستخدم. يصبح بإمكانك استخدام لوحة التحكم بعد الولوج بنجاح إلى البرنامج. شاشات الإرشاد في Cisco SDM يوفر الضبط لمعتمد على شاشات الإرشاد سهولة الإدارة والتسيير وينظم العمل على الموجّهات، كما أنه يسمح لمستخدمين ليست لديهم الكفاءة في استخدام سطر أوامر IOS بإدارة الجهاز ومراقبته. لغالبية خيارات الإعدادات شاشات إرشاد مرتبطة بها. تتعلق بعضٌ من شاشات الإرشاد ببطاقات الشبكة والاتصال، في ما تتعلق أخرى بوظائف أمنية محددة. على سبيل المثال يتيح خيار التدقيق الأمني خيارًا يمكن من خلاله تنفيذ فحص أمني وفقًا لأفضل الممارسات الأمنية أو تبعًا لمُدخلات تحدّدها، كما يوجد خيار لقفل الموجِّه بضغطة زر، وهو ما يتوافق مع بعض السياسات والمعايير الأمنية. يمكن كذلك أتمتة نشر التوقيعات الإلكترونية بما فيها التوقيعات المخصّصة لأنظمة الوقاية من التسللات Intrusion prevention systems (أو IPS اختصارًا) عبر شاشة إرشاد خاصة. في الختام، يعد برنامج SDM أداة فعالة لضبط موجِّهات Cisco. يحتوي البرنامج على شاشات إرشاد سهلة الاستخدام لضبط الإعدادات على نحو عملي مع وجود بعض الخيارات التي تسمح بضبط إعدادات متقدمة. ترجمة – وبتصرف – للمقال Using the Cisco SDM
  8. cisco icnd1

    سنتعلم في هذا المقال كيفية استخدام أوامر مثل copy لنسخ ملفات التشغيل والإعدادات وسنتعرف كذلك على أوامر الفحص مثل show وdebug لمراقبة عمل الأجهزة والتحقق منها. نظام الملفات في IOS وأجهزة Cisco ستحتاج عند إدارة أجهزة Cisco لنقل الملفات ونسخها من مكان إلى آخر، وربما تفعل ذلك مرارًا إنْ كنت تستخدم الشبكة بكثرة لمركزة ملفات الإعدادات وصور نظام التشغيل IOS. الأمر الجيد في نظام IOS هو استخدامه لميزة IOS file system (نظام ملفات IOS،‏ IFS اختصارا) لتوفير واجهة موحدة ومتجانسة لكل أنظمة الملفات التي تستخدمها موجهات سيسكو، بما في ذلك استخدام نوع المسارات نفسه للإحالة إلى أماكن التخزين المختلفة والنسخ منها وإليها. إذا أردت – على سبيل المثال – نسخ الإعدادات النشطة من الذاكرة الحية إلى ذاكرة NVRAM أو الذاكرة الوميضية أو حتى نسخها احتياطيًّا إلى خادوم TFTP فسيكون بإمكانك الإحالة إلى تلك الأماكن ببادئات (Prefixes) عامة ومتجانسة. لذا، يُشار إلى ذاكرة NVRAM بالبادئة nvram‎:‎، إلى الذاكرة الحية بالكلمة المفتاحية system، إلى الذاكرة الوميضية بالبادئة flash:‎ وإلى خادوم TFTP بالبادئة tftp:‎. توجد كذلك معايير وأعراف لتسمية الملفات والمجلدات. إدارة صور نظام IOS من Cisco النسخ الاحتياطي لصور IOS، استعادتها وترقيتها من عمليات الصيانة التي تستخدم نظام ملفات. من المهم الاستعداد للحالات الطارئة التي يُمسَح فيها دماغ الموجِّه (نظام التشغيل) دون قصد أو يصبح معطوبا. يمكن استخدام خادوم TFTP أو FTP على الشبكة ليكون مستودعًا للنسخ الاحتياطي وكذلك ليكون خادومًا مركزيًّا لتخزين ترقيات نظام التشغيل، وتنزيلها إلى الموجِّه وبالتالي ترقيته. تأكد قبل النسخ الاحتياطي لصور نظام التشغيل من إمكانية النفاذ إلى خادوم TFTP على الشبكة ووجود اتصال معه ثم تحقق من أن المساحة المتاحة على الخادوم كافية. يمكن معرفة حجم صور IOS الحالية عبر الأمر show flash. يمكنك كذلك التحقق من متطلبات اسم الملف على خادوم TFTP، إذ قد تختلف حسب نظام تشغيل الخادوم. تفرض بعض من خواديم TFTP إنشاء الملف الوِجهة قبل استقبال الملف المُرسَل من القادوم. التحقق من الذاكرة وفك شفرة أسماء الملفات تُنسَخ الملفات، في أغلب حالات استعادة نظام التشغيل أو ترقيته، من الشبكة إلى الذاكرة الوميضية عبر الأمر copy. تأكد قبل هذه الخطوة من وجود مساحة كافية على الذاكرة الوميضية. إن استخدمت الأمر show flash فسيخبرك السطر الأخير بالمساحة المتوفرة. انتبه كذلك إلى أن الموجِّه سيقترح عليك عند تنفيذ الأمر copy مسح الذاكرة الوميضية قبل نسخ الملفات. قد يكون قبول الاقتراح خطيرًا جدًّا في حال وجود ملفات أخرى على الذاكرة الوميضية مثل ملفات التوقيع الخاصة ببرنامجي SDM (برنامج إدارة الحماية لأجهزة Cisco) وIPS (برنامج Cisco للحماية من التسلل إلى الشبكة). من المهم جدًّا الحفاظ على أعراف تسمية الملفات الخاصة بصور IOS، إذ تخبرك عناصر اسم الملف بالميزات المتوفرة، حالة الضغط (ملف مضغوط أم لا) وأرقام إصدارات ونسخ النظام. إنشاء نسخة احتياطية من نظام التشغيل في ما يلي مثال على الأمر copy‎ ‎flash‎: tftp‎:‎ الذي يأخذ نسخة احتياطية من صورة النظام. Router#copy flash: tftp: Source filename []? c2800nm-ipbase-mz.124-5a.bin Address or name of remote host []? 192.168.0.100 Destination filename [c2800nm-ipbase-mz.124-5a.bin]? !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!! 12094416 bytes copied in 98.858 secs (122341 bytes/sec) Router# سيسألك الموجِّه بعد تنفيذ الأمر عن اسم الملف الذي تريد نسخة احتياطية منه وعنوان خادوم TFTP الذي تريد النسخ إليه. سيُتاح لك بعد ذلك تعيين الاسم الذي تريده لحفظ الملف على الوجهة. سينتج عن الضغط على زر الإدخال دون تحديد اسم للملف الاحتفاظ بالاسم الأصلي. تشير علامات التعجب في مُخرجات الأمر إلى نجاح عملية النسخ. كل علامة تعجب تدل على رزمة UDP منسوخة. يظهر في الأخير عدد البايتات المنسوخ ومدة النسخ. ترقية النظام من الشبكة يتبع استرجاع النسخ الاحتياطية وترقية صورة نظام التشغيل إلى إصدار جديد العملية نفسها. تُنقَل الملفات من خادوم TFTP إلى الذاكرة الوميضية. ستحتاج في كلتا الحالتين إلى إعادة تحميل نظام التشغيل (إعادة تشغيل الموجِّه) لكي تنشط صورة النظام الجديدة ويبدأ في العمل. طريقة عمل الأمر copy بسيطة جدّا. يطلب الأمر إدخال عنوان IP الخاص بخادوم TFTP وكذلك اسم ملف صورة النظام المُراد نقلها واسم الملف على الوجهة. إن لم تكن على الذاكرة الوميضية مساحة كافية لتخزين صورة النظام فسيُطلَب منك مسح الذاكرة قبل النسخ، وهو ما يتحتم عليك فعله إن لم توجد مساحة لاستقبال الملف الجديد. تظهر بعد النسخ مُخرَجات شبيهة بما ذكرناه أعلاه من حيث علامات الاستفهام وملخص البايتات المنقولة. ملفات إعداد الجهاز يمكن كذلك الحصول على ملفات الإعدادات من الشبكة باستخدام بروتوكولات أخرى غير TFTP مثل FTP والنسخ عن بعد. يمكن نسخ ملفات الإعدادات المنقولة مباشرة إلى الذاكرة الحية وجعلها الإعدادات النشطة أو يمكن نسخها إلى إعدادات بدء التشغيل (Startup configuration) ثم إعادة تشغيل الموجِّه وجعلها نشطة. يمكن أن يكون الغرض من الحصول على ملفات الإعدادات هو استعادة نسخة احتياطية سابقة أو توحيد آلية إعداد موجِّهات عدّة عبر الاحتفاظ بالإعدادات في مكان مركزي ونقلها منه إلى الموجِّهات جميعها. يمكن كذلك اللجوء إلى تلك البروتوكولات في النسخ الاحتياطي لملفات الإعدادات، سواء كانت الإعدادات النشطة (الحالية) أو إعدادات بدء التشغيل. الأمر copy في نظام IOS من Cisco ينبغي أن نفهم أن نسخ إعدادات جديدة إلى الإعدادات الحالية (النشطة) عبر الأمر copy لا يُحِل الإعدادات المنسوخة مكان الإعدادات الحالية، بل يدمج الملفات التي تحاول نسخها في الإعدادات النشطة. ينتج عن هذا الواقع أن أي أوامر من الإعدادات الحالية غير متناقضة مع الإعدادات المنسوخة ستبقى؛ أما الأوامر التي تتناقض مع الإعدادات الجديدة فستُبدَل بالإعدادات الجديدة. وهو ما يعني أن النسخ إلى الإعدادات الحالية أقرب ما يكون إلى الدمج والتجميع من استبدال إعدادات مكان أخرى، وبالتالي قد لا تحصل على ما كنت تنتظره من عملية النسخ. يختلف هذا السلوك عن سلوك النسخ بالنسبة لإعدادات بدء التشغيل التي يتسبب استخدام الأمر copy لنقلها في مسح الإعدادات الموجودة وإحلال الإعدادات المنقولة مكانها، وهو ما يعني أن مسح إعدادات بدء التشغيل وإعادة تشغيل الموجِّه هو طريقة أخرى لإعادة التعيين إلى ضبط المصنع، إلى جانب الطريقة اليديوية المتمثلة في تنفيذ الأوامر الواحد تلو الآخر. الأوامر copy run tftp وcopy tftp run يمكن استخدام خواديم TFTP لتكون مستودعًا مركزيًّا لكل الإعدادات. في هذه الحالة يجب دراسة التأثيرات الأمنية لاستخدام تلك الخواديم، إذ أنها لا تدعم الاستيثاق (Authentication) من المستخدمين ولا تعمّي (Encrypt) المعلومات. في ما يلي مثالان، الأول على النسخ الاحتياطي للإعدادات الحالية إلى خادوم TFTP والثاني لاستعادة الإعدادات من خادوم TFTP إلى الإعدادات النشطة. لاحظ صياغة الأمر في الحالتين على التوالي. Router#copy running-config tftp: Address or name of remote host []? 192.168.0.100 Destination filename [router-confg]? !! 712 bytes copied in 1.340 secs (531 bytes/sec) Router# Router#copy tftp: running-config Address or name of remote host []? 192.168.0.100 Source filename []? london.cfg Destination filename [running-config]? Accessing tftp://192.168.0.100/london.cfg... Loading london.cfg from 192.168.0.100 (via FastEthernet0/0): ! [OK - 712 bytes] 712 bytes copied in 9.520 secs (75 bytes/sec) Router# *Mar 1 01:55:16.259: %SYS-5-CONFIG_I: Configured from tftp://192.168.0.100/london.cfg by console Router# الأمران show وdebug يتحكم الأمران show وdebug في الصيانة العامة والشاملة للجهاز، في ما عدا صيانة صور نظام التشغيل وملفات الإعداد اللذين ذكرناهما أعلاه. يعرض الأمر show (مجموعة أوامر في الواقع) معلومات ثابتة تمثل لقطة زمنية من العنصر الذي يُطبَّق عليه الأمر، أما الأمر (أو مجموعة الأوامر) debug فيعرض معلومات حيّة مثل حركة البيانات المارة من الموجِّه وإليه (الأمر debug ip icmp) وإشعارات بروتوكولات التوجيه (الأمر debug ip ospf packet). يفوق ثقل معالجة الأمر debug كثيرًا الأمر show. في الواقع، تأخذ أوامر show لقطة من حالة العنصر وينتهي عملها، أما debug فتستمر في قراءة المعلومات المباشرة، وإن قرّرت عرضها على شاشة الطرفية فستسبب في فوضى وتخلُق الكثير من الثقل على المعالج لدرجة يصبح فيها الموجِّه غير قابل للاستخدام. في ما عدا ذلك فإن الأهداف من الأمرين واضحة. يهدف الأمر show إلى جمع معلومات وإنشاء لقطة من عنصر، أما الأمر debug فيهدف إلى مراقبة عملية أو متابعة حركات البيانات أو سلوك بروتوكول مباشرة بعد حدوثها. يجب الحذر عند استخدام الأمر debug، فهذا الأمر يمكن أن يولّد بيانات كثيرة جدًّا دون أن تكون ذات قيمة لمشكل محدَّد، ويعود السبب في ذلك إلى أن بعض تلك البيانات مُبهَم ويحتاج لفهم دقيق للبروتوكول أو البروتوكولات المفحوصة. حاول ألا تستخدم الأمر debug إلا كملجأ أخير بعد حصر المشكل في مجموعة قليلة من الأسباب المحتملة. يمكن بأخذ تلك القاعدة في الحسبان ترشيح مُخرجات الأمر debug باستخدام لوائح التحكم في الوصول (Access control lists). على سبيل المثال، الاقتصار على عرض تحديثات بروتوكول التوجيه القادمة من موجِّه واحد أو عدم عرض التحديثات غير المتعلقة بوجهة أو شبكة محدَّدة. من القواعد المنصوح بها عند التعامل مع أوامر debug المراقبة الدائمة لنسبة استخدام موارد المعالج للتأكد من أن الفحص لن يتسبب في انهيار الموجِّه، إذ يمكن أن يحدث ذلك. في حالة الشك أوقف جميع أوامر debug بسرعة عبر الأمر no debug all. يمكن كذلك استخدام الأمر undebug all أو un all. انتبه إلى أنه في حال تفعيل مخرجات الأمر debug على الطرفية فلن يمكنك رؤيتها على الاتصالات عبر الطرفيات الافتراضية (الولوج عن بعد) إلا إذا نفذت الأمر terminal monitor. Router# Router#term mon % Console already monitors Router# Router#deb ip icmp ICMP packet debugging is on Router# Router#ping 192.168.0.100 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 192.168.0.100, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 8/12/28 ms Router# *Mar 1 02:04:47.863: ICMP: echo reply rcvd, src 192.168.0.100, dst 192.168.0.200 *Mar 1 02:04:47.879: ICMP: echo reply rcvd, src 192.168.0.100, dst 192.168.0.200 *Mar 1 02:04:47.891: ICMP: echo reply rcvd, src 192.168.0.100, dst 192.168.0.200 *Mar 1 02:04:47.899: ICMP: echo reply rcvd, src 192.168.0.100, dst 192.168.0.200 *Mar 1 02:04:47.907: ICMP: echo reply rcvd, src 192.168.0.100, dst 192.168.0.200 Router# Router#show proc Router#show processes cpu history Router 02:05:09 AM Friday Mar 1 2002 UTC 11111222221111111111 11111 100 90 80 70 60 50 40 30 20 10 0....5....1....1....2....2....3....3....4....4....5....5....6 0 5 0 5 0 5 0 5 0 5 0 CPU% per second (last 60 seconds) 2 111111119317121111111111111111211111111111111111111111111111 100 90 80 70 60 50 40 30 * 20 * 10 * * 0....5....1....1....2....2....3....3....4....4....5....5....6 0 5 0 5 0 5 0 5 0 5 0 CPU% per minute (last 60 minutes) * = maximum CPU% # = average CPU% 26 73 100 90 80 70 60 * 50 * 40 * 30 ** 20 ** 10 ** 0....5....1....1....2....2....3....3....4....4....5....5....6....6....7.. 0 5 0 5 0 5 0 5 0 5 0 5 0 CPU% per hour (last 72 hours) * = maximum CPU% # = average CPU% Router# Router#un all All possible debugging has been turned off Router# ترجمة - وبتصرّف - للمقال Managing Cisco Devices
  9. يهتم هذا المقال بوصف ملفات الإعداد وصور نظام التشغيل في موجِّهات Cisco. سنتعرَّف من خلال المقال على مواقع تلك الصور ونشرح دور سجل الإعداد بهدف تعديل متتالية الإقلاع (Boot sequence). متتالية الإقلاع بعد تشغيل الموجه يكتسي فهم الأحداث التي تتوالى أثناء إقلاع الموجِّه أهمية بالغة في تشخيص المشاكل التي يتعرض لها. ينفذ الموجِّه بداية، مباشرة بعد الضغط على زر التشغيل، مجموعة من اختبارات التشغيل الذاتي (Power-On self tests، أو POST) لفحص العتاد والتحقق من المكوِّنات المتوفرة. يأتي بعد ذلك الدور على تعليمات الإقلاع التي ستخبر الموجّه بالمكان الذي توجد به صورة نظام التشغيل وكيفية تحميلها. ثم تُحمَّل ملفات الإعدادات وبعدها يوفر الموجِّه محثًّا (Prompt) للإعداد والإدارة عبر منافذ التحكم ووسائل أخرى إن كان الموجِّه معدًّا لذلك. من المهم في هذا الإطار فهم الخيارات البديلة المتاحة من أجل العثور على صورة نظام التشغيل وملفات الإعدادات وتحميلها. تعدّ المكوِّنات مثل سجل الإعدادات (Configuration register) وأوامر نظام الإقلاع نقاطًا حاسمة في تخصيص عملية الإقلاع، إذ تتيح لمدير النظام تخصيص ترتيب الخيارات والخيارات البديلة. العتاد الداخلي للموجه تبدأ عملية الإقلاع من عناصر العتاد الموجود داخل الموجِّه. في ما يلي بعض من هذه المكوِّنات: بطاقات الشبكة، وحدة المعالجة المركزية (Central Processing Unit, CPU)، ذاكرة القراءة فقط (أو الذاكرة الميتة) (Read-only memory, ROM)، ذاكرة الوصول العشوائي غير المتطايرة (Non-volatile Random Access Memory) التي تمثل سجل الإعدادات، الذاكرة الوميضية (Flash memory)، ذاكرة الوصول العشوائي (أو الذاكرة الحية) (Random Access Memory). تمكِّن بطاقات الشبكة من التواصل مع المحيط، أما المعالج فيتولى تشغيل بقية المكوِّنات. توجد مكونات خاصة مثل الذاكرة الميتة التي يوجد بها اختبار التشغيل الذاتي (POST) الذي يعد تنفيذه الخطوة الأولى من متتالية الإقلاع، علاوة على وضع مراقبة الذاكرة الحية المعروف بالصدفة (Shell) وهو واجهة سطر أوامر لاستعادة البيانات واسترجاع صور نظام التشغيل المعطوبة. توجد كذلك في الذاكرة الميتة في موجهات Cisco نسخة مُصغَّرة من نظام التشغيل (IOS) تعمل عندما يخفق تشغيل صورة النظام الموجودة في الذاكرة الوميضية. كما يوجد برنامج الإقلاع في هذه الذاكرة. ينظُر برنامج الإقلاع بعد اكتمال اختبار التشغيل الذاتي إلى سجل الإعدادات الذي يحدد ترتيب الخطوات التالية من الإقلاع. يُخزَّن سجل الإعدادات، وهو ملف بحجم 16 بتًّا، في ذاكرة الوصول العشوائي غير المتطايرة (NVRAM)، وهي ذاكرة حية لا تفقد محتواها بعد إعادة تشغيل الموجِّه. توجد في ذاكرة NVRAM، إضافة إلى سجل الإعدادات، ملفات الإعداد الخاصة ببدء تنفيذ نظام التشغيل. يطلب سجل الإعدادات – مبدئيًّا – من برنامج الإقلاع تحميل صورة نظام التشغيل من الذاكرة الوميضية (Flash) إلى الذاكرة الحية (RAM) ليبدأ عمله. تشبه الذاكرة الوميضية في بعض الموجّهات نظام ملفات (File system)، ولذا يمكن استخدامها لتخزين أنواع أخرى من الملفات مثل الشهادات الرقمية أو حتى تطبيقات الإدارة مثل Cisco SDM. يبدأ نظام التشغيل عمله من الذاكرة الحية، وهي ذاكرة تفقد محتواها مع إعادة تشغيل الجهاز. تحوي الذاكرة الحية، إضافة إلى نظام التشغيل، كل المعلومات اللازمة لعمل الموجّه مثل ملف الإعدادات التي يجري تنفيذها ومعلومات متغيرة أخرى تُستخدَم – على سبيل المثال – في بروتوكولات التوجيه. وظائف الذاكرة الميتة تحظى الذاكرة الميتة (ذاكرة القراءة فقط) بأهمية كبيرة في عملية الإقلاع. لا يقتصر دور الذاكرة الميتة على احتضان الشفرة البرمجية التي تتحقق من عمل عتاد الموجِّه والمكوِّنات الموجودة، بل إنها تحوي كذلك شفرة الإقلاع التي ترشد الموجِّه في البداية عبر التعليمات أثناء التهيئة، وتقرأ سجل الإعدادات لتحديد كيفية إقلاع نظام التشغيل IOS. يوجد كذلك وضع مراقبة الذاكرة الميتة وهو صدفة أو نظام تشغيل بوظائف دنيا يسمح للمستخدمين بالولوج إلى واجهة سطر أوامر تستخدَم للاختبار، فحص المشاكل وأمور أخرى مثل استعادة كلمات السر. العثور على صورة نظام IOS من Cisco يعد نظام تشغيل الموجِّه الدماغ الذي ينفذ كل عملياته. تخبر قيمة في سجل الإعدادات شفرة الإقلاع بالمكان الذي يجب النظر فيه للعثور على صورة نظام التشغيل. لقيم السجل دلالات مختلفة، وهي قيم يمكن تحريرها وتعديلها لتخصيص ترتيب العمليات وتهيئة الموجِّه لبدء العمل. توجد صورة نظام التشغيل مبدئيًّا في الذاكرة الوميضية، إلا أنّ بإمكانك تعديل قيم سجل الإعدادات لجعل شفرة الإقلاع تبحث عن نظام التشغيل في مكان آخر. توجد خيارات متعددة للبحث عن نظام التشغيل وهو خواديم TFTP، الذاكرة الوميضية، أو ملفات مختلفة في الذاكرة الوميضية إنْ وجد بها أكثر من ملف واحد، أو حتى نسخة مصغَّرة من النظام موجودة في الذاكرة الميتة. إنْ لم يوجد أو يُضبَط أي من الخيارات السابقة، ولم تحتو الذاكرة الوميضية على صورة من نظام التشغيل، فإن شفرة الإقلاع ستحاول البحث عن نظام التشغيل على خادوم في الشبكة المحلية. تبحث شفرة الإقلاع عن خواديم TFTP وتبحث عليها عن ملفات بنمط تسميات مخصوص. إن أخفقت تلك المحاولات كلها فإن شفرة الإقلاع تحاول تحميل صورة مساعد الإقلاع، وهي مجموعة من وظائف IOS موجودة على الذاكرة الميتة. الملجأ الأخير بعد كل ما سبق هو وضع مراقبة الذاكرة الميتة (ROMMON)، والذي توجد به خيارات عدة للعثور يدويًّا على نظام التشغيل وتحميله إلى الذاكرة الحية ليبدأ الموجّه في العمل. تحميل صورة نظام IOS من الذاكرة الوميضية من المهم أن نفهم أنّ أنواع موجِّهات Cisco وأصنافها المختلفة يمكن أن تضيف تغييرات وتنويعات على عملية الإقلاع المشروحة أعلاه. إن تبع الموجّه عملية الإقلاع الافتراضية وعثر على صورة IOS في الذاكرة الوميضية فسيحاول تحميلها إلى ذاكرة الوصول العشوائي (الذاكرة الحية، RAM). يمكن أن نجد حالات لا يتوفّر فيها الموجِّه على ما يكفي من الذاكرة الحية لاستقبال صورة نظام التشغيل. تستطيع بعض أنواع الموجّهات في هذه الحالة تنفيذ صورة نظام التشغيل مباشرة من الذاكرة الوميضية. تلجأ أنواع أخرى من الموجّهات إلى استخدام نسخة مضغوطة من نظام التشغيل، وهو ما يعني وقتًا أطول قليلًا في فك الضغط أثناء تحميل صورة النظام إلى الذاكرة الحية. في العادة، لا تكون صور النظام التي تُنفَّذ مباشرة من الذاكرة الوميضية لا تكون مضغوطة. يمكن بالنظر في اسم صورة النظام معرفة ما إذا كان مضغوطًا أم لا. تحميل الإعدادات تحاول عملية الإقلاع، بعد تحميل نظام التشغيل إلى الذاكرة الحية، تحميل ملفات الإعدادات. توجد لهذا العنصر خيارات مشابهة من حيث مكان التخزين لخيارات صورة النظام. المكان الافتراضي لملفات الإعدادات هو ذاكرة الوصول العشوائي غير المتطايرة (NVRAM)، لكن إن كانت تلك الذاكرة فارغة أثناء الإقلاع فإن الموجِّه سيدخل في عملية التثبيت الذاتي (Auto install) التي ستحاول تلقائيا تنزيل ملف إعدادات من خادوم TFTP. تحاول عملية التثبيت الذاتي أولًا الحصول على عنوان IP عبر أحد بروتوكولات التمهيد (Bootstraping) مثل SLARP أو BOOTP؛ وهي بروتوكولات شبكية تسمح لجهاز عميل بالتعرف على عنوان IP الخاص به، وعنوان IP خادوم واسم ملف يُحمَّل في الذاكرة الحية لتنفيذه. يتحول الموجِّه إن أخفقت هذه العملية إلى أداة التثبيت التي تسمح لمدير النظام بتحديد إعدادات أساسية عبر الإجابة على أسئلة متتالية. من المهم في جميع الأحوال الانتباه إلى الفروق بين ملفات الإعدادات في الذاكرة الحية وتلك الموجودة في ذاكرة الوصول العشوائي غير المتطايرة. تحوي الذاكرة الحية الإعدادات النشطة حاليًّا، وتتغير هذه الإعدادات في كل مرة تنفذ فيها أمرًا عبر أداة الإدارة. لا يوجد حفظ تلقائي للإعدادات النشطة، وبالتالي لن تكون متوفرة إن أعيد تشغيل الموجِّه قبل حفظها. تُخزَّن الإعدادات المحفوظة عبر عملية يدوية ضمن ذاكرة NVRAM. ستحتاج لهذا الغرض لاستخدام الأمر copy running config start config أو الخيارات المتعددة الأخرى مثل الأمر writemem. فقط بعدها تصبح الإعدادات متاحة عندما يُعاد تشغيل الموجه. في ما يلي الأوامر التي تعرض الإعدادات المحفوظة في الذاكرة الحية و ذاكرة NVRAM على التوالي. RouterA#show running-config Building configuration... Current configuration : 980 bytes ! Version 12.4 RouterA#show startup-config Using 1082 out of 57336 bytes! ! Version 12.4 تحديد القيمة الحالية لسجل الإعدادات يظهر من متتالية الإقلاع، التي شرحنا خطواتها أعلاه، أن سجل الإعدادات عنصر أساسي لكونه المسؤول عن تعيين المكان الذي توجد فيه صورة نظام التشغيل لتحميلها إلى الذاكرة الحية. يمكن مراجعة القيمة الحالية لسجل الإعدادات بالأمر show version. انظر في السطر الأخير من المثال التالي لتنفيذ الأمر المذكور، وستجد قيمة سجل الإعدادات، وهي عدد سداسي عشري من 16 بتّا، ولكل بت معنى خاص بالنسبة للموجِّه. RouterA#show version Cisco IOS Software, 2600 Software (C2691-ADVENTERPRISEK9-M), Version 12.4(25d), RELEASE SOFTWARE (fc1) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2010 by Cisco Systems, Inc. Compiled Wed 18-Aug-10 05:35 by prod_rel_team ROM: ROMMON Emulation Microcode ROM: 2600 Software (C2691-ADVENTERPRISEK9-M), Version 12.4(25d), RELEASE SOFTWARE (fc1) RouterA uptime is 2 minutes System returned to ROM by unknown reload cause - suspect boot_data[BOOT_COUNT] 0x0, BOOT_COUNT 0, BOOTDATA 19 System image file is "tftp://255.255.255.255/unknown" This product contains cryptographic features and is subject to United States and local country laws governing import, export, transfer and use. Delivery of Cisco cryptographic products does not imply third-party authority to import, export, distribute or use encryption. Importers, exporters, distributors and users are responsible for compliance with U.S. and local country laws. By using this product you agree to comply with applicable laws and regulations. If you are unable to comply with U.S. and local laws, return this product immediately. A summary of U.S. laws governing Cisco cryptographic products may be found at: http://www.cisco.com/wwl/export/crypto/tool/stqrg.html If you require further assistance please contact us by sending email to export@cisco.com. Cisco 2691 (R7000) processor (revision 0.1) with 187392K/9216K bytes of memory. Processor board ID XXXXXXXXXXX R7000 CPU at 160MHz, Implementation 39, Rev 2.1, 256KB L2, 512KB L3 Cache 2 FastEthernet interfaces 1 Serial(sync/async) interface DRAM configuration is 64 bits wide with parity enabled. 55K bytes of NVRAM. 16384K bytes of ATA System CompactFlash (Read/Write) Configuration register is 0x2102 قيم سجل الإعدادات سجل الإعدادات هو – كما أسلفنا – قيمة من 16 بتًّا، ولكل منها معنى محدَّد. يمكنك استخدام بعض من تلك البتات لتحميل نظام التشغيل دون تحميل ملف الإعدادات، وهو أمر يُلجَأ إليه عادة عند استرجاع كلمة سر مفقودة؛ أو يمكنك ببساطة تعديل الإعدادات الفيزيائية لمنفذ الإدارة بمنح قيمة معيَّنة لبتات محدّدة. تتحكم البتات الأربعة الدنيا في عملية الإقلاع، ولهذا السبب يُطلَق عليها اسم "حقل الإقلاع" (Boot field). يؤدي تغيير قيم حقل الإقلاع إلى تغيير ترتيب الخطوات أثناء عملية الإقلاع، وبالتالي تغيير أماكن البحث عن صور نظام التشغيل. على سبيل المثال، تعني القيمة 0 في الحقل أن الموجِّه سيقلع باستخدام وضع مراقبة الذاكرة الميتة (ROMMON). تذكر أن وضع المراقبة يُستخدَم عادة لاسترجاع كلمات السر ولطرق أخرى في البحث عن المشاكل. إذا كانت قيمة الحقل تساوي 1 فسيقلع الموجِّه من الصورة المصغَّرة من نظام التشغيل الموجودة في الذاكرة الميتة (ROM). تعني أي قيمة من 2 إلى F أن الموجِّه سيفحص ذاكرة NVRAM بحثًا عن أوامر نظام الإقلاع. يمكن بعد ذلك تنفيذ أوامر نظام الإقلاع متعدّدة علمًا أن ترتيب الأوامر مهم، إذ يحدّد الأماكن التي تريد أن تُحمَّل منها صور نظام التشغيل والخيارات الاحتياطية في حال أخفق الخيار الأول. في ما يلي مثال لأوامر تحاول تحميل النظام من ملفين مختلفين على الذاكرة الوميضية، وفي حال أخفق التحميل من الاثنين فسيحاول الموجِّه تحميله من خادوم TFTP. RouterA#conf t RouterA(config)#config-register ? <0x0-0xFFFF> Config register number Router(config)#boot system flash:c2800nm-advipservicesk9-mz.124-20T1.bin Router(config)#boot system flash:c2800nm-ipbase-mz.123-8.T11.bin Router(config)#boot system tftp://10.1.1.1/c2800nm-advipservicesk9-mz.124-20T1.bin الأمر show version تجب إعادة تشغيل الموجِّه عند تغيير قيمة سجل الإعدادات. إن غُيِّرت قيمة السجل ثم نُفِّذ الأمر show version فستظهر القيمة الحالية ثم القيمة التي ستُعيَّن بعد إعادة تشغيل الموجِّه. من المهم جدّا أن نفهم أنه حتى ولو كانت البتات الأربعة الأخيرة من سجل الإعدادات تتحكم في عملية الإقلاع، فإن البتات الأخرى لديها كذلك معان خاصة. تُمثَّل البتات الأربعة الأخيرة بالرقم الأخير في القيمة السداسية العشرية لسجل الإعدادات، لذا تأكد من عدم تغيير الأرقام السداسية العشرية الأخرى لكي لا تفقد القيمة التجانس في دلالتها، وينتهي بك المطاف أمام موجِّه غير قادر على الإقلاع. الأمر show flash تأكد من إعداد اسم صورة النظام على نحو صحيح عند استخدام أوامر نظام الإقلاع لتخصيص ترتيب الخيارات الاحتياطية لتحميل نظام IOS أو عند تحديد ملفات لصور نظام التشغيل في الذاكرة الوميضية. يمكن التأكد من أسماء الملفات بالأمر show flash والنظر في المخرجات لمعرفة ملفات صور النظام والخيارات النشطة حاليا. Router#show flash -#- --length-- -----date/time------ path 1 74786164 Sep 14 2011 01:02:56 +02:00 c2900-universalk9-mz.SPA.151-4.M1.bin 2 2903 Sep 14 2011 01:11:22 +02:00 cpconfig-29xx.cfg 3 2941440 Sep 14 2011 01:11:38 +02:00 cpexpress.tar 4 1038 Sep 14 2011 01:11:46 +02:00 home.shtml 5 115712 Sep 14 2011 01:12:02 +02:00 home.tar 6 1697952 Sep 14 2011 01:12:44 +02:00 securedesktop-ios-3.1.1.45-k9.pkg 7 415956 Sep 14 2011 01:13:20 +02:00 sslclient-win-1.1.4.176.pkg 176508928 bytes available (79978496 bytes used) ترجمة – وبتصرف – للمقال Managing Router Startup and Configuration
  10. cisco icnd1

    يستخدم مديرو الأنظمة بروتوكول Cisco للاستكشاف CDP (اختصار لـ Cisco Discovery Protocol) للحصول على معلومات عن أجهزة Cisco المتصلة مباشرة بجهاز معيَّن. يعمل البروتوكول في الطبقة الثانية، وهو ما يجعل قدراته في الاستكشاف محصورة على الأجهزة المتصلة مباشرة. يعد CDP أداة فعّالة للبدء في فهم تخطيط الشبكة عبر النظر في الأجهزة المجاورة لجهاز محدَّد. يتميّز بروتوكول CDP بأنه مستقل تمامًا عن أي بروتكول من الطبقات العليا أو من الطبقة الثالثة (مثل IP). على الرغم من أن غالبية شبكات الحواسيب الموجودة الآن هي شبكات TCP/IP، إلا أن بروتوكول CDP مفيد جدَّا لاستكشاف أجهزة Cisco المتصلة في الشبكة والحصول على معلومات قيّمة عنها (بما في ذلك عنوان IP) في حالة تعذر الاستكشاف عبر بروتوكولات تجميعة TCP/IP نتيجة لعدم ضبطها أو لضبطها بطريقة خاطئة. بروتوكول CDP هو بروتوكول احتكاري (Proprietary) خاص بأجهزة Cisco. استكشاف الجوار عبر بروتوكول CDP لا يمكن لبروتوكول CDP، لكونه بروتكولًا من الطبقة الثانية، اكتشاف الأجهزة غير المتصلة به مباشرة. إن سجّلت الدخول إلى مبدِّل يتصل بموجِّه عبر جهاز شبكي آخر، وأردت التعرف على خاصيات الموجِّه (الذي لا تتصل به مباشرة) عن طريق بروتوكول CDP، فستحتاج للدخول إلى الجهاز الذي يفصل بين المبدِّل والموجِّه أولًا ثم اكتشاف الأجهزة المتصلة به مباشرة، أي الموجِّه. تتضمَّن المعلومات المُتحصَّل عليها أمورًا مهمة تمكِّن من التعريف بالجهاز من ناحية العتاد الذي يستخدمه، مثلًا موجِّه من نوع Cisco 2800 Series، وقدراته من ناحية الميزات المدعومة، ومعرِّف الجهاز الذي سيكون غالبًا اسم المضيف الخاص به، والمنافذ المستخدَمة للاتصال، وكذلك لائحة بعناوين طبقة الشبكة والبروتكولات التي تدعمها؛ فبالرغم من أن بروتوكول CDP يعمل على الطبقة الثانية إلّا أن بإمكانه تجميع معلومات عن الطبقة الثالثة وعرض عناوين IP. استخدام بروتوكول CDP يُفعَّل بروتوكول CDP افتراضيًّا على أجهزة Cisco، وهو بروتوكول بسيط وسهل الاستخدام. يمكن تعطيل البروتوكول في وضع الضبط العام بالأمر no cdp run وإعادة تفعيله في الوضع العام بالأمر cdp run. يمكن كذلك تفعيله أو تعطيله على مستوى بطاقات الشبكة بالأمرين السابقين على التوالي. يتطلب تفعيل البروتوكول على مستوى بطاقة الشبكة تفعيله في وضع الضبط العام. من السهل عرض معلومات البروتكول، وكل ما تحتاجه هو تنفيذ الأمر show cdp neighbors وسيبدأ عرض معلومات عن الأجهزة المجاورة. في ما يلي مثل على المعلومات التي يعرضها الأمر show cdp neighbors. تظهر أجهزة Cisco المتصلة مباشرة بالجهاز (RouterA وRouterB في المثال)، بطاقات الشبكة المحلية التي تتصل عبرها بالجهاز المجاور، وبطاقات الشبكة التي يتصل عبرها الجهاز المجاور بجهازك (Port ID). تظهر كذلك المنصة (نوعية الجهاز) وإمكانياته التي تسمح لك بمعرفة ما إذا كان الجهاز يعمل على الطبقة الثالثة (موجِّه مثلًا) أو مجرد مبدل يربط بين أجهزة الشبكة المحلية. يشير الحقل Hold time (مدة التمسك) إلى أننا أمام بروتوكول ديناميكي. يعلن بروتوكول CDP دوريًّا عن إمكانيات الأجهزة التي يعمل عليها. يفعل ذلك افتراضيًّا كل ستين ثانية. تفسّر الأجهزة قيمة هذا الحقل على أنها المدة التي يجب أن تحتفظ خلالها بمعلومات الجوار قبل التخلص منها، أي أنه عدّاد زمني لتحديد أجل معلومات قد تكون تغيرت بعد الحصول عليها. RouterB#show cdp neighbors Capability Codes: R - Router, T - Trans Bridge, B - Source Route Bridge S - Switch, H - Host, I - IGMP, r - Repeater Device ID Local Intrfce Holdtme Capability Platform Port ID RouterA.lab.local Ser 0/0 169 R S I 2691 Ser 0/0 RouterC.lab.local Ser 0/1 130 R S I 2691 Ser 0/0 مُخرَجات الأمر السابق أقرب للمعلومات المختصرة إذ يظهر كل جهاز مجاور في سطر مع معلومات موجزة عنه. إن أردت معلومات مفصلة عن الجوار فالأمران show cdp neighbors detail وshow cdp entry يؤديان هذه المهمة. في المثال التالي يعرض الأمر show cdp neighbors detail الذي ننفذه من الموجِّه RouterA معلومات تفصيلية عن الموجِّه RouterB الذي يتصل به مباشرة. يظهر عنوان IP الخاص بالموجِّه RouterB (أي ‎‎‎‎‎10.1.1.2) علاوة على المنصة وإمكانيات الجهاز، ومعلومات عن إصدار نظام التشغيل الموجود على الجهاز (الإصدار، والميزات ومعلومات حقوق الاستخدام). RouterA#show cdp neighbors detail ------------------------- Device ID: RouterB.lab.local Entry address(es): IP address: 10.1.1.2 Platform: Cisco 2691, Capabilities: Router Switch IGMP Interface: Serial0/0, Port ID (outgoing port): Serial0/0 Holdtime : 126 sec Version : Cisco IOS Software, 2600 Software (C2691-ADVENTERPRISEK9-M), Version 12.4(25d), RELEASE SOFTWARE (fc1) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2010 by Cisco Systems, Inc. Compiled Wed 18-Aug-10 05:35 by prod_rel_team advertisement version: 2 VTP Management Domain: '' أوامر إضافية في بروتكول CDP يتوفر بروتكول CDP على الأمر show cdp traffic الذي يعرض مجموع الرزم الداخلة والخارجة، ومجموع الرزم بالنسبة لمختلف إصدارات بروتوكول CDP، وعدّادات تتعلّق بالأخطاء في الرزم، وهو ما قد يكون إشارة إلى خلل في عملية CDP أو إلى علّة برمجية. تظهر كذلك أخطاء التغليف (Encapsulation) في حال دعم وسيط الاتصال لهذه الآلية. RouterA#sh cdp traffic CDP counters : Total packets output: 82, Input: 41 Hdr syntax: 0, Chksum error: 0, Encaps failed: 0 No memory: 0, Invalid packet: 0, Fragmented: 0 CDP version 1 advertisements output: 0, Input: 0 CDP version 2 advertisements output: 82, Input: 41 قد يكون السبب في ظهور الأخطاء هو ببساطة أن بروتكول CDP غير مفعَّل على بطاقات الشبكة. توصي سياسات أمنية بتعطيل بروتوكول CDP على الأجهزة التي تقع على حدود شبكتك لكي لا تحصل الشبكات الخارجية على معلومات عنها. استخدم الأمر show cdp interface لمعرفة ما إذا كان البروتكول مفعَّلًا على بطاقة معيَّنة عبر تمرير اسمها أو عرض معلومات بطاقات الشبكة جميعها بتمرير الوسيط detail، ثم فحص قيم العدادات والرزم لرؤية ما إذا كانت توافق احتياجاتك. RouterA#sh cdp interface serial 0/0 Serial0/0 is up, line protocol is up Encapsulation HDLC Sending CDP packets every 60 seconds Holdtime is 180 seconds إنشاء مخطَّط للشبكة يفيد بروتوكول CDP كثيرًا في حالات التشخيص والتحقق من كون الطبقة الثانية تعمل على النحو المرغوب، ولتحديد مكان تواجد الأجهزة ولإشعار الجانب الآخر بمعلومات CDP. تستطيع استخدام بروتوكول CDP للحصول على معلومات بسيطة مثل عنوان IP والانتقال من جهاز إلى آخر (عن طريق Telnet) لتكوين مخطَّط فيزيائي أو منطقي للشبكة ولتوثيق ما تقوم به. يُنصَح بشدة باستخدام أدوات أخرى مؤتمتة لاستكمال توثيق وبناء مخططات الشبكة. ترجمة – وبتصرّف – للمقال Discovering Neighbors on the Network
  11. عرضنا سابقًا لبروتوكول OSPF الذي ينتمي لبروتوكولات حالة الرابط (Link state)، وذكرنا أن الإصدار الثاني يعمل مع شبكات الإصدار الرابع من بروتوكول IP، في حين يعمل الإصدار الثالث – الذي نحن بصدد الحديث عنه – مع شبكات الإصدارين الرابع والسادس على حد السواء. لا توجد فروق كبيرة بين الإصداريْن، فقد عمل المصممون على الحفاظ على التوافق بينهما. تعمل آلية اختيار معرّف الموجه (Router ID) بالطريقة نفسها التي تعمل بها في الإصدار الثاني (OSPFv2)، إذ يبلغ طول المعرف 32 بتًّا تُختار بين عناوين الإصدار الرابع من IP حسب القاعدة نفسها: الأولوية لبطاقات الاسترجاع (Loopback) وللعناوين الأكبر عدديا. يعني هذا أننا سنحتاج لعناوين من الإصدار الرابع من IP، أقله لاستنتاج قيمة معرِّف الموجّه. علاوة على ذلك، يمكن استخدام الأمر router-id لتعيين معرّف الموجه يدويّا. عناوين الربط المحلي تُستخدَم عناوين الرابط المحلي (Link-local) للتخاطب بين الموجهات، أولًا في حقل المصدر ضمن رزم IP ثم بعد ذلك ضمن حقل الوجهة عندما يُتعرَّف عليه. تُستخدَم عناوين IP (الإصدار السادس) كذلك لإرسال إشعارات حالة الرابط (Link state advertisements, LSA). من الفروق المهمة بين الإصدارين الثاني والثالث من بروتوكول OSPF هو أن الإصدار الأخير يعتمد على الرابط بدلًا من الشبكة الفرعية. يمكن للرابط في الإصدار السادس من IP أن ينتمي لشبكات فرعية عدة، ويمكن لبطاقتي شبكة على الرابط نفسه أن تتواصلا رغم انتمائهما لشبكتين فرعيتين مختلفتين. يعتمد الإصدار الثالث من OSPF على الروابط المحلية مما يسمح بتبادل الرزم (الإعلانات) بين موجهات لا تتشارك الشبكة الفرعية نفسها. مثال لضبط إعدادات OSPFv3 يختلف إعداد بروتوكول OSPFv3 – قليلًا - عن OSPFv2. في الإصدار OSPFv2 تُضبَط الإعدادات ضمن وضع ضبط الموجه، ونستخدم الأمر network مع محرف البدل. نأخذ الشكل التالي -الذي رأيناه في دروس سابقة - لتوضيح طريقة ضبط البروتوكول OSPFv3. لدينا موقعان هما المقر الرئيس (HQ) والفرع (Branch) تربط بينهما شبكة. في ما يلي إعدادات OSPFv3 بالنسبة لكل منهما. Branch(config)#interface GigabitEthernet0/0 Branch(config-if)#ipv6 ospf 1 area 0 Branch(config-if)#exit Branch(config)#interface GigabitEthernet0/1 Branch(config-if)#ipv6 ospf 1 area 0 Branch(config-if)#exit Branch(config)#ipv6 router ospf 1 Branch(config-rtr)#router-id 0.0.0.2 HQ(config)#interface GigabitEthernet0/0 HQ(config-if)#ipv6 ospf 1 area 0 HQ(config-if)#exit HQ(config)#interface GigabitEthernet0/1 HQ(config-if)#ipv6 ospf 1 area 0 HQ(config-if)#exit HQ(config)#ipv6 router ospf 1 HQ(config-rtr)#router-id 0.0.0.1 نلاحظ أنه لا وجود على الإطلاق للأمر network. بدلًا من ذلك نذهب مباشرة إلى وضع ضبط بطاقات الشبكة (الأمر interface)، ونستخدم الأمر ipv6 ospf ونمرر له معرف العملية (Process ID) والمنطقة (Area) التي نريد أن تنتمي لها البطاقة. يمكن أن نلاحظ كذلك وجود وضع ضبط للموجه يُستخدَم لضبط الوسائط التي تؤثّر على الموجه بمختلف بطاقاته، مثلًا، عندما نريد ضبط معرّف الموجه يدويّا. نستخدم الأمر router-id في المثاليْن السابقيْن لضبط معرِّف الموجه، حيث نمرّر معرف العملية إلى الأمر ipv6 ospf ثم ننفذ الأمر router-id لتعيين معرف الموجه الذي يمكن أن يكون أي قيمة من 32 بتًّا وليس بالضرورة عنوان IP صالحا. نتأكد من وضع عناوين IPv6 على البطاقات التي نحتاجها، يدوّيًّا أو باستخدام الضبط الذاتي للعناوين، وننشئ قواعد التوجيه، ويمكننا بعدها التأكد من الاتصال بتنفيذ الأمر ping. أوامر التحقق من بروتوكول OSPFv3 سنتحقق من جدول التوجيه على موجه الفرع، لذا نستخدم الأمر show ipv6 route ونمرر له الوسيط ospf: Branch#show ipv6 route ospf IPv6 Routing Table - default - 4 entries Codes: C - Connected, L - Local, S - Static, U - Per-user Static route B - BGP, R - RIP, I1 - ISIS L1, I2 - ISIS L2 IA - ISIS interarea, IS - ISIS summary, D - EIGRP, EX - EIGRP external ND - Neighbor Discovery O - OSPF Intra, OI - OSPF Inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2 ON1 - OSPF NSSA ext 1, ON2 - OSPF NSSA ext 2 O 2001:DB8:AC10:100::64/128 [110/1] via FE80::A8BB:CCFF:FE00:3410, GigabitEthernet0/1 نلاحظ السطر الذي يبدأ بالحرف O والذي يشير إلى المسارات داخل منطقتنا (عكس OIالتي تعني مسارات تعرفنا عليها من مناطق أخرى). تظهر المسافة الإدارية (Administrative distance) بين معكوفين إضافة إلى تكلفة الوصول إلى الشبكة المذكورة. يمكن ملاحظة أن قيمة المسافة الإدارية هي نفسها بالنسبة لإصداريْ OSPF ‏(110). نجد في السطر الموالي – بعد عبار ة via- عنوان القفزة الموالية والبطاقة التي تمر عبرها. لا يوجد تغيير في هذا الجانب عمّا كان عليه الحال في الإصدار OSPFv2 إلا في ما يخص عنوان القفزة. يستخدم الإصدار الثالث من OSPF عناوين رابط محلي، وهي ضرورية لعمل الإصدار السادس من بروتوكول IP، لإرسال إشعارات حالة الرابط واستلامها من الموجهات المجاورة، وبالتالي تكوين شبكة الجوار، لذا فعناوين القفزة الموالية – في OSPFv3 - هي دائما عناوين رابط محلي. التحقق من علاقات الجوار نتحقق من الجوار بالأمر التالي: Branch#show ipv6 ospf neighbor Neighbor ID Pri State Dead Time Interface ID Interface 0.0.0.1 1 FULL/BDR 00:00:36 3 GigabitEthernet0/1 لا يوجد اختلاف كبير بين مُخرَجات الأمر السابق والأمر show ip ospf neighbor المُستخدَم لإظهار الجوار في الإصدار الثاني من OSPF. يعرض الأمر السابق ستة أعمدة هي على التوالي معرفات الموجهات المجاورة، وأولويتها، وحالتها، ومهلة الخمول،ومعرف بطاقة الشبكة واسم البطاقة. تشير العبارةFull/BDR في خانة حالة الرابط إلى أن الجوار كامل (Full) بين الموجه والموجه المكلَّف الاحتياطي BDR‏ (Backup designated router). يتمثل دور الموجه المكلَّف DR‏ (Designated router) في العمل على أن يكون النقطة المركزية لتبادل البيانات المتعلقة بالشبكة بين الموجهات المختلفة. يتولى الموجه المكلَّف الاحتياطي (BDR) تلك المهمة في حال تعطل الموجه المكلَّف. لكي لا تُغرَق الشبكة برزم OSPF فإن الموجهات لا تتبادلها إلا مع الموجه المكلَّف أو الموجه المكلَّف الاحتياطي. تعني هذه الحالة Full/BDR أن الموجه الذي نُفِّذ عليه الأمر هو الموجه المكلَّف، لأن الشبكة تحتاج لوجوده. الحالة Full تشير إلى أن الأمور على ما يرام. يمكن التحقق من معرف الموجه الذي نتواجد عليه عبر الأمر show ipv6 ospf الذي يعرض الكثير من المعلومات. Branch#show ipv6 ospf Routing Process "ospfv3 1" with ID 0.0.0.2 Event-log enabled, Maximum number of events: 1000, Mode: cyclic Initial SPF schedule delay 5000 msecs Minimum hold time between two consecutive SPFs 10000 msecs Maximum wait time between two consecutive SPFs 10000 msecs Minimum LSA interval 5 secs Minimum LSA arrival 1000 msecs LSA group pacing timer 240 secs Interface flood pacing timer 33 msecs Retransmission pacing timer 66 msecs Number of external LSA 0. Checksum Sum 0x000000 Number of areas in this router is 1. 1 normal 0 stub 0 nssa Graceful restart helper support enabled Reference bandwidth unit is 100 mbps … ... من بين المعلومات الكثيرة التي يعرضها الأمر أعلاه نجد معرف الموجه (0.0.0.2) وكذلك معلومة مهمة أخرى وهي معرف عملية OSPF‏ ("ospfv3 1"). ثم تتوالى المعلومات التي قد تسبب كثرتها التشويش في ذهن المتلقي، ولكن أهم ما يظهر نتائج الأمر – علاوة على ما أشرنا إليه – هو معلومات المناطق (Areas) إذ تشير نتيجة الأمر إلى انتماء الموجه إلى منطقة واحدة (Number of areas ) ونوعها. ترجمة – وبتصرف – للمقال Configuring OSPFv3
  12. توجد الكثير من آليات التوجيه، مثل التوجيه الثابت (Static routing)، والبروتوكولات مثل الجيل الجديد من بروتوكول RIP‏ (RIPng)، وEIGRP، ‏الإصدار الثالث من OSPF، وبروتوكول BGP وامتداده MP-BGP (اختصار لـ Multi-protocol BGP) الذي يدعم شبكات الإصداريْن الرابع والسادس على حد السواء (عكس BGP الذي لا يدعم سوى شبكات الإصدار الرابع). يوجد كذلك بروتوكول IS-IS الذي ينتمي لبروتوكولات حالة الرابط، وهو فعّال جدًّا في في الإعلان عن مسارات الإصدار السادس من شبكات IP. سنركّز، من بين كل تلك البروتوكولات، على التوجيه الثابت والإصدار الثالث من بروتوكول OSPF. المسارات الثابتة لا توجد اختلافات كبيرة بين التوجيه الثابت في الإصدار السادس من بروتوكول IP عن الإصدار الرابع. الاختلاف الأساسي هو في الأمر المستخدَم. نأخذ المثال الموضَّح في الصورة أدناه، والذي طبّقنا عليه في دروس سابقة. فلنبدأ من جانب المقر الرئيس (HQ). استخدمنا الأمر ip route سابقًا، إلا أن الأمر المناسب في شبكات الإصدار السادس هو ipv6 route. نمرّر بعدها وسيطًا بعنوان الشبكة الوِجهة. HQ(config)#ipv6 route 2001:DB8:A01::/48 Gi0/1 2001:DB8:D1A5:C900::1 استخدمنا في شبكات الإصدار الرابع قناع الشبكة لتعيين الوِجهة، إلا أننا في الإصدار السادس نتعامل مع البادئات بدلًا من الأقنعة. بالنسبة لعنوان الشبكة الوِجهة في الأمر أعلاه فإن البادئة المستخدَمة هي ‎/48. ذكرنا في درس [أنواع العناوين في الإصدار السادس من IP]() أن السياسة المتبعة عمومًا تقضي بتخصيص البتات الثمانية والأربعين الأولى لتعريف الموقع الجغرافي الذي توجد فيه الشبكة. أي أن العنوان ‎2001:DB8:A01::/48 يعرِّف الفرع (Branch) الذي نريد الوصول إليه. كان بإمكاننا تحديد عنوان الشبكة الفرعية، إن كنا نعرفه، إلا أننا فضلنا الإشارة إلى عنوان الموقع الذي يمكن أن توجد به شبكات فرعية عدّة. تلي بطاقةُ الشبكة التي ستُرسَل عبرها البيانات عنوانَ الوِجهة، ثم يأتي عنوان IP يمثل القفزة الموالية في المسار نحو الوِجهة. أي أن الأمر يأخذ ثلاثة وسائط هي الوِجهة، والبطاقة التي ستمر عبرها البيانات وعنوان الموجِّه الذي ستُرسَل إليه. المسارات الافتراضية حدّدنا مسارًا ثابتًا من المقر الرئيس إلى الفرع، ويتبقى المسار المعاكس، أي من الفرع إلى المقر الرئيس. نريد أن نضبط الفرع بحيث تمر جميع البيانات المُرسَلة من شبكته (أو شبكاته) عبر المقر الرئيس، أي أننا سنستخدم مسارًا افتراضيًّا للبيانات القادمة من الفرع باتجاه المقر الرئيس. Branch(config)#ipv6 route ::/0 Gi0/1 2001:DB8:D1A5:C900::2 يشير العنوان ‎::/0 إلى الوجهات جميعها. أي مهما كانت الوِجهة فإن هذا المسار هو المستخدَم. نمرر بطاقة الشبكة المستخدمة وعنوان القفزة الموالية، وهو ما يعني ن البيانات الخارجة من الفرع كلها ستمر عبر هذا المسار. يمكننا التحقق من المسارات الثابتة التي ضبطناها بالنظر إلى جدول التوجيه. نذكّرأن لكل إصدار من بروتوكول IP جدول توجيه منفصل، لذا نستخدم الأمر show ipv6 route لعرض معلومات المسارات في شبكات الإصدار السادس. يقبل الأمر الوسائط نفسها التي يقبلها show ip route مثل static، وeigrp، وospf. HQ#show ipv6 route static IPv6 Routing Table - default - 4 entries Codes: C - Connected, L - Local, S - Static, U - Per-user Static route B - BGP, R - RIP, I1 - ISIS L1, I2 - ISIS L2 IA - ISIS interarea, IS - ISIS summary, D - EIGRP, EX - EIGRP external ND - Neighbor Discovery O - OSPF Intra, OI - OSPF Inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2 ON1 - OSPF NSSA ext 1, ON2 - OSPF NSSA ext 2 S 2001:DB8:A01::/48 [1/0] via 2001:DB8:D1A5:C900::1, GigabitEthernet0/1 بالنظر إلى المسارات الثابتة التي يعرضها الأمر نجد تشابهًا كبيرًا مع مُخرجات الأمر show ip route التي عرضنا لها عند الحديث عن التوجيه الثابت في شبكات الإصدار الرابع. يوجد الحرف S - الذي يشير إلى أن المسار ثابت - في بداية السطر، والشبكة الوِجهة، وبين المعكوفين نجد المسافة الإدارية والكلفة. نجد في السطر الموالي الموجِّه التالي في المسار، وبطاقة الشبكة التي سنستخدمها. رغم التشابه الكبير إلا أن هناك أمرًا غائبًا، يظهر عند عرض المسارات على موجِّه الفرع. Branch#show ipv6 route static IPv6 Routing Table - default - 4 entries Codes: C - Connected, L - Local, S - Static, U - Per-user Static route B - BGP, R - RIP, I1 - ISIS L1, I2 - ISIS L2 IA - ISIS interarea, IS - ISIS summary, D - EIGRP, EX - EIGRP external ND - Neighbor Discovery O - OSPF Intra, OI - OSPF Inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2 ON1 - OSPF NSSA ext 1, ON2 - OSPF NSSA ext 2 S ::/0 [1/0] via 2001:DB8:D1A5:C900::2, GigabitEthernet0/1 نلاحظ غياب علامة * التي تشير إلى المسار الافتراضي، لذا نتساءل كيف يمكننا التعرّف على المسار الافتراضي؟ يكمن الجواب في العنوان الموجود في السطر الذي يبدأ بالحرف S، حيث يوجد عنوان الشبكة الوِجهة ‎ ::/0الذي يعني "عنوان غير مُحدَّد". نجد بين المعكوفين المسافة الإدارية والتكلفة ([1/0‎]). يُعرَض في السطر الموالي عنوان الموجِّه التالي في المسار وبطاقة الشبكة. يُستخدَم بروتوكول ARP في شبكات الإصدار الرابع للحصول على عنوان M AC انطلاقًا من عنوان IP، إلّا أن هذه المهمة يتولّاها بروتوكول ICMPv6 في شبكات الإصدار السادس عبر استكشاف الجوار وخصوصًا رسائل التماس الموجِّه. تجدر الإشارة إلى أن وجود عنوان IP في جدول التوجيه لا يعني بالضرورة أن الاتصال بالعنوان قد تم، لذا من المهمّ دائمًا التأكد – بعد ضبط المسارات الثابتة - من وجود اتصال عبر تنفيذ الأمر ping وتمرير عنوان الوِجهة له. ترجمة – وبتصرّف – للمقال Static Routing with IPv6
  13. أشرنا في درس ضبط الإعدادات الأولية في للإصدار السادس من بروتوكول IP إلى وجود آلية الضبط الذاتي عديم الحالة (Stateless autoconfiguration). يفيد مصطلح انعدام الحالة – عمومًا – بـأننا لا نحتفظ بسجل لما يحدث، عكس ما يحصل عند استخدام خادوم DHCP – وهو آلية ذات حالة (Stateful) – الذي توجد لديه مجموعة من العناوين ويحجزها للأجهزة حسب الحاجة، ولوقت مُحدَّد سلفا. يتولى بروتوكول ICMP مهمة تعيين عناوين الأجهزة المضيفة خلال الضبط الآلي عديم الحالة. ينبغي النظر إلى الضبط الذاتي عديم الحالة على أنه – أساسًا – وظيفة بين المُوجِّهات، تعمل على الطبقة الثالثة. نحتاج لعنوان فريد على الطبقة الثالثة، كما نحتاج للشبكة الفرعيّة وعنوان المضيف المناسبين، الذي نسميه معرِّف بطاقة الشبكة. نحتاج لأمر آخر، وهو معرفة عنوان IP جهاز آخر يمكّن أجهزة المستخدمين من إرسال رزم بيانات إلى خارج الشبكة المحلية (البوّابة Gateway). تعتمد شبكات IPv6 على بروتوكول ICMPv6 لتلبية الاحتياجات السابقة، ويتمثل عمله في ما يتعلق بهذه النقطة في إبلاغ الجهاز المستخدم بالشبكة التي ينبغي عليه أن يكون جزءًا منها. رزم إعلانات الموجِّه توجد أنواع كثيرة من الرزم في بروتوكول ICMPv6، ومن بينها النوع 134 الذي يُسمَّى إعلان الموجِّه (Router advertisement). يُرسِل عنوانُ الربط المحلي على الموجِّه – العنوان ذو البادئة FE80 - الرزمةَ إلى جميع البطاقات الطرفية المتصلة بالشبكة، عبر البث المتعدد على العنوان FF02::1. تتضمن بيانات الرزمة بادئة العنوان (Prefix) – أو البادئات – الخاصة بالموجِّه، ومدة زمنية للرزمة. تُرسَل إعلانات الموجِّه تلقائيّا، فبمجرد تفعيل الإصدار السادس على الموجِّه، وإسناد عنوان IP إلى بطاقة الشبكة وبدئها في العمل تبدأ بإرسال تلك الإعلانات. على الجانب الآخر، ترسل الأجهزة رسائل تُعرَف برسائل التماس الموجِّه (Router solicitation messages)، وهي نوع آخر من الرزم في ICMPv6. ترسل الأجهزة طلبات الالتماس فور اتصالها بشبكة الإصدار السادس، بحثًا عن موجِّه. يجيب الموجِّه فور تلقيه طلبات الالتماس برسائل الإعلانات. رسائل التماس الموجِّه تُرسَل رسائل الالتماس (النوع 133 من رزم ICMPv6) إلى عنوان البث المتعدد FF02::2 الذي يمثل جميع الموجِّهات في الشبكة المحلية. يساوي حقل عنوان المصدر في رزم طلبات الالتماس القيمة :: التي تفيد بأن العنوان غير محدد (Unspecified)، ويعود السبب في ذلك إلى أن الأجهزة التي ترسلها لم تحصل بعد على عنوان IP من الموجِّه. على الرغم من أن الموجِّهات ترسل إعلانات (النوع 134) دوريًّا، إلا أن المدة الزمنية بين إعلانيْن قد تطول، لذا فإن بطاقات الشبكة ترسل تلقائيّا – فور اتصالها – طلبات التماس إلى الموجِّه، وبالتالي يمكنها ضبط عناوينها ذاتيا بالاعتماد على رزم الإعلانات التي يجيب بها الموجِّه. ميزات الضبط الذاتي للعناوين ونواقصه تمكِّن آلية الضبط الذاتي من إنشاء البنية التحتية بسرعة، كما أنها تتيح إعادة العنونة (Renumbering) في وقت قصير جدًّا، وهما ميزتان مهمتان من ميزات الإصدار السادس من بروتوكول IP. يسمح الإرسال الدوري لإعلانات الموجِّه بإعادة توليد عناوين جديدة للبطاقات الطرفية، إنْ احتجنا لذلك. كما يمكن استخدام هذه الآلية على مختلف بطاقات الموجِّه والأجهزة ضمن إطار التوطين المتعدد (Multihoming) الذي يسمح بأن تنتمي بطاقة الشبكة إلى شبكات عدّة في الوقت نفسه. مثلًا يكون لديها عنوان عمومي للاتصال بالإنترنت وعنوان محلي للاتصال بالشبكة المحلية. آلية الضبط الذاتي للعناوين مفيدة جدًّا، إلا أنه ينقصها عنصر مهم وهو أنها لا تدعم – عمليًّا - نظام أسماء النطاقات Domain name system‏ (DNS)، وهو ما يعني أن المستخدم لن يكون بإمكانه ترجمة اسم نطاق، academy.hsoub.com مثلًا، إلى عنوان IP. يُلجَأ في هذه الحالة إلى خادوم DHCP عديم الحالة (Stateless DHCP)، وهي وظيفة يوفرها الموجِّه. لا يوفّر خادوم DHCP عديم الحالة للأجهزة الطرفية سوى المعلومات التي تنقصها، مثل عنوان خادوم DNS الذي يجب عليها الاتصال به لترجمة النطاقات، ولا يُسنِد لها عناوين IP كما يفعل خادوم DHCP اعتيادي. ترجمة – وبتصرّف – للمقال Stateless Autoconfiguration
  14. ترويسة رزم IP في الإصدار السادس يوضح الشكل التالي – الذي تطرقنا له في درس سابق من السلسلة - ترويسة الرزمة في الإصدار الرابع من بروتوكول IP. نعيد التذكير بترويسة الرزمة هنا لأن بعضًا من الحقول الموجودة في الترويسة تغيرت في الإصدار السادس، بينما بقيت حقول أخرى على حالها. في ما يلي مُجمَل لحقول ترويسة رزم الإصدار الرابع التي حصلت عليها تغييرات: الإصدار (Version): أصبح 6 بدلًا من 4. نوعية الخدمة (ToS اختصار لـ Type of service): حقل يتعلق بجودة الخدمة، وبالتالي سنحتاجه وإن كان حصل عليه تغيير كما سنرى لاحقا. زمن بقاء الرزمة "على قيد الحياة" (Time to Live أو TTL اختصارا): صُمِّم في الأصل لتكون قيمته عددًا من الثواني، إلا أنه في الواقع لم يُستخدَم قط على ذلك النحو، بل استخدِم ليحوي عدد القفزات (Hope count)، أي عدد الموجِّهات التي تمر عليها الرزمة. أعيدت تسمية هذا الحقل لتتطابق مع عمله (Hope limit، حدّ القفزات). مجموع التحقق (Check sum): حذف هذا الحقل نهائيَّا من ترويسة البروتوكول نظرًا لأنه يأخذ وقتًا، ونظرًا لوجود آلية مماثلة للتحقق وذات فاعلية أكبر على مستوى الطبقة الثانية. بالنسبة للإصدار السادس فالرزمة أصبحت على النحو الموضَّح في الشكل التالي. عُدِّل اسم الحقل "نوعية الخدمة" ليصبح "صنف البيانات المحمولة" (Traffic class)، ويعرِّف تلك البيانات بغرض تصنيفها. يمكِّن التصنيف من إعطاء الأولوية لصنف معيَّن – فيديو مثلًا – على آخر، أي أننا نميّز بين أنواع البيانات المنقولة. يوجد إلى جانب نوعية الخدمة حقل جديد يُسمَّى "لصيقة التدفق" (Flow label). التدفق هو حركة بيانات باتجاه واحد، أي أنه يمكن أن يكون لدينا تدفق من الموجِّه A إلى الموجّه B، وآخر من B إلى A. يتيح هذا الحقل تنفيذ إجراءات محدَّدة على تدفق مخصوص. طول الحمولة (Payload length): المقصود بالحمولة هو ما تنقله الرزمة، وهو كل ما يتعلق بالطبقات العليا من نموذج OSI (فوق الطبقة الثالثة). يمكن ملاحظة أنه لا توجد لدينا معلومات عن طول الترويسة، عكس ما يوجد في ترويسة الإصدار الرابع. يعود السبب في ذلك إلى أن طول الترويسة لا يتغير، وبالتالي نركّز على ما تحمله الرزمة. يشبه حقل "الترويسة الموالية" (Next header) حقل البروتوكول في IPv4، ويشير إلى البروتوكول الذي نحن بصدد نزع الغلاف عن رزمته (Decapsulation). الحقل "حدّ القفزات" (Hope limit) هو إعادة تصميم للحقل TTL ليوافق طريقة استخدامه الفعلية. يحوي الحقلان "المصدر" (Source) و"الوِجهة" (Destination) عنوانيْ IPv6 الخاصين بمرسل الرزمة ومستقبلها على التوالي. يبلغ طول كل من الحقلين 128 بتًّا، بطول عناوين IPv6. تأتي بعد الحقول الأساسية التي توجد في الترويسات جميعها مجموعة حقول أخرى ذات طول متغيّر تُعرَف بالمعلومات الإضافية للترويسة، وتتضمن ميزات، وخدمات وعناصر أخرى. لا تحوي الترويسة هذه الحقول إلّا في حالة الحاجة إليها. على سبيل المثال، تأمين بروتوكول الإنترنت IPSec. يبلغ طول الترويسة الأساسية – بدون حقول المعلومات الإضافية – 40 بايتا، إلا أن طول الترويسة الكلّي يختلف حسب الحقول الاختيارية. يأتي بعد الترويسة الحقل الخاص ببيانات الرزمة (Data portion). يحوي هذا الحقل كل ما يتعلق بالطبقات العليا وبتجميعة TCP/IP من بيانات. نلفت الانتباه إلى أن حجم بيانات الرزمة مُحدَّد في الحقل "طول الحمولة" الذي تحدثنا عنه أعلاه. ICMPv6 سنركّز في هذا الجزء من الدرس على حقل "الترويسة الموالية". قلنا إن هذا الحقل يشير إلى بروتوكول الطبقة العليا الموالية، وفي أغلب الحالات يكون واحدًا من البروتوكولات TCP، أو UDP، أو ICMP. يستخدم بروتوكول IP في الإصدار الرابع المعرِّف 1 لبروتوكول ICMP. يختلف ICMP عن بروتوكولات النقل – TCP وUDP – في كونه لا يُستخدَم لاستقبال البيانات أو إرسالها، بل يُستخدَم أساسًا لنقل رسائل الأخطاء والتحكم. توجد الكثير من الأمور التي يقوم بها بروتوكول ICMP. مثلًا عند استخدام الأمر ping لاختبار الاتصال يجيب بروتوكول ICMP برسائل مثل echo للدلالة على وجود اتصال، وunreacheable (لا يُمكن الوصول إليه) التي تدل على عدم إمكانية إرسال الرزم إلى الوجهة، وtime excedeed (تجاوز الوقت) عندما تصبح قيمة الحقل TTL مساوية للصفر. لا يقتصر الأمر على الأمر ping، إذ توجد رسائل إعادة التوجيه في ICMP التي تمكّن من إعادة توجيه الرزم إلى موجِّه أنسب من الذي وُجِّهت إليه. يأخذ بروتوكول ICMP في الإصدار الجديد الذي قدم مع الإصدار السادس من IP المعرِّف 58 (بدلا من 1 في IPv4)، وهو ما يعني أنه عندما تكون قيمة حقل الترويسة الموالية تساوي 58 فهذا يعني أن بروتوكول الطبقة الثالثة المُستخدَم هو ICMPv6، وأن الرزمة تحمل معلومات عامة تفيد في تشخيص حالة الاتصال. أضيفت إمكانيّات جديدة لإصدار بروتوكول ICMP في الإصدار السادس مثل اكتشاف الموجِّهات والجوار. يتولى ICMPv6 المسؤولية عن آليات استكشاف الشبكة في بروتوكول IPv6. استكشاف الجوار يعتمد فهمُ عمل الإصدار السادس من بروتوكول IP كثيرًا على فهم آلية استكشاف الجوار (Neighbor discovery). يُستكشَف الجوار ببروتوكول ICMPv6 والبث المتعدّد في شبكات IPv6، ويتضمن العمليات التالية : تحديد عنوان الرابط المحلي الخاص بجهاز مجاور، العثور على الموجِّهات المجاورة، الاستعلام عن العناوين المتكررة. تجدر الإشارة إلى أنه لا وجود لبروتوكول ARP في IPv6، إلا أننا ما زلنا في حاجة إلى المهام التي يؤديها في شبكات IPv4، واستكشاف الجوار ببروتوكول ICMPv6 هو الإجابة على تلك الحاجة. لا يعني عدم وجود ARP أن عناوين MAC غير مُستخدَمة في IPv6، بل إن عدم وجود ARP هو ما أدى إلى نقل مهمة الربط بين عناوين MAC وعناوين IPv6 إلى بروتوكول ICMPv6 عن طريق آليات استكشاف الجوار. يساعد بروتوكول ICMPv6 في التحقق من عناوين بطاقات الشبكة المُسنَدة ذاتيا عبر صيغة EUI-64، وتصديق عناوين الربط المحلي عبر التأكد من أن هذه العناوين فريدة على مستوى الشبكة. تدخل تلك الأمور كلها في إطار استكشاف الجوار. ترجمة – وبتصرّف – للمقال The IPv6 Pakcet Header. ICMPv6 and Neighbor Discovery (ND)
  15. تزيد طرق توزيع العناوين في الإصدار السادس من بروتوكول IP عن الإصدار الرابع. يمكن إسناد العناوين يدويًّا مثل ما يُفعَل في الإصدار الرابع، كما يمكن استخدام صيغة EUI-64 التي ناقشناها في الدرس السابق. أي أنه ما زال بإمكاننا استخدام الإسناد اليدوي، لكن أضيفت إليه إمكانية توليد عنوان بطاقة الشبكة تلقائيًّا بالاعتماد على عنوان MAC وصيغة EUI-64. يضيف بروتوكول IPv6 آلية الضبط الذاتي عديم الحالة (Stateless autoconfiguration)، وهي طريقة ضبط آلية تُستكشَف عن طريقها العناوين التي يمكن استخدامها، وذلك بالتواصل مع الموجِّه ثم - بالاعتماد على المعطيات الواردة منه - توليد عنوان IP تلقائيّا. توجد آلية ضبط أخرى تُسمّى الضبط الذاتي ذا الحالة (Stateful autoconfiguration)، ويمثلها خادوم DHCP. أساسيات الاتصال في IPv6 عند ضبط إعدادات بروتوكول IPv4 على الموجّه فإنه يمكننا الذهاب إلى بطاقة شبكة وإسناد عنوان IP لها، دون أن نحتاج لتهيئتها قبل ذلك، والسبب هو أن تجميعة البروتوكول مفعَّلة مبدئيّا. الأمر مختلف مع الإصدار السادس، فهو بروتوكول جديد ولا يأتي مفعّلًا على الموجِّهات. لذا، فإن أول ما ينبغي عمله إذا أردنا استخدام الإصدار السادس هو تنفيذ الأمر التالي : router(config)#ipv6 unicast-routing نحصل بتنفيذ هذا الأمر على الكثير من الأمور مثل قابلية توجيه عناوين البث الأحادي في IPv6، وإمكانية إسناد عناوين IPv6 إلى بطاقات الشبكة. الخطوة الموالية هي الذهاب إلى بطاقة شبكة ثم تنفيذ الأمر ipv6 address : router(config-if)#ipv6 address ipv6-address/ipv6-length [eui-64] يُستخدَم الأمر ipv6 address لضبط إعدادات الإصدار السادس من بروتوكول IP. نمرّر للأمر عنوان IP، إما بصيغته المختصرة أو بصيغة طويلة، وفي كلتا الحالتين سيتعرَّف عليه الأمر. إنْ أردنا استخدام صيغة EUI-64 لعناوين بطاقة الشبكة فلن نحدِّد العنوان بجميع بتاته (128 بتّا)، بل معرِّف الشبكة فقط (64 بتا الأولى على اليسار)، مثلًا 2001:DB8:C18:1::/64، ثم نضيف في الأخير eui-64 للدلالة على أننا نريد استخدام الصيغة EUI-64 لعنوان المضيف. نستخدم الأمر show ipv6 interface لعرض إعدادات IPv6 الخاصة بالبطاقة. R4#show ipv6 interface ethernet 0/1 Ethernet0/1 is up, line protocol is up IPv6 is enabled, link-local address is FE80::A8BB:CCFF:FE01:3A10 Global unicast address(es): 2001:DB8:C18:1:A8BB:CCFF:FE01:3A10, subnet is 2001:DB8:C18:1::/64 [EUI] Joined group address(es): FF02::1 FF02::2 FF02::1:FF01:3A10 MTU is 1500 bytes يمكن عرض المعلومات مختصرةً بالأمر show IPv6 interface brief، إلا أن الأمر أعلاه يمكّننا من رؤية العنوان وإظهار معرِّف البطاقة بصيغة EUI-64، حيث يظهر الجزء FF:FE في وسطه. منحنا إذن عنوانًا من الطبقة الثالثة (IP) لبطاقة الشبكة، وهذه هي الخطوة الأولى في تعيين مجال توجيه. نبدأ بإسناد عناوين IP إلى مجموعة من بطاقات الشبكة، ثم بعد ذلك تفعيل توجيه IPv6، وربما نصل إلى إعدادات بروتوكول OSPFv3 (الإصدار الثالث من OSPF) للإعلان عن الشبكات الفرعية التي نسندها للبطاقات. مثال على ضبط IPv6 في ما يلي مثال مناسب لتوضيح الإسناد اليدوي لعناوين IP في الإصدار السادس. لدينا مقر رئيس (Headquarter أو HQ) تتصل بها فروع (Branches). لاحظ العناوين المختصرة. عنوان المضيف بالنسبة للمقر الرئيس هو 2، وبالنسبة للفرع هو 1، إلا أن معرِّفَيْ الشبكة – 64 بتّا الأولى على اليسار – متطابقان، أي أننا في الشبكة الفرعيّة ذاتها. لا ننسى أنه بدون تفعيل بروتوكول IPv6 على الموجهات – عبر الأمر ipv6 unicast-routing - فلن نتمكن من استخدام الإصدار السادس من البروتوكول. ipv6 unicast-routing ! interface GigabitEthernet0/1 ipv6 address 2001:DB8:D1A5:C900::1/64 ipv6 unicast-routing ! interface GigabitEthernet0/1 ipv6 address 2001:DB8:D1A5:C900::2/64 فلننظر في مُخرجات الأمر show ipv6 interface GigabitEthernet 0/1. نلاحظ بطاقة شبكة نشطة (up/up)، وعنوان الرابط المحلي الذي يبدأ بـ FE80. Branch#show ipv6 interface GigabitEthernet 0/1 GigabitEthernet0/1 is up, line protocol is up IPv6 is enabled, link-local address is FE80::FE90:47FF:FEE5:2599 No Virtual link-local address(es): Description: Link to HQ Global unicast address(es): 2001:DB8:D1A5:C900::1, subnet is 2001:DB8:D1A5:C900::/64 يمكن ملاحظة وجود FE:FE في عنوان الرابط المحلي، بمعنى أن بطاقة الشبكة استخدمت صيغة EUI-64 لإسناد عنوان ذاتي لها. نجد في السطر الأخير من المخرجات أعلاه عنوان بث أحادي عمومي بدايته 2001، والجزء الأخير منه ‎::1، كما يظهر عنوان الشبكة الفرعيّة (‎2001:DB8:D1A5:C900::/64). يمكن التأكد من وجود الاتصال بين الموجِّهيْن بالأمر ping: Branch#ping 2001:DB8:D1A5:C900::2 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 2001:DB8:D1A5:C900::2, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/%), round-trip min/avg/max = 0/0/4 ms لا ننسى كذلك وجود الأوامر الأخرى مثل traceroute وtelnet التي تعمل على التحقق من الاتصال بعناوين الإصدار السادس من بروتوكول IP بنفس الطريقة التي تعمل بها مع عناوين الإصدار الرابع. ترجمة – وبتصرّف – للمقال IPv6 Connectivity.