Saturday, December 22, 2012

CISCO Control Plane Policing (CoPP) Part-1

تدوينة اليوم تدور حول ما يسمى بال Control Plan Policing او ما هو معروف بال CoPP و هى احد الطرق المستخدمة لعمل Control Plan Protection او ما يسمى بال CPP  و من خلال قراءة هذا المصطلح نستطيع فهم ان الغرض منها هو تطبيق Policy محدده على ال Control plan الخاص بال device , تستخدم ال CoPP غاليا فلى تطبيق معايير QOS على  ال routers و لحماية ال CPU Utilization عن طريق وضع قيود و حدود لبعض ال features او ال parameters كما سنرى .

 ال scenario الذى سوف اتناوله هو عمل قيود على ال ICMP Packets التى تاتى الى ال Control Plan مباشرة لتجنب اى ICMP flooding من خلال ارسال بعض الاشخاص لملايين ال PING Packets  فالحل هو تطبيق policy على ال control plane الخاص بال router مباشرة بدل من وضع restriction على كل interface متصل بال router.
فكما نرى ال PING من R1 لل loop back الخاص ب R2 مع زيادة حجم ال ICMP Packet الى 2000 , و ال Ping  يعمل بنجاح 



أولا : انشاء ACL بت match ال telnet :

ثانيا : انشاء Class-map يت match ال ACL الذى قمنا بانشاءها فى الخطوة السابقة: 

ثالثا : انشاء Police-map بت match ال Class-map الذى قمنا بانشاءها فى الخطوة السابقة ووضع restrictions على ال icmp packets التى سوف تمر على ال Control Plan الخاص ب R2 وهو فى حالة زيادة ال ICMP packets عن 8000kbps فال action المتخذ سيكون DROP:

رابعا : نطبق ال Police-map على ال control plane الخاص بال R2:

والان مع اعادة عمل PING ب size=2000 ها هى النتيجة :
و ال Normal Ping :

أرجو ان يكون الموضوع كان مفيد و مفهوم...

Tuesday, December 18, 2012

TCL Scripting Basics

موضوع اليوم عن استخدام لغة TCL "Tool Command Language"  فى عمل بعض ال scripts على ال routers للمساعدة بالاخص فى عمليات ال troubleshooting
قد يكون استخدام ال TCL فى عمليات ال PING هو الامر الشائع استخدامه لل Networks Engineers و لكن دعونا نقف لحظة لمعرفة ما هى هذه اللغة ؟

اولا تاريخ هذه اللغة يرجع الى عام 1980 وتصنف او تعتبر على انها interpreted programming language وباختصار انه هذه اللغة يتم تنفيذ ال code الخاص بها line by line باستخدام ما يسمى بال interpreter وتتميز بسرعة تنفيذ ال code وذلك لاننا كما قلنا يتم التنفيذ line by line و يتم كتابتها فى صورة مبسطة يمكن لاى مستخدم التعامل معها فهى ليست complex language .
حتى الان ال TCL لذيذة ومفهوم تاريخها ولكن كيف لنا ك networks engineers الاستفادة منها ؟
عملية ال combination بين ال CISCO IOS و ال TCL هى ما سوف ياخذ انتباهنا و الاتجاه الى فهم ماهيتها فباستخدام ال TCL يمكنك عمل customization لل IOS لاستخدامه فى اشياء توفر عليك الوقت و المجهود كما سنرى بعد قليل ز
عملية ال combination لل TCL مع ال IOS بدا من 12.3T و بدأت Cisco بعد ذلك فى دمجها مع العديد من ال IOS .

للدخول على ال TCL shell من ال Router :

لمعرفة ال version الخاص بال tcl الموجودة على ال IOS :
لوضع القيمة 9 فى variable X ثم اضافة 9 اخرى على ال X :
وهذا مثال اخر لاستخدام ال append command :
ناتى الان للجزء الخاص بنا ك networks engineers وهو استخدام ال TCL فى عمليات ال Troubleshooting :
 يتم استخدامها بكثرة فى عمليات ال Ping ولكن فى ال Huge Networks فبدلا من ان تقوم بعمل Ping على كل IP فى الشبكة سوف تقوم بكتابة script بسيط و تستخدمه كلما اردت التحقق من ال reachability لكل اجزاء ال network وما يلى مثال توضيحى عن كيفية كتابة هذا ال script :

نقوم بكتابته فى txt file سم نعمله paste داخل ال terminal وها هى النتيجة :

لمعرفة المزيد عن ال TCL و كيفية استخدامها مع ال EEM & IP SLA و مواضيع advanced عنها انصحكم بهذا الكتاب :
TCL scripting for cisco ios
وهذا الsite ايضا :
http://tcl.tk
أرجو ان يكون الموضوع كان بسيط ومفهوم...