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
أرجو ان يكون الموضوع كان بسيط ومفهوم...

Tuesday, November 27, 2012

changing the default EIGRP ADs

عندما نتحدث عن ال EIGRP AD  فبالتاكيد سوف نتحدث عن 3 ADs وليس AD واحد وذلك لاننا كما نعلم ان هنالك :
Internal AD =90
External AD =170
Summarized AD = 5 
تدوينة اليوم سوف نتناول بها كيفية استعراض و تغيير هذه القيم الافتراضية لل AD الخاص بال EIGRP و لكن بصراحة كتبت هذه التدوينة بالاخص من اجل عرض معلومات عن كيفية عرض و تغيير ال Summarized AD لل EIGRP ولكن سوف اجعل التدوينة اعم واشمل لتحتوى على هؤلاء الثلاثة..


جميع ال routers مفعل عليها ال EIGRP بال default configuration له ماعدا ال R1 .فكما نرى الاعدادات الخاصة بال routing  و ال redistribution على ال R1 :



والان دعونا نلقى نظرة لل routing table الخاص ب R2 :

فكما نرى ال 3 values المختلفة لل EIGRP AD  فال 90 تظهر امام ال routes التى تم تبادلها بين ال 3 routers باستخدام ال EIGRP , و ال 170 تظهر امام ال external route الذى تم ادخاله لل EIGRP باستخدام ال redistribution .

وللتحقق من قيمة ال AD الخاصة بال summarized address الذى قمنا باعداده على ال R1 نستخدم ال command الاتى :


فكما نرى distance =5 و بذلك قد قمنا باستعراض ال 3 values الخاصة بال EIGRP AD والان سوف نقوم بتغيير هذه القيم الافتراضية :

قمنا بتغيير قيمة ال Internal = 50  و ال External =120
وللتحقق من تغيير هذه القيم :

ناتى الان لتوضيح كيفية تغيير ال default distance لل summarized address بدلا من 5 نجعلها 8 :
للتحقق من ال AD بعد تغييره :

أرجو ان يكون الموضوع بسيط ومفهوم ....

Sunday, September 16, 2012

Understanding OSPF Name-Lookup

تدوينة اليوم ساتناول فيها بالشرح command خاص ب cisco ios  الا وهو :


R(config)#ip ospf name-lookup 

