الـ CoPP: حماية الـ Control Plane
الراوتر نفسه هدف: أي ترافيك موجّه له، زي ping و SSH وبروتوكولات التوجيه، يروح للـ CPU. لو أحد أغرقه، الـ CPU يتعب، والجيران يطيحون. الـ Control Plane Policing يحط حد لكل نوع ترافيك داخل للـ CPU. نبني class-maps و policy-map، ونطبّقها على الـ control-plane، ونقرا العدادات.
ضمن مسار ENARSI 300-410 — التوجيه المتقدم وخدمات الشبكات
شرح الدرس مكتوبًا
نص شرح المعلم والكود الذي كتبه ونتيجة تشغيله، بنفس ترتيب الدرس.
enable
configure terminal
hostname R1
no ip domain-lookup
interface g0/0/0
ip address 10.0.12.1 255.255.255.0
no shutdown
interface lo0
ip address 1.1.1.1 255.255.255.255
interface lo1
ip address 172.16.1.1 255.255.255.0
ip ospf network point-to-point
end
enable
configure terminal
router ospf 1
router-id 1.1.1.1
network 10.0.12.0 0.0.0.255 area 0
network 172.16.1.0 0.0.0.255 area 0
network 1.1.1.1 0.0.0.0 area 0
endenable
configure terminal
hostname R2
no ip domain-lookup
interface g0/0/0
ip address 10.0.12.2 255.255.255.0
no shutdown
interface g0/0/1
ip address 10.0.23.2 255.255.255.0
no shutdown
interface lo0
ip address 2.2.2.2 255.255.255.255
interface lo1
ip address 172.16.2.1 255.255.255.0
ip ospf network point-to-point
end
enable
configure terminal
router ospf 1
router-id 2.2.2.2
network 10.0.12.0 0.0.0.255 area 0
network 10.0.23.0 0.0.0.255 area 0
network 172.16.2.0 0.0.0.255 area 0
network 2.2.2.2 0.0.0.0 area 0
endenable
configure terminal
hostname R3
no ip domain-lookup
interface g0/0/0
ip address 10.0.23.3 255.255.255.0
no shutdown
interface lo0
ip address 3.3.3.3 255.255.255.255
interface lo1
ip address 172.16.3.1 255.255.255.0
ip ospf network point-to-point
end
enable
configure terminal
router ospf 1
router-id 3.3.3.3
network 10.0.23.0 0.0.0.255 area 0
network 172.16.3.0 0.0.0.255 area 0
network 3.3.3.3 0.0.0.0 area 0
endحيّاك الله. الراوتر عنده ثلاث planes. الـ data plane: الترافيك اللي يمر من خلاله، وهذا بالـ hardware وسريع. الـ control plane: بروتوكولات التوجيه، والـ ARP، وأي شي يحتاج الـ CPU. والـ management plane: SSH و SNMP وغيرها. وأي packet موجّهة للراوتر نفسه، تروح للـ CPU. فلو أحد أرسل آلاف الـ packets للراوتر، الـ CPU يتعب، والـ OSPF ما يلحق يرد على الـ hellos، والجيران يطيحون. والشبكة كلها تتأثر.
الـ CoPP يستخدم نفس أدوات الـ QoS. class-map: تحدد نوع الترافيك، عادة بـ ACL. policy-map: لكل class، police بحد معيّن، وأيش تسوي باللي يزيد. و service-policy input تحت control-plane. والقاعدة الذهبية: خلّ بروتوكولات التوجيه في class لحالها بحد كبير، لأنها أهم شي، وحط الحد الصارم على اللي ممكن يُستغل، زي ICMP. المعمل: ثلاث راوترات على OSPF، و R2 في النص. نبني على R2: ACL لـ ICMP، و ACL لـ OSPF، وكل وحدة في class، وبعدها policy-map: الـ OSPF مسموح بحد كبير، والـ ICMP بثمانية آلاف bit في الثانية بس.
configure terminal
ip access-list extended COPP-ICMP
permit icmp any any
ip access-list extended COPP-ROUTING
permit ospf any any
class-map match-all COPP-ICMP
match access-group name COPP-ICMP
class-map match-all COPP-ROUTING
match access-group name COPP-ROUTING
policy-map COPP
class COPP-ROUTING
police 1000000 conform-action transmit exceed-action transmit
class COPP-ICMP
police 8000 conform-action transmit exceed-action drop
endالحين نطبّقها على الـ control-plane. وبعدها R1 يرسل لـ R2 مِيّة ping كبيرة، زي هجوم بسيط.
configure terminal
control-plane
service-policy input COPP
endping 10.0.12.2 repeat 100 size 1500جزء من الـ pings نجح، وجزء انرمى، بعلامة النقطة. نشوف العدادات في R2.
show policy-map control-planeلكل class عداد. في COPP-ICMP: الـ conformed هي اللي عدّت في الحد، والـ exceeded هي اللي زادت وانرمت. والأهم: OSPF ما تأثر. نتأكد إن الجيران للحين FULL.
show ip ospf neighborالجيران FULL. الحين دورك. فيه نوع ترافيك ثالث موجّه للراوتر ما حطينا له حد: كل شي ثاني يقع في class-default. أضف للـ policy-map class class-default بحد أربعة وستين ألف bit، و drop للزايد. وتأكد إن الـ show يعرضه. وقّف الفيديو، وجرّب.
تمرين: على R2: policy-map COPP ← class class-default ← police 64000 conform-action transmit exceed-action drop. بعدها show policy-map control-plane.
الحل.
configure terminal
policy-map COPP
class class-default
police 64000 conform-action transmit exceed-action drop
end
show policy-map control-plane | include Class-map|police|cirالـ policy فيها الحين ثلاث classes: التوجيه، و ICMP، و الباقي. وانتبه للغلطة الخطيرة في الشغل الحقيقي: CoPP بحد صغير على كل شي، وأنت متصل بـ SSH، فيقطعك، ويقطع الـ OSPF والـ BGP. ابدأ دايماً بـ exceed-action transmit، وراقب العدادات أيام، وبعدها حوّلها لـ drop. الخلاصة: CoPP يحمي الـ CPU بـ class-maps و policy-map على الـ control-plane، والتوجيه في class لحاله. والدرس الجاي: حماية الـ management plane.
دروس المسار (74)
- حيّاكم الله: من ENCOR إلى ENARSI
- كيف يختار الراوتر المسار: Longest Match و Administrative Distance
- الـ Prefix List: فلترة بالشبكة وبطول الـ prefix
- الـ Route Map: لغة السياسات في التوجيه
- الـ Distribute List: الفلترة في EIGRP وفي OSPF
- الـ Redistribution: ربط EIGRP مع OSPF
- مشاكل الـ Redistribution في أكثر من نقطة: Tags تمنع الـ Loop
- الـ Summarization: مسار واحد بدل أربعة، و Null0
- منع الـ Loops: Split Horizon و Route Poisoning
- الـ Policy Based Routing: توجيه حسب المصدر
- الـ VRF-Lite: أكثر من Routing Table في راوتر واحد
- الـ BFD: اكتشاف العطل في جزء من الثانية
- تشخيص أعطال التوجيه: طريقة منظمة على شبكة خربانة
- EIGRP: شروط الجيرة وتشخيص الجار اللي ما يطلع
- EIGRP: الـ Metric بالأرقام، وكيف تتحكم في المسار
- EIGRP: الـ DUAL و الـ Feasible Successor
- EIGRP Named Mode: كل الإعدادات في مكان واحد
- EIGRP: الـ Variance و Unequal-Cost Load Balancing
- EIGRP Stub: حماية الشبكة من الـ Queries
- EIGRP: الـ Leak-Map والـ Offset-List
- EIGRP: الـ Authentication بـ MD5 و SHA-256
- EIGRP for IPv6: الـ Classic والـ Named
- تشخيص EIGRP: ثلاث مشاكل في طريق واحد
- OSPF: حالات الجيرة، و Hello، و MTU
- OSPF: أنواع الشبكات و الـ DR و الـ BDR
- OSPF: أنواع الـ LSAs وقراءة الـ Database
- OSPF: ترتيب تفضيل المسارات وقاعدة الـ Backbone
- OSPF: الـ Stub و Totally Stubby Areas
- OSPF: الـ NSSA و LSA النوع سبعة
- OSPF: التلخيص في الـ ABR والـ ASBR
- OSPF: الفلترة الصحيحة بين الـ Areas
- OSPF: الـ Virtual Link لـ Area مفصولة
- OSPF: الـ Cost والـ Reference Bandwidth
- OSPF: الـ Authentication بـ MD5 و SHA
- OSPFv3: الـ OSPF حق IPv6
- تشخيص OSPF: جيران ما يطلعون
- BGP: الجلسات وحالاتها
- BGP: الـ iBGP بين الـ Loopbacks
- BGP: الـ Next Hop في الـ iBGP و next-hop-self
- BGP: الـ Route Reflector بدل الـ Full Mesh
- BGP: خوارزمية اختيار أفضل مسار
- BGP: التحكم في الترافيك الطالع بالـ Weight والـ Local Preference
- BGP: التحكم في الترافيك الداخل بالـ AS Path Prepend والـ MED
- BGP: الفلترة بالـ Prefix List وخطر الـ Transit
- BGP: الـ Regular Expressions و AS Path Filter
- BGP: الـ Communities و no-export
- BGP: حماية الجلسات بالـ Password و TTL Security
- MP-BGP: BGP لـ IPv6 بالـ Address Families
- تشخيص BGP: جلسات واقعة ومسار مو valid
- MPLS و LDP: Core بدون BGP
- MPLS Layer 3 VPN: الـ VRF و RD و RT و VPNv4
- تشخيص MPLS VPN: من الـ Core لفوق
- DMVPN: الـ mGRE و NHRP
- DMVPN: التوجيه فوق النفق و Phase 2
- DMVPN: الـ Phase 3 والحماية بـ IPsec
- AAA: TACACS+ و RADIUS وتشخيص الدخول
- الـ ACLs: الترتيب، والـ Sequence Numbers، والمكان الصح
- الـ Time-Based ACL: صلاحيات حسب الوقت
- الـ ACLs في IPv6 وفخ الـ Neighbor Discovery
- الـ uRPF: الحماية من العناوين المزوّرة
- الـ CoPP: حماية الـ Control Plane
- حماية الـ Management Plane: SSH و Access-Class
- IPv6 First-Hop Security: RA Guard و DHCPv6 Guard و Source Guard
- الدخول على الأجهزة والـ Backup بـ TFTP
- SNMP: من v2c المكشوف إلى SNMPv3
- الـ Syslog: مستويات الخطورة ووين تروح الرسائل
- الـ Debug بشرط: بدون ما تغرق الراوتر
- DHCP و الـ Relay: تشخيص أجهزة ما تاخذ عنوان
- DHCPv6: Stateful و Stateless والـ Relay
- الـ IP SLA و Object Tracking: Failover ذكي بين مزوّدين
- الـ Flexible NetFlow: مين يتكلم مع مين
- Catalyst Center Assurance: التشخيص من لوحة وحدة
- مشروع التشخيص الكامل: الشركة طاحت من الإنترنت
- الخاتمة: الاستعداد لاختبار ENARSI و وش بعده