مشاكل الـ Redistribution في أكثر من نقطة: Tags تمنع الـ Loop
لما يكون فيه راوترين يسوّون mutual redistribution، المسار ممكن يطلع من بروتوكول ويرجع له من الجهة الثانية، فيصير suboptimal routing أو routing loop. نشوف المشكلة بالـ traceroute، ونفهم دور الـ AD فيها، ونحلها بالـ route tags: علامة عند كل redistribution، ورفض المسار اللي راجع.
ضمن مسار 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 g0/0/1
ip address 10.0.13.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
interface lo2
ip address 192.168.10.1 255.255.255.0
end
enable
configure terminal
ip prefix-list LAB seq 10 permit 192.168.10.0/24
route-map LAB permit 10
match ip address prefix-list LAB
router eigrp 100
eigrp router-id 1.1.1.1
network 10.0.12.0 0.0.0.255
network 10.0.13.0 0.0.0.255
network 172.16.1.0 0.0.0.255
network 1.1.1.1 0.0.0.0
redistribute connected route-map LAB
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.24.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 eigrp 100
network 10.0.12.0 0.0.0.255
redistribute ospf 1 metric 100000 10 255 1 1500
router ospf 1
router-id 2.2.2.2
network 10.0.24.0 0.0.0.255 area 0
redistribute eigrp 100 subnets
endenable
configure terminal
hostname R3
no ip domain-lookup
interface g0/0/0
ip address 10.0.34.3 255.255.255.0
no shutdown
interface g0/0/1
ip address 10.0.13.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 eigrp 100
network 10.0.13.0 0.0.0.255
redistribute ospf 1 metric 100000 10 255 1 1500
router ospf 1
router-id 3.3.3.3
network 10.0.34.0 0.0.0.255 area 0
endenable
configure terminal
hostname R4
no ip domain-lookup
interface g0/0/0
ip address 10.0.24.4 255.255.255.0
no shutdown
interface g0/0/1
ip address 10.0.34.4 255.255.255.0
no shutdown
interface lo0
ip address 4.4.4.4 255.255.255.255
interface lo1
ip address 172.16.4.1 255.255.255.0
ip ospf network point-to-point
end
enable
configure terminal
router ospf 1
router-id 4.4.4.4
network 10.0.24.0 0.0.0.255 area 0
network 10.0.34.0 0.0.0.255 area 0
network 172.16.4.0 0.0.0.255 area 0
network 4.4.4.4 0.0.0.0 area 0
endحيّاك الله. الدرس اللي فات كان فيه نقطة redistribution وحدة. لكن في الشبكات الحقيقية تبغى redundancy، فتحط راوترين في الحدود. وهنا تبدأ المشاكل: المسار يطلع من EIGRP لـ OSPF عند راوتر، ويرجع من OSPF لـ EIGRP عند الراوتر الثاني. وهذا اسمه route feedback.
المعمل: مربع من أربع راوترات. R1 فوق على اليسار في EIGRP بس، و R4 تحت على اليمين في OSPF بس. و R2 و R3 في الحدود: R2 يسوّي redistribution في الاتجاهين، و R3 للحين من OSPF لـ EIGRP بس. و R1 عنده شبكة one ninety two dot one sixty eight dot ten dot zero داخلة EIGRP بـ redistribute connected، يعني هي EIGRP external عند الكل. R3 متصل بـ R1 مباشرة. فالمنطق يقول: R3 يوصل لـ one ninety two dot one sixty eight dot ten dot zero عن طريق R1 على طول. نشوف الحقيقة.
show ip route 192.168.10.0R3 يوصل لها عن طريق OSPF، والـ next hop هو R4! نتأكد بالـ traceroute.
traceroute 192.168.10.1الترافيك يروح من R3 لـ R4، بعدها R2، بعدها R1. ثلاث hops بدل hop وحدة. ليش؟ R2 أخذ المسار من EIGRP وعلنه في OSPF كـ E2. ووصل R3 من طريقين: من R1 مباشرة كـ EIGRP external، بـ distance one seventy، ومن R4 كـ OSPF external، بـ distance one ten. و one ten أقل، فـ OSPF يغلب. يعني الـ AD اللي تعلمناها في الدرس الثاني هي سبب المشكلة. والوضع أسوأ من كذا: R3 الحين يعتبر المسار OSPF، فيرجع يعلنه في EIGRP. ولو فعّلنا على R3 الاتجاه الثاني بدون حماية، R2 و R3 كل واحد يتعلّم المسار من الثاني، والمسار يتذبذب بين البروتوكولين كل لحظة. وهذا route flapping، ويمكن يتحول لـ routing loop حقيقي لو R1 فقد الشبكة. والحل الأشهر في ENARSI: route tags.
الفكرة بسيطة. كل مسار يطلع من EIGRP لـ OSPF، نحط عليه tag تسعين. وكل مسار يطلع من OSPF لـ EIGRP، نحط عليه tag one ten. وعند كل redistribution، نرفض المسار اللي عليه tag البروتوكول اللي رايحين له، لأنه أصلاً جاي منه. وزيادة على هذا، R3 ما يحط في جدوله مسار OSPF عليه tag تسعين، لأن عنده الأصل من EIGRP. نطبّق على R3. route map اسمها E2O، للمسارات من EIGRP لـ OSPF: sequence عشرة deny لأي مسار عليه tag one ten، وعشرين permit تحط tag تسعين. و O2E بالعكس. و NO-BACK للـ distribute-list في OSPF: ترفض tag تسعين، وتقبل الباقي.
configure terminal
route-map E2O deny 10
match tag 110
route-map E2O permit 20
set tag 90
route-map O2E deny 10
match tag 90
route-map O2E permit 20
set tag 110
route-map NO-BACK deny 10
match tag 90
route-map NO-BACK permit 20
end
configure terminal
router ospf 1
redistribute eigrp 100 subnets route-map E2O
distribute-list route-map NO-BACK in
router eigrp 100
redistribute ospf 1 metric 100000 10 255 1 1500 route-map O2E
endلاحظ إن R3 الحين صار يسوّي الاتجاهين، بس بحماية. ونفس الشي على R2، عشان المسار يطلع من R2 بـ tag تسعين من الأساس.
configure terminal
route-map E2O deny 10
match tag 110
route-map E2O permit 20
set tag 90
route-map O2E deny 10
match tag 90
route-map O2E permit 20
set tag 110
route-map NO-BACK deny 10
match tag 90
route-map NO-BACK permit 20
end
configure terminal
router ospf 1
redistribute eigrp 100 subnets route-map E2O
distribute-list route-map NO-BACK in
router eigrp 100
redistribute ospf 1 metric 100000 10 255 1 1500 route-map O2E
endshow ip route 192.168.10.0الحين R3 يوصل للشبكة عن طريق EIGRP، والـ next hop هو R1 مباشرة. المسار من OSPF وصل R3 بـ tag تسعين، فالـ distribute-list رفضته من الجدول، وبقى المسار الأصلي. ونتأكد بالـ traceroute.
traceroute 192.168.10.1hop وحدة، مباشرة لـ R1. وفيه حلول ثانية للمشكلة نفسها: تغيّر الـ AD للمسارات الخارجية، أو تفلتر بالـ prefix list بدل الـ tag. لكن الـ tag أنظف، لأنه يمشي مع المسار، وما تحتاج تعرف كل شبكة باسمها. الحين دورك. R4 للحين يشوف شبكات EIGRP كـ E2. خلّ R4 يتأكد إن عليها tag تسعين، يعني إن الحل شغّال من الجهتين. استخدم show ip route لشبكة R1، one seventy two dot sixteen dot one dot zero. وقّف الفيديو، وجرّب.
تمرين: على R4: show ip route 172.16.1.0، وتأكد إن الـ Route tag هو 90.
الحل.
الـ tag تسعين موجود، يعني المسار جا من EIGRP، وأي راوتر حدود يشوفه بيعرف إنه ما يرجّعه. الخلاصة: أكثر من نقطة redistribution يعني خطر suboptimal routing و loops، والسبب الـ AD، والحل الـ tags مع route maps. والدرس الجاي: الـ summarization.
دروس المسار (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 و وش بعده