التوجيه
(IP Routing) يقصد به إعادة توجيه
الحزم (IP Packet)
وتسليمها وإيصالها لوجهتها عبر شبكات TCP/IP وذلك من الجهاز الذي يقوم ببناء تلك الحزمة إلى
الجهاز الذي من المفترض أن يتلقاها وتصل إليه أي أن التوجيه هو المعني بإيصال الحزم
(IP Packet)
من الجهاز المرسل إلى الجهاز الوجهة أو المستقبل.
تعتمد عملية التوجيه من طرف إلى طرف على منطقية
عمل الأجهزة والموجهات (Routers) في طبقة الشبكة (Network
Layer). بحيث يقوم الجهاز المرسل بتحقيق متطلبات
التعامل مع الطبقة الثالثة لإنشاء الحزمة (IP
Packet) وإعادة توجيهها إلى البوابة الافتراضية
له وهي جهاز الموجه (Router) وكذلك تقوم أجهزة التوجيه (Router) بتحقيق متطلبات
التعامل مع الطبقة الثالثة فتقوم بمقارنة عنوان الوجهة في الحزمة بجداول التوجيه
الخاصة بها وذلك لتحديد أين سيتم إعادة توجيه الحزمة في الخطوة القادمة.
تعتمد عمليات وخطوات التوجيه على تفاصيل ارتباط
البيانات (data-link)
والتفاصيل المادية (Physical) لكل ارتباط (وسائط نقل البيانات) فهي تعمل على ارتباطات WAN التسلسلية (Serial)
وارتباطات (Ethernet WAN) وشبكات (Ethernet LAN) والشبكات
المحلية اللاسلكية (Wireless LAN) والعديد من الشبكات الأخرى التي تطبق معايير ارتباط البيانات (data-link) والطبقة المادية
(Physical).
فكرة
عملية توجيه IPv4: عند الحديث عن عملية التوجيه لابد أن ينظر لها من زاوتين
أولاً: مع الأجهزة:
تبدأ عملية التوجيه من الجهاز الذي ينشئ الحزمة
(IP Packet).
ففي البداية يطرح الجهاز السؤال التالي: هل عنوان الـ IP الوجهة لهذه
الحزمة الجديدة في شبكتي الفرعية المحلية؟ يستخدم الجهاز العنوان والقناع الخاص به
لتحديد نطاق العناوين في شبكته الفرعية المحلية واستنادًا على ذلك يعمل الجهاز وفق
الخطوات التالية:
الخطوة الأولى: إذا كانت وجهة الحزمة محلية يقوم
بالإرسال له مباشرةً:
أ-
يبحث عن عنوان الـ MAC
للجهاز الوجهة ويستخدم المعلومات الموجودة في جدول بروتوكول
تحليل العنوان (ARP) أو يستخدم رسائل
ARP لمعرفة المعلومات
التي يحتاجها.
ب-
يقوم بتغليف (Encapsulate)
الحزمة في إطار ارتباط البيانات مدمجاً مع عنوان ارتباط البيانات للجهاز الوجهة.
الخطوة الثانية: إذا كانت وجهة الحزمة ليست لشبكته
الفرعية المحلية يقوم بالإرسال للبوابة الافتراضية:
أ-
يبحث عن عنوان الـ MAC
الخاص بالبوابة الافتراضية ويستخدم المعلومات الموجودة في جدول بروتوكول تحليل
العنوان (ARP) أو يستخدم رسائل
ARP لمعرفة المعلومات
التي يحتاجها.
ب-
يقوم بتغليف (Encapsulate)
الحزمة في إطار ارتباط البيانات مدمجاً مع عنوان ارتباط البيانات للجهاز الوجهة.
لتوضيح الفكرة في الشكل أدناه يرسل الجهاز A حزمة محلية بشكل
مباشر إلى الجهاز D.
ولكن بالنسبة للحزم المرسلة إلى الجهاز B والموجود في مكان بعيد أي أنه في شبكة فرعية
مختلفة هنا يرسل الجهاز A الحزمة إلى جهاز الموجه الافتراضي الخاص به (R1).
ثانياً: مع أجهزة التوجيه (Router):
أجهزة التوجيه لديها من أعمال التوجيه أكثر مما
تقوم به الأجهزة. فهناك خمس خطوات يقوم بها جهاز التوجيه تتمثل الخطوتين الأولى
استقبال الإطار واستخراج الحزمة منه بينما تعالج الخطوة الثالثة وجهة هذه الحزمة والخطوات
هي:
الخطوة الأولى: لكل إطار مستلم يقرر الموجه ما إذا كان
سيقوم بالتعامل مع الإطار أم لا. يتم التعامل إذا:
أ-
لا يوجد في الإطار أي أخطاء وذلك بحسب
حقل تسلسل فحص الإطار [FCS].
ب-
عنوان الوجهة للإطار هو عنوان جهاز الموجه.
الخطوة الثانية: إذا قرر الموجه معالجة الإطار في الخطوة
الأولى فسيقوم بإلغاء تغليف الحزمة من داخل الإطار.
الخطوة الثالثة: خطوة اتخاذ قرار التوجيه. يقارن عنوان الـ IP
للوجهة والموجود في الحزمة بجدول التوجيه لديه ويبحث عن المسار
الذي يتطابق مع عنوان الوجهة. يحدد هذا المسار المنفذ الذي ستخرج منه الحزمة والتي
قد تكون باتجاه جهاز توجيه آخر.
الخطوة الرابعة: يغلف الحزمة داخل إطار (data-link)
المناسب للمنفذ الذي ستخرج منه.
الخطوة الخامسة: يقوم بنقل الإطار إلى الخارج من المنفذ المحدد
كما هو مدرج في المسار الذي حدده.
باختصار يمكن أن نقول إن جهاز
التوجيه يستقبل إطاراً ويخرج الحزمة من داخل الإطار ثم يقرر وجهة إعادة توجيه
الحزمة ثم يضعها في إطار آخر ويرسل الإطار. ولتوضيح هذه الخطوات يقسم الشكل أدناه نفس عملية التوجيه
المكونة من خمس خطوات فيظهر فيها حزمة قادمة من اليسار ودخلت لمنفذ Ethernet الخاص بالموجه ووجهتها الى الجهاز C فتصل الحزمة وهي مغلفة داخل إطار Ethernet.
يقوم جهاز الموجه R1 بمعالجة الإطار والحزمة كما هو موضح بالأرقام
في الشكل وهي تطابق الخمس خطوات المذكورة سابقاً وهي على النحو التالي:
1. يتأكد جهاز الموجه R1 أن إطار Ethernet المستلم يجتاز فحص FCS وأن عنوان MAC الوجهة هو العنوان الخاص بـ R1، لذلك يقبله ويقوم R1 بمعالجة الإطار.
2. يزيل R1 تغليف الحزمة من
داخل إطار Ethernet.
3. يقارن R1 عنوان IP الوجهة الخاص بالحزمة بجدول توجيه IP الخاص به.
4. يقوم R1 بتغليف الحزمة داخل إطار جديد وهي في
هذه الحالة ليس إطار Ethernet وإنما HDLC.
5. ينقل R1 الحزمة بعد تغليفها
بإطار HDLC الجديد خارج المنفذ التسلسلي على
اليمين.
مثال
على توجيه IP:
المثال التالي يناقش كل خطوة من خطوات التوجيه
بالترتيب وذلك عبر أجهزة متعددة ففي هذا المثال يرسل الجهاز (A) 172.16.1.9 حزمة إلى الجهاز (B)
172.16.2.9
سنرى آلية التوجيه بدأً من الأجهزة وصولاً الى الخطوات الخمس الخاصة بأجهزة
التوجيه. ويوضح الشكل أدناه مخططًا لشبكة IPv4. فمثلاً يستخدم الجهاز A العنوان 172.16.1.9 بحيث
تم تحديده من كون الشبكة الفرعية له هي 172.16.1.9\24
(حيث تبدأ جميع العناوين بـ 172.16.1) والرقم 9 بجانب رمز الجهاز
A. وكمثال آخر يستخدم
الموجه R1 العنوان 172.16.1.1 على منفذ LAN و 172.16.4.1 على المنفذ التسلسلي و 172.16.5.1 على منفذ Ethernet WAN.
الدور الذي يقوم به جهاز (A):
ففي هذا المثال يرسل الجهاز (A) 172.16.1.9 حزمة إلى الجهاز (B)
172.16.2.9
وعليه فيمكن تلخيص ما يقوم به الجهاز (A) وكيف يفكر في الأمر فيما يلي:
· حيث إن العنوان والقناع الخاص بي هو 172.16.1.9\24 فهذا يعني أن شبكتي الفرعية ستحوي العناوين من 172.16.1.0 وحتى 172.16.1.255 بما في ذلك عنوان الشبكة الفرعية
وعنوان البث للشبكة الفرعية.
· حيث أن عنوان الجهاز الوجهة والذي
سأرسل له الرسالة هو 172.16.2.9 مما يعني أنه غير موجود في شبكتي
الفرعية المحلية.
· سأقوم بإرسال الرسالة الى البوابة الافتراضية لي وهي المنفذ
رقم 162.16.1.1 في جهاز الموجه R1.
· وحتى أُرسل هذه الرسالة (الحزمة) للبوابة الافتراضية يجب أن
أقوم بتغليفها لتصبح (إطار) وأجعل عنوان الوجهة MAC هو المنفذ G0/0 في جهاز الموجه R1.
الشكل أدناه يجمع هذه الخطوات ويوضحها بحيث يظهر عنوان IP للوجهة وكذلك عنوان MAC للوجهة أيضاً في الإطار
المرسل من الجهاز (A) :
الدور الذي يقوم به جهاز الموجه (R1):
الخطوة الأولى: اتخاذ القرار بشأن المعالجة
من عدمها، يستقبل جهاز الموجه العديد من الإطارات على المنفذ
وخاصة منافذ شبكات LAN. ومع ذلك من الممكن أن يتجاهل الموجه
بعض هذه الإطارات. فتبدأ الخطوة الأولى في عملية التوجيه باتخاذ القرار بشأن ما
إذا كان يجب على جهاز التوجيه معالجة الإطار أو تجاهله.
يقوم جهاز الموجه بإجراء فحص
بسيط ولكنه مهم بحيث يتجاهل جهاز الموجه جميع الإطارات
التي فيها أخطاء أثناء الإرسال بحيث يستخدم جهاز الموجه حقل FCS والموجود ضمن حقل التذييل في الإطار فإن وجد
جهاز الموجه أخطاء في الإرسال يقوم يتجاهل ذلك الإطار ومن المهم التنبيه بأن جهاز
الموجه لا يقوم بأي محاولة للمعالجة وتصحيح الأخطاء فهو لا يطلب من المرسل إعادة
إرسال البيانات. ويتحقق جهاز الموجه أيضًا من عنوان الإطار للوجهة لتحديد ما إذا
كان الإطار مرسل إليه أم لا فيقوم بتجاهل أي إطار غير مرسل إليه. في هذا المثال
يرسل الجهاز A إطارًا مخصصًا لعنوان MAC الخاص بالموجه R1 وبعد استلام الإطار وتأكد الموجه R1 من FCS أنه لم تحدث أخطاء يتأكد كذلك الموجه R1 من أن الإطار مرسل لعنوان MAC الخاص به وهو 0200.0101.0101 فإذا تم اجتياز
جميع عمليات التحقق يبدأ الموجه R1 في
معالجة الإطار كما هو موضح في الشكل أدناه.
الخطوة الثانية: فك تغليف الحزمة، بعد
أن يقرر الموجه معالجة الإطار المستلم تكون الخطوة التالية بسيطة نسبيًا وهي فك
تغليف الحزمة فلم يعد بحاجة إلى رأس وتذييل الإطار المستلم لذلك يقوم بإزالتها
وتجاهلها مبقياً الحزمة فقط، كما هو موضح في الشكل أدناه ولاحظ أن عنوان الـ IP للوجهة يظل كما هو دون تغيير 172.16.2.9
الخطوة الثالثة: تحديد أين سيتم إعادة توجيه الحزمة، بينما
تتطلب الخطوة السابقة القليل من التفكير والجهد من الموجه فإن الخطوة الثالثة
تتطلب الجهد الأكبر من بين جميع الخطوات ففيها يحتاج الموجه إلى تحديد إلى أين سيتم
إعادة توجيه الحزمة؟ ويتم استخدام جدول توجيه IP الخاص بالموجه لاتخاذ ذلك القرار مع وجود بعض الحسابات المنطقية
لمقارنة عنوان وجهة الحزمة مع الجدول. يوضح
جدول توجيه IP الموجود في الموجه مسارات
متعددة كما هو موضح في الشكل أدناه بحيث من خلالها يتم مطابقة عنوان الوجهة للحزمة
وكذلك توفير التعليمات الخاصة بإعادة التوجيه بمعنى أين سيتم إرسال الحزمة؟
عند التأمل في جدول التوجيه الخاص بالموجه نجد
أنه يحوي خمس مسارات وبالعودة للمخطط الخاص بالشبكة نجد أن هذه المسارات تمثل الخمس
الشبكات الفرعية الموجودة فيه مما أن الموجه يملك مساراً لكل منها. ثم دقق النظر
في الجدول وتحديداً في جزء المطابقة ستجد هناك عنوان كل شبكة فرعية وقناعها وعند
مقارنة عنوان الوجهة للحزمة مع هذا الجدول سينظر الموجه للعنوان 172.16.2.9 ويقارنها بنطاق
العناوين ليقوم بتحديد إلى أي الشبكات تنتمي وبسهولة يميز أنها تنتمي للشبكة
الفرعية 172.16.2.0\24 ، ثم تأتي المرحلة الأخيرة مرحلة إعادة التوجيه والتي تتم من خلال
الجزء الأيمن من الجدول بحيث يحدد الموجه من خلالها إلى أين سيقوم بإرسال الحزمة
ومن خلال المثال هذا سيقوم الموجه بدفع الحزمة عبر منفذه S0/0/0 باتجاه الموجه R2 موضحاً أيضاً عنوان المنفذ لهذا
الموجه وهو 172.16.4.2 .
الخطوة الرابعة: تغليف الحزمة في إطار جديد، في
هذه ال مرحلة الموجه يعرف أين سيوجه الحزمة لكنه لا يستطيع القيام بذلك بدون
تغليفها بغلاف طبقة ربط البيانات (data-link) وهو ما يسمى بالتغليف (encapsulation). الاتصال من نوع (serial) نقطة الى نقطة لا يخرج عن أحد
طرازين (HDLC) وهو الافتراضي أو (PPP) وفي مثل هذا النوع من
الاتصال لا يؤثر معرفة عنوان الـ IP للموجه R2 لسبب بسيط وهو أن الاتصال نقطة الى نقطة أي لا يوجد على طرفيه الا
عنوان المرسل وعنوان المستقبل. فما
تم هو أن R1 قام بإعادة توجيه الحزمة للمنفذ S0/0/0 بعد تغليف الحزمة داخل إطار HDLC كما هو موضح في الشكل:
الخطوة الخامسة: نقل
الإطار، بعد إعداد الإطار وتجهيزه يأتي دور الارسال وقد يحتاج
الموجه الى بعض الوقت للانتظار إذا كان هناك العديد من الإطارات في طريقها أيضاً للإرسال.
إعداد عناوين الـ IP والمسارات المتصلة:
حتى يكون جهاز الموجه
قادراً على توجيه الحزم من خلال منفذ معين يجب إعداد ذلك المنفذ وإعطاؤه عنوان IP وإعداده كذلك حتى تصبح حالته (line status up, line protocol up) وعند هذه النقطة فقط يمكن لأجهزة
التوجيه توجيه الحزم وهذا
يعني أن جهاز الموجه يحتاج إلى معرفة بعض المسارات والتي يستطيع إضافتها إلى جداوله
الخاص بالتوجيه ويتم هذا من خلال ثلاث طرق:
المسارات المتصلة (Connected routes): وهي
المسارات التي يتم إضافتها عن طريق الأمر (ip address) في وضع الإعداد العام على منافذ جهاز
الموجه.
المسارات الثابتة (Static routes): وهي المسارات التي يتم
إضافتها عن طريق الأمر العام (ip route) في وضع الإعداد الخاص للمنفذ على
جهاز الموجه.
بروتوكولات التوجيه (Routing protocols): وهي بروتوكولات يتم إضافتها
وإعدادها على جميع أجهزة التوجيه بحيث تتمكن أجهزة التوجيه من التواصل مع بعضها
البعض ومشاركة بيانات المسارات الممكن استخدامها لتوصيل الحزم وذلك بشكل آلي.
إعداد عناوين الـ IP والمسارات المتصلة (Connected routes): بشكل
افتراضي (آلي) يضيف جهاز الموجه مساراً تلقائياً إلى جدول التوجيه الخاص به للشبكات
الفرعية المتصلة بكل منفذ ويتلخص مفهوم المسارات المتصلة (Connected routes) ببساطة في فكرة ضرورة معرفة عنوان
كل شبكة فرعية متصلة بأحد منافذ جهاز الموجه وذلك حتى يستطيع توجيه الحزم الى تلك
الشبكات الفرعية وكل ما يحتاجه الموجه لفعل ذلك هو عمل بعض العمليات الحسابية
البسيطة بالاستناد على العنوان والقناع لذلك المنفذ وهذا النوع من المسارات لا
يمكن إعداده إلا إذا كان المنفذ في حالة التشغيل أي أن (line status up, line protocol up) وكان للمنفذ عنوان IP تم إضافته مسبقاً باستخدام الأمر (ip address).
يظهر في المخطط أعلاه جهاز الموجه R1 والذي يرتبط بشكل مباشر بثلاث شبكات فرعية وحتى يستطيع الموجه من
تحديد المسارات المتصلة به وإضافتها في جدول التوجيه الخاص به لابد من إعطاء
المنافذ عناوين IP وكذلك القناع المرافق لها ويجب كذلك
التأكد من كون المنافذ في حالة التشغيل ولعمل ذلك نتبع الخطوات التالية:
R1#
configure terminal
R1
(config)# interface GigabitEthernet 0/0
R1
(config-if)# ip address 172.16.1.1 255.255.255.0
R1
(config-if)# no shutdown
R1
(config-if)# interface GigabitEthernet
0/1/0
R1
(config-if)# ip address 172.16.5.1 255.255.255.0
R1
(config-if)# no shutdown
R1
(config-if)# interface Serial 0/0/0
R1
(config-if)# ip address 172.16.4.1 255.255.255.0
R1
(config-if)# no shutdown
وحتى يتم التأكد من أن الموجه قام برسم مساراته المتصلة
مباشرة نستخدم الأمر (show ip route) كما هو موضح أدناه:
تأمل قليلاً في مخرجات الأمر السابق وتحديداً في كل من
المسارات الثلاثة المشار إليها بعد الأمر (show ip route). ستجد أنه يقابل كل منها الحرف C في العمود الأول وكذلك نص يقول "متصل بشكل مباشر" (directly connected) وهذا يعني أن المسار متصل بالموجه. تظهر
المخرجات كذلك معلومات الشبكة المتصل بها فتظهر عنوان الشبكة والقناع المرافق لها ويظهر
كذلك في النهاية لكل من هذه المسارات المنفذ الخاص بها.
لعلك لاحظت وجود
نوع آخر من المسارات التي أنشأها الموجه بشكل تلقائي وهي ما يسمى بالمسار المحلي (local route) تحدد هذا المسارات مساراً واحداً ومحدداً لعنوان IP تم إعداده على منفذ جهاز الموجه، يحتوي كل مسار محلي على طول
بادئة \32 وهو يحدد
مسار الجهاز فعلى سبيل المثال ، المسار المحلي الأخير لـ 172.16.5.1\32 يحدد المسار الذي يتطابق فقط مع
عنوان IP الخاص بـ 172.16.5.1 تستخدم أجهزة التوجيه هذه المسارات
المحلية لإعادة توجيه الحزم المرسلة إلى جهاز الموجه نفسه بشكل أكثر كفاءة.
جدول الـ ARP على جهاز موجه Cisco:
بعد أن أضاف جهاز الموجه
هذه المسارات المتصلة إلى جدوله يستطيع توجيه الحزم بين تلك الشبكات الفرعية وللقيام
بذلك يستخدم جهاز الموجه جدول ARP الخاص به. يُظهِر جدول ARP عناوين الـ IPv4 وما يقابلها من عناوين MAC للأجهزة
المتصلة بنفس الشبكة الفرعية فعند إعادة توجيه حزمة إلى جهاز موجود في نفس الشبكة
الفرعية يقوم جهاز الموجه بتغليف الحزمة بإطار يحوي عنوان MAC الوجهة كما هو موجود في جدول ARP وإذا أراد جهاز الموجه إعادة توجيه حزمة إلى عنوان IP على نفس الشبكة الفرعية ولكنه لم يعثر
على هذا العنوان ضمن جدول ARP فحينها سيستخدم جهاز الموجه (رسائل ARP) لمعرفة عنوان MAC الخاص بذلك الجهاز.
في المثال أدناه
يوضح جدول ARP الخاص بجهاز الموجه R1 وذلك تبعاً للمثال
السابق حيث توضح مخرجات الأمر (show ip arp) العديد من المعلومات مثل عنوان الـ IP في العمود الثاني وعنوان الـ MAC في العمود الرابع والمنفذ المستخدم في العمود الخامس.
العمود الثاني يمثل عمر المعلومات الخاصة
بجدول ARP والذي يمثل مقدار الوقت الذي يحتفظ فيه الجهاز بعنوان الـ MAC الذي تعرف عليه من خلال رسائل ARP بحيث يحتفظ به في ذاكرة التخزين المؤقت لـ ARP. بحيث يقوم الجهاز بإعادة تعيين المؤقت إلى الصفر في كل مرة يتم
فيها تحديث معلومات ARP ويزيل هذه المعلومات إذا وصل المؤقت
إلى العمر الافتراضي (٢٤٠ دقيقة).
ولفهم كيفية
قيام جهاز الموجه R1 بإعادة توجيه الحزمة إلى الجهاز (A) 172.16.1.9 عبر تلك الشبكة الفرعية النهائية
، فهو يقوم بما يلي:
1.
يبحث
في جدول ARP الخاص به عن العنوان لـ 172.16.1.9
2. يغلف الحزمة في إطار Ethernet ويضيف للإطار عنوان الـ MAC للوجهة 0200.3333.3333
3. ينقل الإطار للخارج عبر المنفذ G0/0
إعداد المسارات الثابتة (Static routes): تضيف
جميع أجهزة التوجيه مسارات متصلة كما تم توضيحه سابقاً وتستخدم معظم الشبكات بعد
ذلك بروتوكولات التوجيه الديناميكي (الآلي) والتي تمكن كل جهاز موجه من أن يتعلم
ويتعرف بنفسه على بقية المسارات في الشبكة ككل أما بالنسبة للمسارات الثابتة فهي
المسارات التي يتم إضافتها وإعدادها بشكل مباشر من قبل مهندس الشبكة إلى جدول
التوجيه وتعتبر عملياً أقل استخداماً من التوجيه الديناميكي (الآلي) ولكن هذا لا
يعني عدم أهمية إعداد المسارات الثابتة فهي مفيدة في بعض الأحيان.
يسمح نظام
التشغيل لجهاز الموجه بإعداد المسارات الثابتة الفردية باستخدام الأمر (ip route) بحيث يحدد هذا الأمر الوجهة المرادة ويتم ذلك باستخدام عنوان
الشبكة الفرعية والقناع ويحوي الأمر كذلك توجيهات بشأن إعادة التوجيه بحيث يحوي إما
رقم المنفذ الذي ستخرج منه الحزمة أو عنوان الـ IP لجهاز الموجه الذي ستصل اليه الحزمة ويضيف ذلك المسار إلى جدول التوجيه.
يوضح الشكل أدناه
التفاصيل المتعلقة بالمسار الثابت على R1 للشبكة الفرعية للوجهة 172.16.2.0\24 والموجودة في أقصى
اليمين ولإنشاء المسار الثابت هذا على R1 سيتم تزويد R1 بعنوان الشبكة الفرعية الوجهة والقناع الخاص بها
مرفقاً كذلك في الأمر إما واجهة R1 التي
ستخرج منها الحزمة (S0/0/0) أو عنوان الـ IP لجهاز الموجه R2 وهو (172.16.4.2).
للتوضيح أكثر تمثل الأوامر أدناه الطريقتين
المستخدمتين في بناء المسارات الثابتة وهما (أخرج الحزمة من هنا أو أرسل الحزمة
الى هنا) وذلك وفقاً للمخطط الذي يليها:
ففي الأمر الأول تم بناء المسار الثابت للشبكة
الفرعية (172.16.2.0) باستخدام الطريقة (أخرج الحزمة من المنفذ S0/0/0) وفي الأمر الثاني تم بناء المسار الثابت للشبكة الفرعية (172.16.3.0) باستخدام الطريقة (أرسل الحزمة إلي العنوان 172.16.5.3) وكلى الطريقتين صحيحة ومفهومة لدى
جهاز الموجه. وللتأكد
من إضافة هذين المسارين في جدول توجيه الموجه نستخدم الأمر (show ip route
static) كما هو موضح أدناه:
معظم الشبكات اليوم تستخدم بروتوكولات التوجيه الديناميكي
(الآلي) لمعرفة كل المسارات المؤدية إلى الشبكات الفرعية البعيدة بدلاً من استخدام
المسارات الثابتة ومع ذلك فعند عدم استخدام بروتوكولات التوجيه الديناميكي (الآلي)
سيضطر مهندس الشبكة إلى إعداد جميع المسارات الثابتة لكل شبكة فرعية على كل جهاز موجه.
فعلى سبيل المثال لن يتمكن الجهاز الشخصي "A" في الشكل أعلاه من تلقي الحزم من الجهاز الشخصي "B" لأن جهاز الموجه R2 لا يحتوي على المسار
الخاص بالشبكة الفرعية للجهاز الشخصي "A" وسيحتاج الموجه R2 إلى إعداد المسارات الثابتة
للشبكات الفرعية الأخرى وكذلك هو الحال مع جهاز الموجه R3.
المسار الثابت لجهاز محدد (Static Host Route): يعتبر ضمن المسارات الثابتة الا أنه مسار ثابت
لجهاز محدد بدلاً من كونه مسار ثابت لشبكة فرعية ولإعداد مثل هذا النوع من السارات
الثابتة نستخدم الأمر (ip route) والذي يحوي عنوان IP بالإضافة إلى القناع 255.255.255.255 مما يجعل المسار
محدداً لجهاز واحد فقط فقد يستخدم مهندس الشبكة هذا النوع من المسارات لتوجيه
الحزم إلى جهاز واحد وعبر مسار واحد في حين أن بقية الأجهزة في الشبكة ذاتها
تستخدم مسار آخر. فعلى سبيل المثال يمكنك تحديد هذين المسارين الثابتين للشبكة
الفرعية 10.1.1.0\24 والجهاز 10.1.1.9 مع وجهتين مختلفتين على النحو
التالي:
ip route 10.1.1.0
255.255.255.0 10.2.2.2
ip route 10.1.1.9
255.255.255.255 10.9.9.9
لاحظ وجود تداخل
بين هذين المسارين فالحزمة المرسلة إلى 10.1.1.9 والتي تصل إلى جهاز التوجيه ستتوافق
مع كلا المسارين إلا أن أجهزة التوجيه عند حدوث مثل ذلك تقوم باختيار المسار
الأكثر تحديداً (أي المسار الذي يحتوي على أطول بادئة). لذلك سيتم إعادة توجيه
الحزمة المرسلة إلى 10.1.1.9 إلى الموجه التالي صاحب العنوان 10.9.9.9 وسيتم إرسال الحزم المرسلة إلى وجهات
أخرى في الشبكة الفرعية 10.1.1.0\24 إلى الموجه التالي
صاحب العنوان 10.2.2.2
المسار الثابت الافتراضي (Static Default Route): أحياناً قد لا يجد جهاز الموجه مساراً لعنوان
الـ IP المطلوب توجيه الحزمة له ضمن جدول التوجيه الخاص به وعند حدوث ذلك
يتم تجاهل تلك الحزمة من قبل جهاز الموجه فكما نعلم أنه يمكن إعداد أجهزة التوجيه
بحيث تستخدم إما مساراً ثابتاً تم إعداده من قبل مهندس الشبكة أو مساراً تم تعلمه
ديناميكياً (آلياً). وفكرة المسار الثابت الافتراضي تتلخص في تحديد مساراً ثابتاً
ليكون المسار الذي يقوم جهاز الموجه بتوجيه الحزم إليه في حالة لم يجد ضمن جدوله
للتوجيه أي مسار يتطابق مع تلك الحزمة.
أحد الأمثلة
التي قد تستخدم فيها الشركات والمنظمات هذا النوع من المسارات الافتراضية الثابتة
في شبكاتها الخاصة هو عندما يكون لدى الشركة العديد من المواقع البعيدة المتصلة
بها عن طريق اتصال واحد WAN. بحيث يحتوي كل موقع بعيد على مسار
مادي واحد فقط يمكن استخدامه لإرسال الحزم إلى بقية الشبكة. لذلك وبدلاً من
استخدام بروتوكولات التوجيه قد يستخدم كل جهاز موجه بعيد مساراً افتراضياً يوجه كل
حركة المرور إلى موقع محدد يكون غالباً مركزي كما هو موضح في الشكل أدناه:
يمكن إعداد المسار الافتراضي الثابت باستخدام قيم خاصة
للشبكة الفرعية والقناع في الأمر (ip route) وهي القيم 0.0.0.0 و 0.0.0.0 فعلى سبيل المثال
الأمر (ip route
0.0.0.0 0.0.0.0 S0/0/1) ينشئ
مسارًا افتراضيًا ثابتًا على جهاز التوجيه B1 يطابق جميع
الحزم ويرسلها إلى الواجهة S0/0/1.
اكتشاف الأخطاء ومعالجتها في المسارات الثابتة: يمكن
تصنيف الأخطاء عند الحديث عن المسارات الثابتة إلى ثلاثة أنواع من الأخطاء هي:
1. المسار موجود ضمن جدول التوجيه لكنه خاطئ.
2. المسار غير موجود ضمن جدول التوجيه.
3. المسار موجود ضمن جدول التوجيه وهو صحيح لكن الحزم لا تصل
إلى الوجهة.
الحالة
الأولى (المسار موجود ضمن جدول التوجيه لكنه خاطئ): قد
تكون هذه الحالة واضحة جداً ومع ذلك من المهم التذكير ببعض الأساسيات. يكون المسار
الثابت فعالاً إذا ما تمت كتابة الأمر (ip route) بشكل صحيح وخالي من الأخطاء. نعم نظام التشغيل يتحقق من البنية التركيبية
للأمر ويقوم ببعض عمليات التحقق وبمجرد اجتياز هذه الفحوصات يقوم بإدراج هذا
المسار في جدول توجيه حتى ولو كان المسار يحتوي على عناوين تم وضعها بشكل خاطئ.
على سبيل المثال
قد يستخدم المسار شبكة فرعية وقناعاً يتضمن نطاقاً مختلفاً من العناوين عن تلك
الموجودة في الشبكة الفرعية للوجهة. أو قد يكون الخلل في إعدادات جهاز الموجه
الموجود في منتصف الرسم التخطيطي بحيث يفترض مثلاً أن يكون عنوان الخطوة التالية (next-hop)هي
باتجاه جهاز الموجه الموجود على اليسار بينما كان العنوان المدخل هو جهاز الموجه
الموجود على اليمين. أو قد يكون عنوان الخطوة التالية (next-hop) صحيح نظرياً لكنه خاطئ إملائياً.
على أي حال لابد
من التحقق من عدة عناصر عندما يتعلق الأمر بالمسارات الثابتة وتتأكد من وجود هذا
النوع من المسارات عن طريق الأمر (show ip route):
·
هل
يوجد خطأ في العمليات الحسابية لعنوان الشبكة الفرعية والقناع الخاص بها؟
·
هل
عنوان الخطوة التالية (next-hop) صحيح ويشير إلى عنوان جهاز الموجه المجاور؟
·
هل
يحدد عنوان الخطوة التالية (next-hop) المسار الصحيح الذي يجب أن يسلك؟
·
هل المنفذ
الذي ستخرج منه الحزمة صحيح وشير إلى منفذ موجود على جهاز الموجه الذي يتم تكوين
المسار الثابت عليه؟
الحالة
الثانية (المسار غير موجود ضمن جدول التوجيه): بعد إعداد
الأمر (ip route) على الموجه قد يضيفه نظام التشغيل كمسار في جدول توجيه وقد لا
يفعل فنظام التشغيل يأخذ في الاعتبار عدة نقاط قبل إضافة المسار إلى جدول التوجيه
الخاص به:
·
بالنسبة لأمر (ip route) والذي يحوي
رقم المنفذ الذي ستخرج منه الحزمة يجب أن تكون حالة ذلك المنفذ في حالة التشغيل(up/up).
·
بالنسبة لأمر (ip route) والذي يحوي
عنوان الخطوة التالية (next-hop) يجب
أن يكون لجهاز الموجه المحلي مساراً للوصول لذلك العنوان.
في
الحقيقة نستطيع إعداد المسار الثابت وجعل نظام التشغيل يتجاهل هذه الفحوصات
الأساسية ويضيف هذا المسار في جدول التوجيه مباشرةًِ وذلك بإضافة الكلمة (permanent) في نهاية أمر الإعداد ليصبح كالتالي:
وهنا يجب الإشارة إلى أنه
على الرغم من أن إضافة الكلمة (permanent) تجبر جهاز التوجيه على
إدراج المسار في جدول التوجيه دون التحقق من المنفذ الذي ستخرج منه الحزمة أو التحقق
من عنوان الخطوة التالية (next-hop) إلا
أنها لا تعالج أخطاء المسار لو كان المنفذ معطلاً ولا يعمل. بمعنى أنه في حال فشل المنفذ
في ارسال الحزمة فسيظل المسار موجوداً ضمن جدول التوجيه، ولكنه لا يعمل.
الحالة
الثالثة (المسار موجود ضمن جدول التوجيه وهو صحيح لكن الحزم لا تصل إلى الوجهة): عند
الحديث عن هذه الحالة والتي يكون فيها المسار موجود وصحيح لكن الحزم لا تصل
لوجهتها يجب الاتفاق على أنه يوجد العديد من الأسباب التي قد تتسبب في ذلك وليس
بالضرورة أن يكون الخلل فقط منحصراً في إعدادات المسار الثابت. فالمسار الثابت غير الصحيح هو مجرد
عنصر واحد من العديد من العناصر التي يجب التحقق والتأكد منها عند البحث عن الخلل واكتشافه
وإصلاحه. مثلاً لو كان لدينا المشكلة التالية "لا يمكن للجهاز (A) الاتصال
بالخادم (B)"
قد يكون السبب الأساسي هو المسار الثابت وقد يكون شيئاً آخر تماماً ليس له علاقة
تماماً بالتوجيه. فمن المهم جداً في مثل هذه الحالة التأكد من الأوامر التي أُضيفت
لها الكلمة (permanent) وذلك لأنه كما مر سابقاً في الحالة الثانية أن جهاز الموجه
سيقبلها ويضيف المسار الخاص بها بدون التدقيق والتأكد. فقد يكون المنفذ الذي ستخرج
منه الحزمة غير صحيح أو أن عنوان الخطوة التالية (next-hop) غير صحيح.
إعادة توجيه IP مع أطول بادئة مطابقة:
العمليات التي يقوم بها جهاز الموجه لإكمال عملية التوجيه
تتطلب منه المقارنة بين عناوين الـ IP للحزم المرسلة مع جدوله الخاص بالتوجيه. غالباً ما يتطابق مسار
واحد فقط مع عنوان الوجهة وعندما لا يكون هناك الا مسار واحد فقط سيكون تصرف جهاز
الموجه واضحاً وهو استخدام ذلك المسار.
في بعض الحالات
يتطابق عنوان وجهة معينة مع أكثر من مسار واحد من مسارات جدول التوجيه لجهاز
الموجه. فعلى سبيل المثال قد يُدرج أحد المسارات الشبكة الفرعية 10.1.0.0\16 والشبكة الفرعية 10.1.1.0\25 والشبكة الفرعية الأخرى أيضاً 10.1.1.1\32 بحيث تطابق جميع هذه الشبكات
الفرعية الحزمة المرسلة لعنوان الـ IP 10.1.1.1 وهذا قد
يحدث بسبب بعض مميزات جهاز الموجه والتي منها إمكانية إعداد المسارات الثابتة وغير
ذلك من المميزات.
وفي مثل هذه
الحالات يضطر جهاز الموجه لعملية "اتخاذ قرار" بشأن المسار
الأفضل لإرسال الحزمة والمسار الأفضل دائماً ما يكون هو المسار الأكثر تحديدًا بمعنى
أنه المسار الذي يحتوي على أطول قناع طول للبادئة. نستطيع أن نعرف المسار الأفضل
والذي سيستخدمه جهاز الموجه من خلال طريقتين الأولى هي استخدام الأمر (show ip route) مع بعض العمليات الحسابية البسيطة على الشبكات
الفرعية. المثال أدناه يوضح هذه الفكرة حيث سترى العديد من المسارات المتداخلة وحيث
أن جميع المسارات تم إنشاؤها عن طريق أحد بروتوكولات التوجيه OSPF كان
الأمر متبوعاً باسم البروتوكول:
في المثال السابق ولمحاولة معرفة أي المسارات سيكون الأفضل
لجهاز الموجه نحتاج التعامل مع جزأين من المعلومات: عنوان الـ IP لوجهة الحزمة وكذلك محتويات
جدول توجيه لجهاز الموجه. فعنوان الشبكة الفرعية والقناع المدرجين للمسار يحددان
نطاق العناوين المطابقة لهذا المسار. ويمكن معرفة ذلك باستخدام بعض العمليات
الحسابية مع الشبكات الفرعية وأقنعتها فنستطيع معرفة مجموعة العناوين المطابقة لكل
مسار. الجدول أدناه يوضح الشبكات الفرعية الخمس المدرجة في المثال السابق ونطاقات
العناوين التي يتضمنها كل منها:
الشبكة
الفرعية/القناع |
مدى
العناوين الخاص بها |
172.16.1.1\32 |
عنوان واحد فقط (172.16.1.1) |
172.16.1.0\24 |
172.16.1.0 – 172.16.1.255 |
172.16.0.0\22 |
172.16.0.0 –
172.16.3.255 |
172.16.0.0\16 |
172.16.0.0 –
172.16.255.255 |
0.0.0.0\0 |
جميع العناوين (0.0.0.0 – 255.255.255.255) |
يُلاحظ في هذه النطاقات لعناوين الشبكات الفرعية تتداخل العديد من العناوين
فيما بينها وفي مثل هذه الحالة يتم استخدام المسار صاحب البادئة الأطول وهذا يعني
أن المسار ذي البادئة \16 أفضل من المسار
ذي \10
والمسار الذي يحتوي على البادئة \25 أفضل من المسار
الذي يحتوي على البادئة \20 وهكذا. وللتوضيح
أكثر لاحظ أن الحزمة المرسلة إلى 172.16.1.1 تطابق فعليًا
جميع المسارات الخمسة المدرجة في جدول التوجيه في المثال السابق. ولاحظ كذلك أن
أطوال البادئة تتراوح من \0 إلى \32 وكما هو واضح أن البادئة الأطول هي \32 وبالتالي فإن المسار
الذي سيستخدمه جهاز الموجه هو 172.16.1.1\32
في القائمة التالية بعض الأمثلة على
عناوين IP لوجهات متعددة وتوضح القائمة المسارات التي
سيطابقها جهاز الموجه بناء على الجدول السابق والمسار المحدد الذي سيستخدمه جهاز
التوجيه:
·
172.16.1.1 : يطابق جميع
المسارات في الجدول ولكنه سيأخذ المسار الأعلى 172.16.1.1\32
· 172.16.1.2 : يطابق المسارات
الأربعة الأخيرة في الجدول ولكنه سيأخذ المسار الأعلى 172.16.1.0\24
· 172.16. 2.3 : يطابق المسارات
الثلاثة الأخيرة في الجدول ولكنه سيأخذ المسار الأعلى 172.16.0.0\22
· 172.16. 4.3 : يطابق المسارين
الأخيرين في الجدول ولكنه سيأخذ المسار الأعلى
172.16.0.0\16
الطريقة الثانية التي نستطيع أن نعرف من
خلالها أي المسارات سيستخدم جهاز الموجه هي بالأمر (show
ip route) لكنه متبوع
بعنوان الـ IP والذي يفترض أن يرد جهاز الموجه بعرض
المسار الذي سيستخدمه في إرسال تلك الحزمة اليه وتتميز هذه الطريقة بأنها لا تحتاج
الى أي عمليات حسابية حيث سيوضح جهاز الموجه المسار المستخدم بشكل محدد. فعلى سبيل
المثال يوضح المثال أدناه مخرجات الأمر (show ip
route 172.16.4.3) على نفس جهاز الموجه المستخدم في
المثال السابق ويظهر في السطر الأول المسار المحدد وهو 172.16.0.0\16 ويظهر بعد ذلك تفاصيل
هذا المسار مثل الواجهة المستخدمة وهي GigabitEthernet0/1/0
وكذلك عنوان الخطوة التالية (next-hop)
وهي 172.16.25.129