يقوم هذا ال command بعمل ترجمة لل  OSPF Router`s ID الى name نعطيه له وهى نفس فكرة ال DNS . ولفهم وتوضيح هذا الموضوع دعونا ننظر لل topology الاتية :
فكما نرى اعدادت ال OSPF على ال 3 routers :

######R1
!
router ospf 1
 router-id 1.1.1.1
 log-adjacency-changes
 network 10.0.0.0 0.0.0.255 area 1
 network 20.0.0.0 0.0.0.255 area 1
!
#####R2
!
router ospf 1
 router-id 2.2.2.2
 log-adjacency-changes
 network 10.0.0.0 0.0.0.255 area 1
!

######R3
!
router ospf 1
 router-id 3.3.3.3

 log-adjacency-changes
 network 20.0.0.0 0.0.0.255 area 1
!
وللتاكد من ال adjacency بين ال 3 rouetrs :

فكما نرى ان R1 لديه full adjacency مع كلا من R2 & R3 ولكن كما نرى قمت بوضع مستطيل احمر على العمود الخاص بال neighbor router id ولكن لماذا ؟؟؟  لانه ببساطة هذا هو محور حديثنا اليوم فنحن نريد ان يقوم ال ospf بترجمة كل ال router ids ووضعها فى ال database لديه باسم ال routers وذلك للتسهيل فى عملية ال monitoring وال troubleshooting اى اننا نريد ان نرى R2 بدلا من 10.0.0.2 وان نرى R3 بدلا من 20.0.0.2 
ولتطبيق هذا لابد من تطبيق خطوتين :
الاولى : وهى عمل translation لل routers id الى host names على كل ال routers كما نرى و يمكننا تسميه باى اسم نريده فمثلا يمكننا كتابة HQ-Router بدلا من R1 :
ونقوم بنفس العملية عند كلا من R2 & R3 كما نرى :
الثانية : هى اخبار كل router بان ال OSPF عليه استخدام عملية ال translation التى قمنا بعملها فى الخطوة السابقو وذلك باستخدام ال command التالى على كل ال routers :
R1(config)#ip ospf name-lookup 
R2(config)#ip ospf name-lookup 
R3(config)#ip ospf name-lookup 

والان نقوم باعادة عرض ال ospf neighbors سنلاحظ تغيير ال IPs الى ال host names التى قمنا باعدادها :




وهذا كما ذكرت سيسهل عملية ال troubleshooting لل OSPF وخاصة فى حالة وجود routers باعداد كبيرة 

ارجو ان تكون تدوينة اليوم كانت بسيطة وواضحة ...

Saturday, September 1, 2012

JUNOS Logical-System



تدوينة اليوم متعلقة بعالم Juniper والتى سوف اتناول فيها ما هو معروف بال JUNOS Logical-System

" يمكنك تقسم ال physical router الى عدة logical routers  كل منهم يقوم بعملية ال routing الخاصة به بصورة منفصلة عن ال routers الاخرى و ذلك عن طريق تقسيم وظائف ومهام ال physical router  على هذه ال logical routers  على ان يتخصص كل منهم بوظيفة و بذلك قد قمنا بعمل maximize  للوظائف و ال resources  لل router الواحد "


هذه كانت ببساطة ملخص موضوعنا اليوم الذى سوف نتناوله بالشرح والتوضيح .
كانت تسمى هذه الخاصية بال logical router   ولكن تمت اعادة تسميتها بال logical system  ابتداءا من الاصدار JUNOS 9.3  وما بعدها ولكن مع اختلاف المسمى فال concept  يظل واحد .

ولكن ما هى الوظائف و ال protocols  و الخصائص التى تستطيع هذه ال logical routers  التعامل معها ودعمها ؟ :
1-  العديد من ال routing protocols  مثل ال OSPF , IS-IS , RIP , RIPng , BGP
2-  العديد من ال multicast protocols  و ال MPLS
3-  كلا من ال IPv4 , IPv6
4-   خاصية ال BFD   التى تناولتها بالشرح من قبل فى تدوينتين (الجزء الاول و الجزء الثانى ) .

ولكن هناك بعض النقاط التى يجب ان تؤخذ فى الاعتبار من اهمها :
   1-  لا نستطيع عمل configure لاكثر من 15 logical system
2- هناك بعض من ال physical interface cards لا تستطيع ال logical systems التعرف عليها او قراءتها مثل Adaptive Services PIC, ES PIC, Monitoring Services PIC, and Monitoring Services II PIC
       3- ال logical systems لا تدعم هذه الخواص ( GMPLS , IPsec , Port-monitoring 
ناتى الان الى مرحلة ال configurations :

لنقم بانشاء 3 logical routers :
للتاكد من صحة الاعدادات و لعرض ال logical routers التى تم انشاءها :
وللبداية فى عمل configure  لل R1 مثلا :
دعنا نقم بانشاء loopback interface 0 و اعطاؤه ip :
لمعرفة الاعدادات التى تمت على اى من ال logical routers :

أرجو ان يكون الموضوع كان بسيط ومفيد ....

Thursday, August 16, 2012

Cisco NX-OS VS IOS ( Part 1 )

تدوينة اليوم عبارة عن مقارنة بسيطة بين كلا من Cisco NX-OS & IOS , اثناء بحثى على الانترنت عن الاختلافات الرئيسية بين كلا منهما توصلت للاتى :

  • أول اختلاف ستلاحظه عند الدخول على ال NX-OS انك سوف تدخل مباشرة الى ال EXEC Mode وذلك لان ال NX-OS عبارة عن only 2 modes على عكس ال IOS فكما نعلم انه عبارة عن 3 modes .

  • الاختلاف الاخر والواضح والذى يعتبر محورى وملحوظ هو فى ال commands المستخدمة بكل منهما هو ان فى ال IOS كنا نستخدم ال configration command مباشرة لتفعيل الخاصية و لعمل configur لها بينما فى ال NX_OS تكون العملية مقسمة لجزئين :

الجزء الاول : هو استخدام command لتفعيل ال feature .أى ان معظم ال features تكون فى صورة disabled ويتوجب عمل enable لها لاستخدامها 
الجزء الثانى : هو استخدام command لعمل configure لضبط هذه ال feature 
لتوضيح هذه الجزئية ننظر للجدول الاتى فقد وضعت بعض وليس كل من ال features التى تنطبق عليها هذا الاختلاف   :
  • اختلاف اخر فى طريقة كتابة ال commands الخاصة بعملية الدخول على ال switch مثل كل من ال console , telnet , ssh , vty وغيرها كما نرى :
  أرجو ان تكون هذه التدوينة البسيطة نالت اعجابكم ..

Friday, August 3, 2012

ICMP Redirect

تدوينة اليوم سوف اتحدث فيها عن خاصية ال ICMP Redirect وهى احدى خواص ال security التى تقدمها Cisco على اجهزتها .
ولكن ما هى هذه الخاصية ؟
ببساطة هذه خاصية يخبر بها ال Router ال Host بانه هو ليس ال next hop  لل network التى قمت بطلب عمل  routing لكى تستطيع الوصول لها ... و هذا يحدث اذا كان ال router و ال host و ال route الاخر الذى يجب ان يسلكه ال Host للوصول لل destination موصلين على نفس ال segment .
كما نرى بالصورة فان ال Host يريد ان يرسل packet للhost 192.168.10.10 , و ال gateway له هو ال R1 فبالتالى سوف تنتقل ال packet من ال pc لل R1 ولكن ال R1 سوف يرى انه لابد ان يعمل redirect لل packet ل R2 وبدوره يقوم ال R2 بارسالها لل destination host .... ولكن لما كل هذا الوقت فى حين انه بامكان ال PC ان يرسل ال packet الى R2 مباشرة ؟!!
هنا تاتى فائدة خاصية ال ICMP Redirection فبالحفاظ على ان ال R1 هو ال gw لل PC فعند استلام ال packet من ال PC وبمجرد انه يرى انه سوف يحتاج الى عمل redirection لل packet ولكن لاول Packet فقط من نفس ال interface الذى استلم منه ال packet ولكن عند حدوث نفس ال scenario مرة اخرى  فسيرسل لل pc ما يسمى بال ICMP Redirection Packet يخبره فيها بانه يتوجب عليك ان تغير ال destination address 
ICMP Redirection Message
فكما نرى ان ال Type=5 وهذا يشير لان ال ICMP هو عبارة عن ICMP Redirection Message.
ملحوظة اخيرة اختم بها الموضوع هو ان هذه الخاصية تكون مفعلة By default ولكن فى حالة تفعيل HSRP على ال interface فانها تكون فى حالة disable .


لعمل disable لل ICMP Redirection :
R1(config)#interface fastEthernet 0/0
R1(config-if)#no ip redirects 
 أرجو ان يكون الموضوع كان بسيط ومفهوم...

Thursday, August 2, 2012

Cisco Jabber

تدوينة اليوم قصيرة و ساتحدث فيها عن Cisco jabber .. بدات الفكرة عندما بدأت Cisco  بالاخذ فى الاعتبار ان ال end devices الخاصة بعالم ال network  لم تعد تقتصر على ال computers , laptops , ip-phones  بل انها بدات بالامتداد و شمول كل من ال smartphones , tablets, Virtualization clients , وغيرها من ال devices خاصة مع التطور الهائل فى تكنولوجيا المعلومات و ال cloud computing technology و ال Telepresence technology.
ولكن ما هو ال cisco jabber ؟؟؟ 
Cisco jabber عبارة عن brand وليس عبارة عن product  وهذه ال brand  توصف وتقدم عدة امكانيات منها :

- Instant Messaging (IMs)s
-soft phones
-Presents
-call history
-Group chat  integration
-voice mail 
-click to call 
- video calls
- Desktop sharing



كل هذه ال capabilities تعمل على multiple devices فيما بينها مع اختلاف نوعها ونظام تشغيلها :

- Cisco cius tablets ( Android )               -Virtualization Clients
-IOS devices ( Ipads , Iphones,.. )          - BlackBerry phones
-Windows PCs                                        -Web Browsers  (SDK)         
-Apple PCs 
ويمكن تقديم كل هذه ال capabilities باستخدام هذه ال devices بصورة من 2 :
1- بناء بييئة داخلية خاصة بالشبكة الداخلية لاى مؤسسة او شركة حتى يتمكن الموظفين استخدامها للتواصل مع بعضهم داخل الشركة فقط .
2- استخدام ال cloud computing للاستخدام الواسع أيا كانت المسافة.

للتعرف اكثر على خصائص ال Cisco Jabber انصحكم بالبحث فى Youtube فهنالك العديد من ال videos التى توضحها بالتفصيل 

أرجو ان يكون الموضوع نال اعجابكم ...