عرض مشاركة واحدة
قديم 02-04-2011, 04:59 AM   #17
Gbps
:: مراقب قسم الإستفسارات ::
 
تاريخ التسجيل: Nov 2010
المشاركات: 184
شكراً: 0
تم شكره 4 مرة في 2 مشاركة
Gbps will become famous soon enough
افتراضي رد: BGP Route Selection without using BGP Attributes تحديد مسارات الـ BGP بدون استخدام الـ BGP Attri

بااك مرره ثانيه

الحين ابحط لكم الحل، وانا واثق انه مرره سهل، ومن شدة ما هو سهل يمكن محد فكر فيه، الحل كالتالي

عندنا ثلاث شبكات

شبكة X
100.1.1.0/24

شبكة Y
100.2.2.0/24

وشبكة Z
100.0.0.0/14


طبعا شبكة X و Y هي شبكات متصلة بشكل مباشر بـ R1 ، اما شبكة Z فهي static route قمنا بإنشائه بـ R1

فكرة الحل انه نقوم بالاعلان عن شبكة X و Z من R1 إلى R2 عن طريق الـ BGP وباستخدام الـ Route-map
وايضا نقوم بالاعلان عن شبكة Y و Z من R1 إلى R3 عن طريق الـ BGP وباستخدام الـ Route-map

اعدادات الـ BGP في R1 كالتالي:

R1#show running-config | s r bgp
router bgp 1
no synchronization
bgp router-id 1.1.1.1
bgp log-neighbor-changes
network 1.1.1.1 mask 255.255.255.255
network 100.0.0.0 mask 255.252.0.0 << Network Z
network 100.1.1.0 mask 255.255.255.0 << Network X
network 100.2.2.0 mask 255.255.255.0 << Network Y
neighbor 172.50.12.2 remote-as 2
neighbor 172.50.12.2 route-map AS2_OUT out
neighbor 172.50.13.3 remote-as 3
neighbor 172.50.13.3 route-map AS3_OUT out
no auto-summary

طيب شايفين بالاعدادات السابقة two route-maps، واحد للـ AS2 والآخر للـ AS3 وكلهم out

بنشوف كل وحده من الـ Route-map، ونبدأ بـ AS2_OUT

R1#sh route-map AS2_OUT
route-map AS2_OUT, permit, sequence 10
Match clauses:
ip address prefix-lists: AS2-OUT

Set clauses:
Policy routing matches: 0 packets, 0 bytes
===========================
R1#sh run | s route-map AS2_OUT p
route-map AS2_OUT permit 10
match ip address prefix-list AS2-OUT

الـ Output من الـ show command السابقة واحد يوضح لنا وش هي الـ Route-map، والثانية توضح لنا كيف عملنا الاعدادات لهذه الـ Route-map واللي هي سطرين فقط


واضح من الـ Route-map اننا عاملين Match على prefix-list واللي لها الاسم AS2-OUT، خلونا نشوف وش هي هالـ Prefix-list وعلى ايش بتحتوي من الشبكات

R1#show ip prefix-list AS2-OUT
ip prefix-list AS2-OUT: 3 entries
seq 5 permit 100.1.1.0/24 << Network X
seq 10 permit 100.0.0.0/14 << Network Z
seq 15 permit 1.1.1.1/32
===================
R1#show run | i prefix-list AS2-OUT
ip prefix-list AS2-OUT seq 5 permit 100.1.1.0/24 << Network X
ip prefix-list AS2-OUT seq 10 permit 100.0.0.0/14 << Network Z
ip prefix-list AS2-OUT seq 15 permit 1.1.1.1/32

نفس الكلام هنا، الـ Output من الـ show commands السابقة واحد يوضح لنا وش هي الـ prefix-list AS2-OUT والثاني يوضح كيف عملنا هالاعدادات لهالـ Prefix-list

بالنسبة للـ prefix-list AS3-OUT نفس الطريقة كما هو موضح بالتالي:

R1#show ip prefix-list AS3-OUT
ip prefix-list AS3-OUT: 3 entries
seq 5 permit 100.2.2.0/24 << Network Y
seq 10 permit 100.0.0.0/14 << Network Z
seq 15 permit 1.1.1.1/32
===================
R1#show run | i prefix-list AS3-OUT
ip prefix-list AS3-OUT seq 5 permit 100.2.2.0/24 << Network Y
ip prefix-list AS3-OUT seq 10 permit 100.0.0.0/14 << Network Z
ip prefix-list AS3-OUT seq 15 permit 1.1.1.1/32
match ip address prefix-list AS3-OUT

وقبل ما نشوف الـ Routing table الموجود بـ R2 و R3 نبي نشوف اعدادات الـ BGP في كل راوتر منهم


R2#sh run | s r bgp
router bgp 2
no synchronization
bgp router-id 2.2.2.2
bgp log-neighbor-changes
network 2.2.2.2 mask 255.255.255.255
neighbor 172.50.12.1 remote-as 1
neighbor 172.50.23.3 remote-as 3
no auto-summary
===========================
R3#sh run | s r bgp
router bgp 3
no synchronization
bgp router-id 3.3.3.3
bgp log-neighbor-changes
network 3.3.3.3 mask 255.255.255.255
neighbor 172.50.13.1 remote-as 1
neighbor 172.50.23.2 remote-as 2
no auto-summary

وطبعا ما ننسى الـ static route واللي انشأناه في R1 واللي هو كالتالي:

R1#sh run | i ip route
ip route 100.0.0.0 255.252.0.0 Null0

الحين بنشوف الـ Routing table في R2 و R3

R2#sh ip route | b Gat
Gateway of last resort is not set

