الـ uRPF: الحماية من العناوين المزوّرة
مهاجم من الإنترنت يرسل packets بعنوان مصدر مزوّر، أحياناً بعنوان من داخل شبكتك. الـ unicast reverse path forwarding يسأل: لو أرسلت رد لهذا المصدر، يطلع من نفس الواجهة؟ نطبّق الـ strict mode والـ loose mode، ونفهم allow-default، ونقرا الـ verification drops.
ضمن مسار ENARSI 300-410 — التوجيه المتقدم وخدمات الشبكات
شرح الدرس مكتوبًا
نص شرح المعلم والكود الذي كتبه ونتيجة تشغيله، بنفس ترتيب الدرس.
enable
configure terminal
hostname R1
no ip domain-lookup
interface g0/0/0
ip address 203.0.113.1 255.255.255.252
no shutdown
interface g0/0/1
ip address 192.168.1.1 255.255.255.0
no shutdown
ip route 0.0.0.0 0.0.0.0 203.0.113.2
endenable
configure terminal
hostname R2
no ip domain-lookup
interface g0/0/0
ip address 203.0.113.2 255.255.255.252
no shutdown
interface lo1
ip address 192.168.1.50 255.255.255.255
interface lo2
ip address 10.99.99.1 255.255.255.255
ip route 192.168.1.0 255.255.255.0 203.0.113.1
endحيّاك الله. كثير من الهجمات تعتمد على عنوان مصدر مزوّر: DoS بعناوين عشوائية عشان ما تقدر تحظرها، أو packet بعنوان من داخل شبكتك عشان تعدّي من ACL تثق في الشبكة الداخلية. والـ uRPF فكرته ذكية: لما تدخل packet من واجهة، الراوتر يشوف عنوان المصدر، ويسأل جدول التوجيه: لو بغيت أوصل للعنوان هذا، أطلع من وين؟
الـ strict mode، reachable-via rx: لازم الطريق للمصدر يطلع من نفس الواجهة اللي وصلت منها الـ packet. وهذا الأقوى، لكنه ما يصلح مع الـ routing غير المتماثل، زي شركة متصلة بمزوّدين. والـ loose mode، reachable-via any: يكفي إن المصدر له طريق في الجدول من أي واجهة. يرفض بس العناوين اللي ما لها وجود. والـ default route ما تنحسب، إلا لو كتبت allow-default. المعمل: R1 راوتر الشركة، و R2 جهة الإنترنت. و R2 فيه عنوانين نستخدمهم كمصدر مزوّر: one ninety two dot one sixty eight dot one dot fifty، يعني عنوان من داخل شبكتنا، و ten dot ninety nine dot ninety nine dot one، عنوان R1 ما له أي طريق محدد. نطبّق الـ strict على واجهة R1 الخارجية، وبعدها R2 يرسل للـ PC من المصدرين.
configure terminal
interface g0/0/0
ip verify unicast source reachable-via rx
end
show ip interface g0/0/0 | include verifping 192.168.1.10 source lo1
ping 192.168.1.10 source lo2تسع verification drops: كل packets المصدرين انرمت، ما عدا أول وحدة، ضاعت قبل في الـ ARP حق R2. يعني المزوّر بعنوان داخلي، والمزوّر بعنوان ما له طريق، الاثنين انرموا. الأولى: R1 يعرف إن one ninety two dot one sixty eight dot one dot zero ورا g zero slash zero slash one، فـ packet من هذا المصدر داخلة من g zero slash zero slash zero أكيد مزوّرة. والثانية: الطريق الوحيد لـ ten dot ninety nine dot ninety nine dot one هو الـ default، والـ default ما ينحسب. والسؤال: متى نستخدم الـ loose؟ لما الشركة متصلة بأكثر من مزوّد، والترافيك ممكن يدخل من مزوّد ويطلع من الثاني. الـ strict بيرمي ترافيك حقيقي. والـ loose يرمي بس اللي ما له أي طريق. الحين دورك. غيّر R1 للـ loose mode، وأعد الإرسال من المصدرين، وتوقّع: أي واحد ينرمى؟ وقّف الفيديو، وجرّب.
تمرين: على R1، interface g0/0/0: ip verify unicast source reachable-via any. بعدها من R2: ping 192.168.1.10 source lo1، و ping 192.168.1.10 source lo2، و show ip interface g0/0/0 | include verif على R1.
الحل.
configure terminal
interface g0/0/0
ip verify unicast source reachable-via any
end
show ip interface g0/0/0 | include verifping 192.168.1.10 source lo1
ping 192.168.1.10 source lo2العداد زاد خمسة بس، يعني عدّى المزوّر بعنوان داخلي، وانرمى ten dot ninety nine dot ninety nine dot one. لأن one ninety two dot one sixty eight dot one dot fifty له طريق في الجدول، والـ loose ما يهتم بالواجهة. يعني الـ loose أضعف: يحمي من العناوين اللي ما لها وجود، لكن ما يحمي من تزوير عناوينك الداخلية. فاختار الـ strict على أي واجهة الترافيك فيها متماثل، زي واجهات المستخدمين. الخلاصة: الـ strict نفس الواجهة، والـ loose أي طريق، والـ default ما ينحسب بدون allow-default. والدرس الجاي: حماية الـ control plane نفسه، بالـ CoPP.
دروس المسار (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 و وش بعده