BGP: التحكم في الترافيك الداخل بالـ AS Path Prepend والـ MED

جارٍ التحميل…

BGP: التحكم في الترافيك الداخل بالـ AS Path Prepend والـ MED

الترافيك الداخل لشبكتنا يقرره غيرنا. لكن نقدر نأثر عليه: نطوّل الـ AS path في الإعلان لمزوّد، بالـ prepend، فالعالم يفضّل المزوّد الثاني. والـ MED اقتراح لـ AS جار متصل فيه بأكثر من link. نطبّق الـ prepend ونشوف قرار R4 يتغير.

ضمن مسار ENARSI 300-410 — التوجيه المتقدم وخدمات الشبكات

شرح الدرس مكتوبًا

نص شرح المعلم والكود الذي كتبه ونتيجة تشغيله، بنفس ترتيب الدرس.

R1
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.14.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 1.1.1.1 0.0.0.0 area 0
end
enable
configure terminal
router bgp 65001
bgp router-id 1.1.1.1
neighbor 10.0.14.4 remote-as 65003
neighbor 2.2.2.2 remote-as 65001
neighbor 2.2.2.2 update-source lo0
neighbor 2.2.2.2 next-hop-self
network 172.16.1.0 mask 255.255.255.0
end
R2
enable
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 2.2.2.2 0.0.0.0 area 0
end
enable
configure terminal
router bgp 65001
bgp router-id 2.2.2.2
neighbor 10.0.23.3 remote-as 65002
neighbor 1.1.1.1 remote-as 65001
neighbor 1.1.1.1 update-source lo0
neighbor 1.1.1.1 next-hop-self
network 172.16.2.0 mask 255.255.255.0
end
R3
enable
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 g0/0/1
ip address 10.0.34.3 255.255.255.0
no shutdown
interface lo0
ip address 3.3.3.3 255.255.255.255
interface lo1
ip address 203.0.113.1 255.255.255.0
end
enable
configure terminal
router bgp 65002
bgp router-id 3.3.3.3
neighbor 10.0.23.2 remote-as 65001
neighbor 10.0.34.4 remote-as 65003
network 203.0.113.0 mask 255.255.255.0
end
R4
enable
configure terminal
hostname R4
no ip domain-lookup
interface g0/0/0
ip address 10.0.34.4 255.255.255.0
no shutdown
interface g0/0/1
ip address 10.0.14.4 255.255.255.0
no shutdown
interface lo0
ip address 4.4.4.4 255.255.255.255
interface lo1
ip address 198.51.100.1 255.255.255.0
end
enable
configure terminal
router bgp 65003
bgp router-id 4.4.4.4
neighbor 10.0.14.1 remote-as 65001
neighbor 10.0.34.3 remote-as 65002
network 198.51.100.0 mask 255.255.255.0
end

حيّاك الله. الدرس اللي فات تحكمنا في الطالع، لأن القرار عندنا. الحين الداخل: الناس في الإنترنت يوصلون لشبكتنا one seventy two dot sixteen dot one dot zero من وين؟ القرار في راوتراتهم هم، بنفس خوارزمية الـ best path. فما نقدر نأمرهم، لكن نقدر نغيّر الـ attributes اللي نعلنها لهم، عشان قرارهم يطلع زي ما نبغى. نشوف الحين: R4، يعني ISP-B، كيف يوصل لشبكة R1.

R4
show ip bgp 172.16.1.0

R4 عنده طريقين: مباشر من R1 بـ AS path six five zero zero one، وعن طريق R3 بـ AS path six five zero zero two ثم six five zero zero one. واختار المباشر لأنه أقصر. لكن الشركة تبغى الداخل كمان من ISP-A. والأداة: AS path prepend. يعني نكرر رقم الـ AS حقنا في الإعلان لـ ISP-B، فيصير الطريق المباشر أطول في نظرهم. نطبّق على R1، باتجاه out للجار R4، ونسوي soft reset out.

R1
configure terminal
route-map TO-ISP-B permit 10
set as-path prepend 65001 65001
router bgp 65001
neighbor 10.0.14.4 route-map TO-ISP-B out
end
clear ip bgp 10.0.14.4 soft out
R4
show ip bgp 172.16.1.0

الطريق المباشر صار AS path ثلاث مرات six five zero zero one، والطريق عن طريق R3 بقى اثنين، فـ R4 صار يرسل الترافيك لـ ISP-A. يعني الترافيك الداخل لـ one seventy two dot sixteen dot one dot zero من جهة ISP-B يمر على ISP-A، ويدخل من R2. والطريق المباشر ما اختفى، بقى احتياطي. لو R2 طاح، R4 يرجع يستخدمه.