1.0.0.0/32 is subnetted, 1 subnets
B 1.1.1.1 [20/0] via 172.50.12.1, 00:42:37
2.0.0.0/32 is subnetted, 1 subnets
C 2.2.2.2 is directly connected, Loopback0
100.0.0.0/8 is variably subnetted, 3 subnets, 2 masks
B 100.2.2.0/24 [20/0] via 172.50.23.3, 00:42:37
B 100.1.1.0/24 [20/0] via 172.50.12.1, 00:42:37
B 100.0.0.0/14 [20/0] via 172.50.12.1, 00:42:37
3.0.0.0/32 is subnetted, 1 subnets
B 3.3.3.3 [20/0] via 172.50.23.3, 00:42:37
172.50.0.0/24 is subnetted, 2 subnets
C 172.50.23.0 is directly connected, Serial1/2
C 172.50.12.0 is directly connected, Serial1/1
======================================
R3#sh ip route | b Gat
Gateway of last resort is not set

1.0.0.0/32 is subnetted, 1 subnets
B 1.1.1.1 [20/0] via 172.50.13.1, 00:43:22
2.0.0.0/32 is subnetted, 1 subnets
B 2.2.2.2 [20/0] via 172.50.23.2, 00:43:22
100.0.0.0/8 is variably subnetted, 3 subnets, 2 masks
B 100.2.2.0/24 [20/0] via 172.50.13.1, 00:43:22
B 100.1.1.0/24 [20/0] via 172.50.23.2, 00:43:22
B 100.0.0.0/14 [20/0] via 172.50.13.1, 00:43:22
3.0.0.0/32 is subnetted, 1 subnets
C 3.3.3.3 is directly connected, Loopback0
172.50.0.0/24 is subnetted, 2 subnets
C 172.50.23.0 is directly connected, Serial1/2
C 172.50.13.0 is directly connected, Serial1/0

مثل ما نشوف في الـ Routing table باللون الأحمر في R2 و R3 هذه هي المخرجات كما هو مطلوب بالسؤال وبدون اللعب او التغيير في اي من الـ BGP Attributes

نبي نسوي Test بسيط وبيكون موجود فيه برضوو لغز ابسط، راح نعمل Trace route من R2 لكل من الشبكات X و Y ونشوف وش راح يصير

R2#sh ip route | i 100
100.0.0.0/8 is variably subnetted, 3 subnets, 2 masks
B 100.2.2.0/24 [20/0] via 172.50.23.3, 00:47:55
B 100.1.1.0/24 [20/0] via 172.50.12.1, 00:47:55
B 100.0.0.0/14 [20/0] via 172.50.12.1, 00:47:55
=====================================
R2#traceroute 100.1.1.1 << Network X

Type escape sequence to abort.
Tracing the route to 100.1.1.1

1 172.50.12.1 100 msec 84 msec
=====================================
R2#traceroute 100.2.2.2 << Network Y

Type escape sequence to abort.
Tracing the route to 100.2.2.2

1 172.50.23.3 4 msec 56 msec 104 msec
2 * * *
3 * * *
4

=====================================

أكيد ان بعضكم أخذ هالوضعيه، وقال وش فيه R2 عمل trace route اوكي للشبكة X بس للشبكة Y وصل لـ R3 ووقف، السبب بكل بساطة ان R2 عندما يريد الوصول للشبكة Y يذهب عن طريق R3 إلى R1، ويكون الـ source ip في الـ Trace route هو 172.50.23.2، طبعا عند وصول الـ packet لـ R1 يعمل لها Drop، ليه ؟؟؟ عشان ما عنده اي معلومه عن هذه الشبكة 172.50.23.0/24 واللي هي بين R2 و R3، ولتفادي هذه المشكلة عندنا حلين، يا نقوم بالاعلان عن الشبكة 172.50.23.0/24 من R2 او R3 او كليهما، او نخلي الـ source ip للـ trace route هو الـ Loopback0 في R2 واللي هو 2.2.2.2، طبعا هذه الشبكة يدري عنها R1 عن طريق الـ BGP
الموضوع الأصلى من هنا: منتديات سيسكو التعليمية | كن بين الخبراء ! http://www.ciscovb.com/vb/2654-post17995.html

===========================
R2#traceroute 100.2.2.2 source loopback 0

Type escape sequence to abort.
Tracing the route to 100.2.2.2

1 172.50.23.3 52 msec 48 msec 48 msec
2 172.50.13.1 80 msec 108 msec
===========================

الحين نسوي shutdown للـ serial interface بين R2 و R3، ونشوف الـ Routing table في R2 بالاضافة لعمل Trace route للشبكة Y مرة أخرى

R2#show ip route | i 100
100.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
B 100.1.1.0/24 [20/0] via 172.50.12.1, 01:10:24
B 100.0.0.0/14 [20/0] via 172.50.12.1, 01:10:24
====================================
R2#traceroute 100.2.2.2

Type escape sequence to abort.
Tracing the route to 100.2.2.2

1 172.50.12.1 72 msec 48 msec

كما هو مطلوب بالسؤال، عند حصول خطب ما (حلوه خطب ما) في R3 او الـ AS3، سيقوم R2 بالوصول للشبكة Y عن طريق R1 مباشرة



أتمنى ان الصورة اتضحت الآن بالنسبة لهذا السؤال، وبالمناسبة واجهت في بعض المقابلات بعض الأسئلة وكان هذا من ضمنها، آسف على الإطالة وعند وجود اي استسفار الرجاء عدم التردد







التعديل الأخير تم بواسطة Gbps ; 02-04-2011 الساعة 03:03 PM
Gbps غير متواجد حالياً   رد مع اقتباس
 

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36