أحمد فرحات
03-11-2011, 09:12 AM
إن القدرة على سرعة ترجمة الجمل الموجودة في الـRouting Table من المهارات الأساسية لدي حاملي شهادات سيسكو وهذه الجمل لها قواعد معينة نسير علىها في عملية ترجمة هذه الجمل،ولنبدأ ببعض التعريفات الأساسية التي سوف تساعدنا إن شاء الله في فهم هذه الجمل. يمكن تقسيم الـ Routes في الجدول إلي مستويين:
1- المستوي الأول "Level One" وهو كل Route يحتوي على subnet mask مساوٍ أو أقل من الـ default subnet mask لهذه الفئة "class". فمثلاً عند كتابة الأمر:
Ex:1
router#show ip route
D 192.168.32.0/26 [90/25789217] via 10.1.1.1
R 192.168.32.0/24 [120/4] via 10.1.1.2
O 192.168.32.0/19 [110/229840] via 10.1.1.3
نلاحظ أن الجملة الثانية والتي تم معرفتها عن طريق بروتوكول الRip تحتوي على subnet mask يساوي /24وهو مساوٍ لـ default subnet maskللفئة "c"والذي يساوي /24، ونفس الأمر بالنسبة للجملة الثالثة والتي تم معرفتها عن طريق بروتوكول الـOSPF فهي تحتوي على subnet mask يساوي /19 وهو أقل من الـ default subnet mask للفئة "c"،وعلى ذلك يمكن تحديد أنواع الRoutes التي تنتمي للمستوي الأول Level One"" على الشكل التالي:
1- Default Route : والذي يرمز إليه بالعنوان "Ip" 0.0.0.0 والـ "subnet mask" /0.
2-Supernet Route:وهو الـRoute الذي يحتوي على subnet mask أقل من الـ default subnetmask فمثلاً: الشبكات من 192.168.0.0/24 إلي 192.168.255.0/24 يمكن عمل summarization لها لتصبح 192.168.0.0/16،وعلى سبيل المثال، الجملة الأولي توضح هذه النقطة:
Ex:2
RouterB#show ip route
C 192.168.0.0/16 is directly connected,Serial1/0
S* 0.0.0.0/0 is directly connected, Serial1
3-Network Route:وهو الـRoute العادي الذي يحتوي على Subnet Mask مساوٍ للـ default subnetmask على سبيل المثال: الجملة الثانية في المثال التالي توضح ذلك.
Ex:3
router#show ip route
D 192.168.32.0/26 [90/25789217] via 10.1.1.1
R 192.168.32.0/24 [120/4] via 10.1.1.2
O 192.168.32.0/19 [110/229840] via 10.1.1.3
والRoutes في المستوي الأول "Level One" إذا كانت تحتوي على: Exit Ineterface أو Next Hop Ip Address في هذه الحالة تسمي Ultimate Routes، فمثلاً المثال الثاني الجملة الأولي تحتوي على الـexit Interface وبالتالي يعتبر Ultimate Route،وفي المثال الثالث كل الجمل تحتوي على الNext Hop Ip Address وبالتالي أيضاً تعتبر Ultimate.
بل البدء في تعريف الRoutes في هذا المستوي تجدر بنا الإشارة إلي تعريف الـ Parent Rout.
Parent Route:وهو الـRoute الذي يحتوي على subnet mask أكبر من أو يساوي الdefualt subnet mask للفئة التي ينتمي لها، فمثلاً:
نلاحظ أن الجملة الأولي في المثال التالي وهي 172.16.0.0/24، نلاحظ أنها تحتوي على subnet mask يساوي /24 وهو بالطبع أكبر من الdefualt subnet mask والذي يساوي /16.
Ex:4
RouterB#show ip route
172.16.0.0/24 is subnetted, 3 subnets
R 172.16.1.0 [120/1] via 172.16.2.1, 00:00:20,Serial0
C 172.16.2.0 is directly connected, Serial0
وفي المثال التالي نجد أن الـParent Route له نفس الـDefault subnet mask:
RouterC#show ip route
172.16.0.0/16 is variably subnetted, 2 subnets, 2 masks
C 172.16.4.0/24 is directly connected, FastEthernet0
S 172.16.0.0/16 is directly connected, Serial0
C 192.168.1.0/24 is directly connected, Serial0
بعد أن انتهينا من تعريف الparent route إذن ما هي الـRoutes في المستوي الثاني:
2- المستوي الثاني "Level two": هذه الـRoutes تسمي الـChilds وهي تقع مباشرة تحت الParent وهي تعتبر Subnet من الـClassful Network Address والذي يمثله الـParent،وهنا عندنا حالتين:
- حالة الـClassful
- حالة الـClassless
1- حالة الـ Classful كما في المثال الرابع، حيث يشير الـParent في الجملة الأولي إلي أنه is subnetted, 3 subnets وعلى ذلك يحتوي الـParent فقط على الـSubnet Mask ولا يحتوي أي من الـChilds على الـSubnet Mask.
2- حالة الـClassless كما في المثال التالي "المثال الخامس"، حيث يشير الـParent في الجملة الأولي إلي أنه variably subnetted, 2 subnets, 2 masks، أي أنه يشير إلي استخدام الـVLSM،وفي هذه الحالة يحتوي الـParent على الdefualt subnet mask وهو في هذا المثال /16 وبالتالي يحتوي كل Child على الـsubnet mask الخاص به كما في المثال.
RouterC#show ip route
172.16.0.0/16 is variably subnetted, 2 subnets, 2 masks
C 172.16.4.0/24 is directly connected, FastEthernet0
S 172.16.0.0/16 is directly connected, Serial0
C 192.168.1.0/24 is directly connected, Serial0
إذن كيف يبحث الRouter في هذه المستويات –الأول والثاني- وكيف يحدد الجهة التي سوف يرسل إليها البيانات وكيف يحدد أي مخرج سوف يرسل منه هذه البيانات وكيف يفاضل بين هذه الـRoutes ؟حقيقة إن عملية البحث هذه يمكن تلخيصها في النقاط التالية إن شاء الله:
1- يبدأ الراوتر بالبحث في routes المستوي الأول بأنواعها التي ذكرناها آنفاً، هنا نحن أمام حالتين:
أ- أنه يجد Match أي أنه وجد Route له Subnet Mask يساوي أو أكبر من الSubnet Mask الذي عنده في الـRoutes Table وهذا ما يسمي بالـLongest Match، بعد ذلك يبحث في هذا الـRoute هل هو Ultimate أي هل يحتوي على Exit Interface أو Next Hop Ip Address، إذا كانت الإجابة نعم يقوم بإرسال الPacket باستخدام هذا الـRoute، إذا كانت الإجابة لا ينتقل إلي الحالة الثانية ب.
ب- إذا كان الـRoute ليس Ultimate أو بمعني أخر أن هذا الـRoute هو Parent هنا يبدأ يبحث في Routes المستوي الثاني وهي الـChild إذا وجد Match هنا يقوم بإرسال الـPacket باستخدام هذا الـRoute ، إذا لم يجد Match؟ هنا ننتقل إلي النقطة الثانية.
2- إذا لم يجد الراوتر Match هنا تعتمد الخطوة التالية على : هل الراوتر يعتمد على Classful Behavior أم هل يعتمد على Classless Behavior؟
قبل الـIOS 11.3 كان الـdefulat هو الـ Classful Behaviorوالذي يعني أن الراوتر إذا لم يجد Match في المستوي الأول أو الثاني فإن لا يبحث في الـRoutes التي تكون Less Match ولا حتي في الـDefualt Route.
أما بداية من الـIOS 11.3 فإن الـdefulat هو الـ Classful Behavior ما يعني أن الراوتر إذا لم يجد Match في المستوي الأول أو الثاني فإن لا يبحث في الـRoutes التي تكون Less Match ثم في الـDefualt Route،مع ملاحظة أن سواء كان الـBehavior:Classful أو Classless فإن هذا يتعلق بطريقة البحث داخل الRouting Table وليس له علاقة هل الRouting Protocol المستخدم هو Classful أم Classless.
وقبل أن نأخذ مثال على ذلك يجب الإشارة إلي شئ هام جداً أن بروتكول الـEIGRP الوضع الإفتراضي فيه "Defualt" هو الـAuto-Summary ومع وصول أول Update لشبكة معينة عن طريق الـEIGRP يؤدي ذلك إلي تكوين NULL0 INTERFACE وهذا الـInterface يكون Match لأي Packet لا يعرف الراوتر Route لها وطبيعة هذا الـInterface أنه يستقبل الـPackets ويعمل لها Discard وهو أشبه ما يكون بالثقوب السوداء في الفضاء،وهذا يؤدي إلي عدم استخدام لا الـLess Match ولا الـDefualt Route في حالة الـClassless Behavior، لذلك يجب تعطيل خاصية الـAuto-Summary في الـEIGRP.
ولنأخذ مثال لتوضيح هذه العملية بإذن الله:
إذا ووصل الراوتر Packet تريد الوصول إلي 172.16.1.130
http://www.arabhardware.net/images/stories/articles/2010/december/19122010-routing-table/19122010-01.jpg
هنا يبدأ الراوتر بالبحث في المستوي الأول فلا يجد Matchهنا ينتقل للبحث في الـ Parentفيجد أن 172.16.0.0/16 مطابق فيبدأ بالبحث في المستوي الثاني ولكنه أيضاً لا يجد Matchلماذا؟ قد يقول البعض انه قد يأخد C 172.16.1.0/25 بالطبع هذا الكلام يحتاج إلي تدقيق، فلو نظرنا إلي الـSubnet Mask للـRoute نجد أن الـfactor هنا يساوي 128 وبالتالي فإن الشبكة تنتهي بالـHost الذي يأخذ العنوان 172.16.1.126.
هنا إذا كان الـClassfull Behavior هو الـdefulat على الراوتر يقوم الراوتر بعمل Drop للـPacket.
أما إذا كان الـClassless Behavior هو الـdefulat على الراوتر يقوم الراوتر بإعادة البحث ولكن هذه المرة يبحث عن Less Match فيجد أن S 172.16.0.0/13 مطابق فيقوم بإرسال الـPacket من fastEthernet0/0، وهنا لا يضطر لاستخدام الـDefualt Static Route إلا في حالة لم يجد Less Match.
1- المستوي الأول "Level One" وهو كل Route يحتوي على subnet mask مساوٍ أو أقل من الـ default subnet mask لهذه الفئة "class". فمثلاً عند كتابة الأمر:
Ex:1
router#show ip route
D 192.168.32.0/26 [90/25789217] via 10.1.1.1
R 192.168.32.0/24 [120/4] via 10.1.1.2
O 192.168.32.0/19 [110/229840] via 10.1.1.3
نلاحظ أن الجملة الثانية والتي تم معرفتها عن طريق بروتوكول الRip تحتوي على subnet mask يساوي /24وهو مساوٍ لـ default subnet maskللفئة "c"والذي يساوي /24، ونفس الأمر بالنسبة للجملة الثالثة والتي تم معرفتها عن طريق بروتوكول الـOSPF فهي تحتوي على subnet mask يساوي /19 وهو أقل من الـ default subnet mask للفئة "c"،وعلى ذلك يمكن تحديد أنواع الRoutes التي تنتمي للمستوي الأول Level One"" على الشكل التالي:
1- Default Route : والذي يرمز إليه بالعنوان "Ip" 0.0.0.0 والـ "subnet mask" /0.
2-Supernet Route:وهو الـRoute الذي يحتوي على subnet mask أقل من الـ default subnetmask فمثلاً: الشبكات من 192.168.0.0/24 إلي 192.168.255.0/24 يمكن عمل summarization لها لتصبح 192.168.0.0/16،وعلى سبيل المثال، الجملة الأولي توضح هذه النقطة:
Ex:2
RouterB#show ip route
C 192.168.0.0/16 is directly connected,Serial1/0
S* 0.0.0.0/0 is directly connected, Serial1
3-Network Route:وهو الـRoute العادي الذي يحتوي على Subnet Mask مساوٍ للـ default subnetmask على سبيل المثال: الجملة الثانية في المثال التالي توضح ذلك.
Ex:3
router#show ip route
D 192.168.32.0/26 [90/25789217] via 10.1.1.1
R 192.168.32.0/24 [120/4] via 10.1.1.2
O 192.168.32.0/19 [110/229840] via 10.1.1.3
والRoutes في المستوي الأول "Level One" إذا كانت تحتوي على: Exit Ineterface أو Next Hop Ip Address في هذه الحالة تسمي Ultimate Routes، فمثلاً المثال الثاني الجملة الأولي تحتوي على الـexit Interface وبالتالي يعتبر Ultimate Route،وفي المثال الثالث كل الجمل تحتوي على الNext Hop Ip Address وبالتالي أيضاً تعتبر Ultimate.
بل البدء في تعريف الRoutes في هذا المستوي تجدر بنا الإشارة إلي تعريف الـ Parent Rout.
Parent Route:وهو الـRoute الذي يحتوي على subnet mask أكبر من أو يساوي الdefualt subnet mask للفئة التي ينتمي لها، فمثلاً:
نلاحظ أن الجملة الأولي في المثال التالي وهي 172.16.0.0/24، نلاحظ أنها تحتوي على subnet mask يساوي /24 وهو بالطبع أكبر من الdefualt subnet mask والذي يساوي /16.
Ex:4
RouterB#show ip route
172.16.0.0/24 is subnetted, 3 subnets
R 172.16.1.0 [120/1] via 172.16.2.1, 00:00:20,Serial0
C 172.16.2.0 is directly connected, Serial0
وفي المثال التالي نجد أن الـParent Route له نفس الـDefault subnet mask:
RouterC#show ip route
172.16.0.0/16 is variably subnetted, 2 subnets, 2 masks
C 172.16.4.0/24 is directly connected, FastEthernet0
S 172.16.0.0/16 is directly connected, Serial0
C 192.168.1.0/24 is directly connected, Serial0
بعد أن انتهينا من تعريف الparent route إذن ما هي الـRoutes في المستوي الثاني:
2- المستوي الثاني "Level two": هذه الـRoutes تسمي الـChilds وهي تقع مباشرة تحت الParent وهي تعتبر Subnet من الـClassful Network Address والذي يمثله الـParent،وهنا عندنا حالتين:
- حالة الـClassful
- حالة الـClassless
1- حالة الـ Classful كما في المثال الرابع، حيث يشير الـParent في الجملة الأولي إلي أنه is subnetted, 3 subnets وعلى ذلك يحتوي الـParent فقط على الـSubnet Mask ولا يحتوي أي من الـChilds على الـSubnet Mask.
2- حالة الـClassless كما في المثال التالي "المثال الخامس"، حيث يشير الـParent في الجملة الأولي إلي أنه variably subnetted, 2 subnets, 2 masks، أي أنه يشير إلي استخدام الـVLSM،وفي هذه الحالة يحتوي الـParent على الdefualt subnet mask وهو في هذا المثال /16 وبالتالي يحتوي كل Child على الـsubnet mask الخاص به كما في المثال.
RouterC#show ip route
172.16.0.0/16 is variably subnetted, 2 subnets, 2 masks
C 172.16.4.0/24 is directly connected, FastEthernet0
S 172.16.0.0/16 is directly connected, Serial0
C 192.168.1.0/24 is directly connected, Serial0
إذن كيف يبحث الRouter في هذه المستويات –الأول والثاني- وكيف يحدد الجهة التي سوف يرسل إليها البيانات وكيف يحدد أي مخرج سوف يرسل منه هذه البيانات وكيف يفاضل بين هذه الـRoutes ؟حقيقة إن عملية البحث هذه يمكن تلخيصها في النقاط التالية إن شاء الله:
1- يبدأ الراوتر بالبحث في routes المستوي الأول بأنواعها التي ذكرناها آنفاً، هنا نحن أمام حالتين:
أ- أنه يجد Match أي أنه وجد Route له Subnet Mask يساوي أو أكبر من الSubnet Mask الذي عنده في الـRoutes Table وهذا ما يسمي بالـLongest Match، بعد ذلك يبحث في هذا الـRoute هل هو Ultimate أي هل يحتوي على Exit Interface أو Next Hop Ip Address، إذا كانت الإجابة نعم يقوم بإرسال الPacket باستخدام هذا الـRoute، إذا كانت الإجابة لا ينتقل إلي الحالة الثانية ب.
ب- إذا كان الـRoute ليس Ultimate أو بمعني أخر أن هذا الـRoute هو Parent هنا يبدأ يبحث في Routes المستوي الثاني وهي الـChild إذا وجد Match هنا يقوم بإرسال الـPacket باستخدام هذا الـRoute ، إذا لم يجد Match؟ هنا ننتقل إلي النقطة الثانية.
2- إذا لم يجد الراوتر Match هنا تعتمد الخطوة التالية على : هل الراوتر يعتمد على Classful Behavior أم هل يعتمد على Classless Behavior؟
قبل الـIOS 11.3 كان الـdefulat هو الـ Classful Behaviorوالذي يعني أن الراوتر إذا لم يجد Match في المستوي الأول أو الثاني فإن لا يبحث في الـRoutes التي تكون Less Match ولا حتي في الـDefualt Route.
أما بداية من الـIOS 11.3 فإن الـdefulat هو الـ Classful Behavior ما يعني أن الراوتر إذا لم يجد Match في المستوي الأول أو الثاني فإن لا يبحث في الـRoutes التي تكون Less Match ثم في الـDefualt Route،مع ملاحظة أن سواء كان الـBehavior:Classful أو Classless فإن هذا يتعلق بطريقة البحث داخل الRouting Table وليس له علاقة هل الRouting Protocol المستخدم هو Classful أم Classless.
وقبل أن نأخذ مثال على ذلك يجب الإشارة إلي شئ هام جداً أن بروتكول الـEIGRP الوضع الإفتراضي فيه "Defualt" هو الـAuto-Summary ومع وصول أول Update لشبكة معينة عن طريق الـEIGRP يؤدي ذلك إلي تكوين NULL0 INTERFACE وهذا الـInterface يكون Match لأي Packet لا يعرف الراوتر Route لها وطبيعة هذا الـInterface أنه يستقبل الـPackets ويعمل لها Discard وهو أشبه ما يكون بالثقوب السوداء في الفضاء،وهذا يؤدي إلي عدم استخدام لا الـLess Match ولا الـDefualt Route في حالة الـClassless Behavior، لذلك يجب تعطيل خاصية الـAuto-Summary في الـEIGRP.
ولنأخذ مثال لتوضيح هذه العملية بإذن الله:
إذا ووصل الراوتر Packet تريد الوصول إلي 172.16.1.130
http://www.arabhardware.net/images/stories/articles/2010/december/19122010-routing-table/19122010-01.jpg
هنا يبدأ الراوتر بالبحث في المستوي الأول فلا يجد Matchهنا ينتقل للبحث في الـ Parentفيجد أن 172.16.0.0/16 مطابق فيبدأ بالبحث في المستوي الثاني ولكنه أيضاً لا يجد Matchلماذا؟ قد يقول البعض انه قد يأخد C 172.16.1.0/25 بالطبع هذا الكلام يحتاج إلي تدقيق، فلو نظرنا إلي الـSubnet Mask للـRoute نجد أن الـfactor هنا يساوي 128 وبالتالي فإن الشبكة تنتهي بالـHost الذي يأخذ العنوان 172.16.1.126.
هنا إذا كان الـClassfull Behavior هو الـdefulat على الراوتر يقوم الراوتر بعمل Drop للـPacket.
أما إذا كان الـClassless Behavior هو الـdefulat على الراوتر يقوم الراوتر بإعادة البحث ولكن هذه المرة يبحث عن Less Match فيجد أن S 172.16.0.0/13 مطابق فيقوم بإرسال الـPacket من fastEthernet0/0، وهنا لا يضطر لاستخدام الـDefualt Static Route إلا في حالة لم يجد Less Match.