والأداة الثانية: الـ MED، أو multi exit discriminator. رقم ترسله لـ AS جار، تقول له: إذا عندك أكثر من link لي، استخدم اللي الـ MED حقه أقل. وثلاث نقاط مهمة: الـ MED يتقارن بس بين مسارات من نفس الـ AS الجار، إلا لو فعّلت bgp always-compare-med. ما يطلع من الـ AS اللي استلمته. وهو الخطوة السادسة، بعد الـ AS path. يعني أضعف من الـ prepend. وفي معملنا كل مزوّد متصل بـ link واحد، فالـ MED ما له تأثير هنا. الحين دورك. الشركة تبغى الترافيك الداخل لـ one seventy two dot sixteen dot two dot zero، شبكة R2، يجي من ISP-B. يعني R3 يوصل لها عن طريق R4. وانتبه للفخ: الـ prepend اللي سويناه على R1 يأثر على كل اللي يعلنه R1 لـ ISP-B، ومنها one seventy two dot sixteen dot two dot zero نفسها. فالحل الصحيح: كل prepend يكون على شبكته بس، بـ prefix list. عدّل R1 عشان يطوّل one seventy two dot sixteen dot one dot zero بس، وسوّ على R2 prepend لـ one seventy two dot sixteen dot two dot zero بس باتجاه ISP-A. وقّف الفيديو، وجرّب.

تمرين: R1: prefix list LAN1 لـ 172.16.1.0/24، و match لها في route-map TO-ISP-B sequence عشرة، و sequence عشرين permit بدون set. R2: نفس الفكرة بـ LAN2 لـ 172.16.2.0/24 في route-map TO-ISP-A out لـ 10.0.23.3. و clear ip bgp soft out على الاثنين.

الحل.

R1
configure terminal
ip prefix-list LAN1 seq 5 permit 172.16.1.0/24
route-map TO-ISP-B permit 10
match ip address prefix-list LAN1
route-map TO-ISP-B permit 20
end
clear ip bgp 10.0.14.4 soft out
R2
configure terminal
ip prefix-list LAN2 seq 5 permit 172.16.2.0/24
route-map TO-ISP-A permit 10
match ip address prefix-list LAN2
set as-path prepend 65001 65001
route-map TO-ISP-A permit 20
router bgp 65001
neighbor 10.0.23.3 route-map TO-ISP-A out
end
clear ip bgp 10.0.23.3 soft out
R3
show ip bgp 172.16.2.0

R3 الحين يوصل لـ one seventy two dot sixteen dot two dot zero عن طريق R4، لأن طريقه المباشر صار ثلاث مرات six five zero zero one، والطريق عن طريق R4 بقى six five zero zero three ثم six five zero zero one. و R4 للحين يوصل لـ one seventy two dot sixteen dot one dot zero عن طريق R3. يعني كل شبكة تدخل من المزوّد اللي اخترناه لها. ولاحظ sequence عشرين بدون match: بدونها، الـ implicit deny كان بيرفض كل الشبكات الثانية، و R1 يوقف إعلان أي شي غير one seventy two dot sixteen dot one dot zero. الخلاصة: الطالع بالـ weight والـ local preference، والداخل بالـ prepend والـ MED، ودايماً حدد الشبكات بـ prefix list. والدرس الجاي: الفلترة في BGP.

