مدونة NetworkSet

الـ Route-Map تحت مجهر NetworkSet

نواصل معكم اليوم الحديث الذي بدأناه في تدوينة سابقة عن الـ Policy Based Routing ماهي وكيف نستفيد منها والتى وعدت فيها بتخصيص تدوينة كاملة تتحدث عن كيفية الأستفادة من هذه الخاصية من خلال الـ Route-Map والتى سوف تكون محور حديثنا لهذا اليوم

Route-Map

تعتبر هذه الخاصية على أجهزة سيسكو احد الخواص الهامة جدا فهي تقوم بوظيفة كبيرة وهامة ألا وهي تغيير قواعد اللعبة ؟ والمقصود هنا باللعبة هي عملية توجيه وأرسال الترافيك عبر الشبكة من خلال أتاحة أمكانية التوجيه أعتمادا على معطيات آخرى غير الـ Destination الخاص بالباكيت والموضوع أيضا ليس مقتصرا على التوجيه فقط لأن الـ Route-Map تمكننا من التلاعب بالـ Header  الخاص بالباكيت وتغييره أيضا بالأضافة إلى أستخدامه مع الـ Redistribution والـ BGP والـ NAT وطبعا الـ PBR والكثير من الأستخدامات التى لايسعني ذكرها فأنا كلما أتعرض لسؤال غامض لا أفهم كيف تم تطبيقه أول مايخطر على بالي هو الـ Route-Map لأن هذه الخاصية تتيح لك الكثير من الأمور  ومن تعامل مع لغات البرمجة سوف يفهم فكرة الـ Route-Map أسرع من غيره لأن الفكرة نفسها موجودة في لغات البرمجة وهي (IF/Then/Else) لكن هنا نحن نعتمد على Match و Set لتطبيق القواعد العملية على الشبكة.

أمر الـ Match

يعتبر أمر الـ Match المسؤول عن تحديد الشيء الذي يجب أن يتطابق مع الـ Route-Map وبكلام آخر يعتبر أمر الـ Match هنا هو الشرط الذي يجب أن يتحقق لكي نقوم بتطبيق المعطيات القادمة من أمر الـ SET مثل أن نقول Match ip address  ونتبعها برقم أكسس ليست قمت بأعداداها مسبقا مثل أن أقول

Cisco's
Access-list 1 permit 192.168.1.1 0.0.0.255

ليصبح لدي امر الـ Route-map كالآتي match ip address 1 والذي يعني ان وجد أي أيبي ينتمي للأكسس ليست رقم واحد عندها قم بعمل matching له ومن هنا أحب ان أشير إلى شيء خطير وهام الأكسس ليست هنا لاتلعب أي دور في المنع أو السماح يعني لو كان الأمر السابق deny فهذا لايعني شيء مادام الأمر لم يتم تطبيقه على أحد المنافذ نعود للـ Match فلو فرضنا أن هناك فعلا باكيت مرت تحمل هذا الأيبي عندها مباشرة سوف يعمل الـ Route-Map لأن أحد شروطه قد تحقق وسوف أوضح كل هذه الامور بأمثلة في تدوينة ثالثة سوف أطرح فيها ثلاث أو أربع أمثلة لحالات مختلفة لأن موضوع الـ Route-Map هام وأحتاج إلى شرحه بشكل كامل لذلك موضوعنا هذا سوف يكون نظري.

وقبل أن ننتقل إلى أمر الـ Set أود الأشارة إلى أمر بالغ الأهمية وهو وجود أكثر من شرط فلو فرضت أن كتبت الأوامر التالية :

Cisco's
Match ip address 1
Match ip address 2
Match ip address 130

في مثالنا هذا تقول لنا سيسكو أن الـ Route Map سوف تطبق في حالة واحدة فقط وهي وجوب وجود Match للثلاثة معا وبكلام آخر يجب أن يتم عمل Match للشروط الثلاثة الموضحة في الاعلى أما لو في حال كان الأمر على الشكل الآتي Match ip address 1, 2, 130 فالـ Route Map سوف تتفعل في حال وجود Match لاي واحده من الأكسس ليست

بكلام آخر

If several match commands are present in a clause, all must succeed for a given route in order for that route to match the clause (The logical AND algorithm is applied for multiple match commands).

If a match command refers to several objects in one command, either of them should match (the logical OR algorithm is applied).

الشرح

الأمر

الشرط سوف يكون مع المنفذ ورقمه

match interface interface-type interface-number [… interface-type interface-number]

الشرط مع الأيبي أو مع عنوان الشبكة

match ip address {[access-list-number | access-list-name] | prefix-list prefix-list-name}

الشرط مع الـ Next-Hop  أو مع الوجهة التى سوف ترسل إليه الشبكة

match ip next-hop {access-list-number | access-list-name}

الشرط مع العنوان المرسل Source IP

match ip route-source {access-list-number | access-list-

الشرط مع قيمة الـ Metric الخاصة بتوجيه الشبكة وهي أما رقم ثابت أو قيمة تحدد بين رقمان

match metric metric-value [+–deviation]

الشرط مع نوع وشكل التوجيه وهي خاصة بي الـ Redistribution

match route-type {internal | external [type-1 | type-2] | level-1 | level-2}

أمر الـ SET

قبل أن ندخل في أمر الـ Set سوف أذكر بشيء هام ذكرته في البداية فأنا تحدثت أن الـ Route-Map يستطيع أن يعدل ويغير في المحتويات ولكن أنا لم أذكر أن هناك Action أو ردة فعل يقوم الـ Route-Map بأتخاذها فعندما نبدأ بأعداد الـ Route-Map نكتب الأمر التالي :

Cisco's
Route-map networkset permit 10

كلمة networkset هنا هي بمثابة أسم للـ Route-Map أما أمر الـ Permit فهو ردة الفعل التى سوف يقوم بها الـ Route-Map لو في حال حدث Match لأحد المعطيات الموجودة ضمنه وهي تختلف عن أمر الـ SET لأن الـ SET هنا ضرورية للقيام بتغيير معين في محتويات الباكيت بينما الـ Action هي ردة الفعل فلو كان هدفنا هو منع شيء معين مثل شبكة معينة أو منفذ معين أو حتى قيمة معينة Metric أو نوع معين من أنواع التوجيه Route-Type عندها نقوم بكتابة أمر الـ Match الخاص به فقط ولا نضيف أي أمر Set بعدها وقبل ذلك نحدد الـ Action التى يجب أن تكون وهي deny أما لو كان هدفنا هو التغيير عندها يتوجب علينا أن نضع الـ Action دائما Permit وبعدها ندخل أمر الـ Set لكي نحدد الشيء الذي نريد تغييره وهذه الأمور سوف تتضح مع الأمثلة العملية التى سوف أطرحها في التدوينة الثالثة .

هذا مالدي اليوم أتمنى أن تكون الصورة واضحة وأن لا أكون قد عقدت الامر أكثر من اللازم ولكن أعتقد أن التدوينة الثالثة سوف تجعل الأمر واضح جدا وبدون أي تعقيد أتمنى أن تكونوا قد أستفدتوا من تدوينتي لهذا اليوم وإن شاء الله العمل متواصل على المدونة ولاتنسونا من دعواتكم ودمتم بود.

Exit mobile version