دروس المسار (74)
  1. حيّاكم الله: من ENCOR إلى ENARSI
  2. كيف يختار الراوتر المسار: Longest Match و Administrative Distance
  3. الـ Prefix List: فلترة بالشبكة وبطول الـ prefix
  4. الـ Route Map: لغة السياسات في التوجيه
  5. الـ Distribute List: الفلترة في EIGRP وفي OSPF
  6. الـ Redistribution: ربط EIGRP مع OSPF
  7. مشاكل الـ Redistribution في أكثر من نقطة: Tags تمنع الـ Loop
  8. الـ Summarization: مسار واحد بدل أربعة، و Null0
  9. منع الـ Loops: Split Horizon و Route Poisoning
  10. الـ Policy Based Routing: توجيه حسب المصدر
  11. الـ VRF-Lite: أكثر من Routing Table في راوتر واحد
  12. الـ BFD: اكتشاف العطل في جزء من الثانية
  13. تشخيص أعطال التوجيه: طريقة منظمة على شبكة خربانة
  14. EIGRP: شروط الجيرة وتشخيص الجار اللي ما يطلع
  15. EIGRP: الـ Metric بالأرقام، وكيف تتحكم في المسار
  16. EIGRP: الـ DUAL و الـ Feasible Successor
  17. EIGRP Named Mode: كل الإعدادات في مكان واحد
  18. EIGRP: الـ Variance و Unequal-Cost Load Balancing
  19. EIGRP Stub: حماية الشبكة من الـ Queries
  20. EIGRP: الـ Leak-Map والـ Offset-List
  21. EIGRP: الـ Authentication بـ MD5 و SHA-256
  22. EIGRP for IPv6: الـ Classic والـ Named
  23. تشخيص EIGRP: ثلاث مشاكل في طريق واحد
  24. OSPF: حالات الجيرة، و Hello، و MTU
  25. OSPF: أنواع الشبكات و الـ DR و الـ BDR
  26. OSPF: أنواع الـ LSAs وقراءة الـ Database
  27. OSPF: ترتيب تفضيل المسارات وقاعدة الـ Backbone
  28. OSPF: الـ Stub و Totally Stubby Areas
  29. OSPF: الـ NSSA و LSA النوع سبعة
  30. OSPF: التلخيص في الـ ABR والـ ASBR
  31. OSPF: الفلترة الصحيحة بين الـ Areas
  32. OSPF: الـ Virtual Link لـ Area مفصولة
  33. OSPF: الـ Cost والـ Reference Bandwidth
  34. OSPF: الـ Authentication بـ MD5 و SHA
  35. OSPFv3: الـ OSPF حق IPv6
  36. تشخيص OSPF: جيران ما يطلعون
  37. BGP: الجلسات وحالاتها
  38. BGP: الـ iBGP بين الـ Loopbacks
  39. BGP: الـ Next Hop في الـ iBGP و next-hop-self
  40. BGP: الـ Route Reflector بدل الـ Full Mesh
  41. BGP: خوارزمية اختيار أفضل مسار
  42. BGP: التحكم في الترافيك الطالع بالـ Weight والـ Local Preference
  43. BGP: التحكم في الترافيك الداخل بالـ AS Path Prepend والـ MED
  44. BGP: الفلترة بالـ Prefix List وخطر الـ Transit
  45. BGP: الـ Regular Expressions و AS Path Filter
  46. BGP: الـ Communities و no-export
  47. BGP: حماية الجلسات بالـ Password و TTL Security
  48. MP-BGP: BGP لـ IPv6 بالـ Address Families
  49. تشخيص BGP: جلسات واقعة ومسار مو valid
  50. MPLS و LDP: Core بدون BGP
  51. MPLS Layer 3 VPN: الـ VRF و RD و RT و VPNv4
  52. تشخيص MPLS VPN: من الـ Core لفوق
  53. DMVPN: الـ mGRE و NHRP
  54. DMVPN: التوجيه فوق النفق و Phase 2
  55. DMVPN: الـ Phase 3 والحماية بـ IPsec
  56. AAA: TACACS+ و RADIUS وتشخيص الدخول
  57. الـ ACLs: الترتيب، والـ Sequence Numbers، والمكان الصح
  58. الـ Time-Based ACL: صلاحيات حسب الوقت
  59. الـ ACLs في IPv6 وفخ الـ Neighbor Discovery
  60. الـ uRPF: الحماية من العناوين المزوّرة
  61. الـ CoPP: حماية الـ Control Plane
  62. حماية الـ Management Plane: SSH و Access-Class
  63. IPv6 First-Hop Security: RA Guard و DHCPv6 Guard و Source Guard
  64. الدخول على الأجهزة والـ Backup بـ TFTP
  65. SNMP: من v2c المكشوف إلى SNMPv3
  66. الـ Syslog: مستويات الخطورة ووين تروح الرسائل
  67. الـ Debug بشرط: بدون ما تغرق الراوتر
  68. DHCP و الـ Relay: تشخيص أجهزة ما تاخذ عنوان
  69. DHCPv6: Stateful و Stateless والـ Relay
  70. الـ IP SLA و Object Tracking: Failover ذكي بين مزوّدين
  71. الـ Flexible NetFlow: مين يتكلم مع مين
  72. Catalyst Center Assurance: التشخيص من لوحة وحدة
  73. مشروع التشخيص الكامل: الشركة طاحت من الإنترنت
  74. الخاتمة: الاستعداد لاختبار ENARSI و وش بعده