VRF-Lite
بسم الله والصلاة والسلام على رسول الله
الموضوع ده من أهم الموضوعات الموجودة بكورس المحترفين من سيسكو
والمقال ده إن شاء الله هو أول مقال من 4 مقالات عن ال VRF
إتأكد إنك قرأتهم كلهم ... كوباية القهوه بتاعتك ويلا بينا نبدأ
ال VRF فالراوتر تقدر لو هتوصفه بشكل مبسط سريع تقول انه زى ال VLAN فالسويتش
ال VLAN بتعمل Virtualization عالسويتش وبتخليه يشتغل كأنه أكتر من جهاز بشكل Virtual ...
مع انه بشكل Physical هو فقط جهاز واحد
والراوتر نفس الكلام ... فالصوره الأولى هتلاقى انه بدون ال VRF الراوتر عنده فقط
One Routing Table
بنسميه ال
Global Routing Table
وطبعا أى بورت بتفتحه وبتضيف عليه IP بيبقى موجود فالجدول ده لانه هو ال Global
ولو جربت تعمل نفس ال IP Add على بورتس مختلفه .. الراوتر هيرفض لانهم كلهم فنفس ال Global Table
لكن لو روحت على ال Router وعملت عليه VRF فهو هيبقى كأنه أكتر من راوتر مش راوتر واحد
إنت كده عملت Virtualization للراوتر بتاعك وهيبدأ يتعامل على انه أكتر من راوتر
بص معايا دلوقتى فالصوره الثانية لما قسمنا الراوتر وعملنا عليه 3 VRF
Blue & Orange & Green دى مجرد أسماء انت اللى بتسميها براحتك عالراوتر
وال Config بتاعها بتبقى بالطريقة دى
R(config)# IP VRF Blue
R(config)# IP VRF Orange
R(config)# IP VRF Green
علشان نشيل بورت محدد من ال Global Table وتنقله لل New VRF Table بتعمل الأوامر دى
int s1/2
no sh
ip vrf forwarding Blue
ip add 10 .0 .0 .1 255 .255 .0.0
exit
وبما ان البورت اتعزل تماما عن الباقى واتنقل لل New VRF Table فانا اقدر أكرر نفس ال IP Add ف Different VRF ... لانه بالنسبه للراوتر كانه فراوتر مختلف تماما
فانا دلوقتى هكتب نفس ال IP بدون أى مشاكل
int s1/1
no sh
ip vrf forwarding Orange
ip add 10 .0 .0 .1 255 .255 .0 .0
exit
خلى بالك من حاجه مهمه ... لازم الأول تضيف البورت على VRF محدد وبعدين تحط عليه ال IP ... لانك لو حطيت ال IP الأول هيضيفه فال Global Routing Table
وبعدين لما تنقل البورت لل VRF يعنى ل Different Routing Table ... الراوتر هيحذف ال IP
وطبعا مينفعش تضيف البورت فأكثر من VRF فنفس الوقت
ممكن تسأل نفسك طيب احنا ليه أصلا محتاجين نستخدم ال VRF
هقولك على مثال سريع علشان مطولش عليك وان شاء الله نشرح الموضوع بتفصيل أكبر فمقال جديد
من أكثر الأماكن اللى بنستخدم فيها ال VRf هى ال Service Provider ..
لأنك بتوصل أكتر من Customer فنفس الوقت على الراوتر بتاع ال ISP اللى بنسميه ال Provider Edge
وعلشان نفصل ما بينهم تماما لانهم Different Customers وملهومش اى علاقه ببعض فبنستخدم عند ال PE Router ال VRF
وبكده نكون وصلنا لنهاية المقال الأول .. شكرا إنك كملت المقال للأخر.




لو إستفدت من المقال ممكن تشاركه من هنا
للتواصل و حجز الكورسات عبر


المقال الأول
VRF-Lite
بسم الله والصلاة والسلام على رسول الله
ده أن شاء الله المقال رقم 2 من سلسلة ال VRF ... كوباية القهوه بتاعتك ويلا بينا نبدأ
بعد ما وضحنا فالمقال الأول فكرة ال VRF ولية ممكن نحتاجه واية التغيير اللى بيحصل للراوتر وإنه بيكون فى Routing Table لكل VRF
اليوم معانا مثال عملى هيساعدنا نفهم أكتر طريقة عمل ال VRF
زى ما حضراتكم شايفيين الراوتر اللى فالنص هو راوتر ال ISP وهو اللى هنعمل عليه ال VRF علشان بشكل أساسى يفصل الفروع اللى فوق عن الفروع اللى تحت لانهم ف VRF مختلف
وعشان تعمل كده لازم الأول تعرف ال ISP على ال Yellow VRF اللى فوق
وال Blue VRF اللى تحت
فهنعمل الأوامر دى زى ما ذكرنا امبارح
R(config)# IP VRF Yellow
R(config)# IP VRF Blue
وهنضيف ال Ports اللى فوق لل Yellow VRF واللى تحت لل Blue VRF
زى ما ذكرنا فالمقال الأول بالطريقة دى
int range e0/1-2
no sh
ip vrf forwarding Yellow
وهنكتب ال IP على كل بورت فيهم لوحدة
exit
-------------------------------------
int range e0/3-4
no sh
ip vrf forwarding Blue
وهنكتب ال IP على كل بورت فيهم لوحدة
exit
--------------------------
وعشان ننقل الشبكات من الفرع الأصفر اليمين للفرع الاصفر الشمال هنشغل اى بروتوكول ... وانا اختارت مثلا ال OSPF
فهنشغل ال OSPF لكل VRF لوحده بالطريقة دى
router ospf 1 vrf Blue
network 10 . 3 . 0 . 3 0 . 0 . 0 . 0 area 0
network 10 . 4 . 0 . 3 0 . 0 . 0 . 0 area 0
-------------------------------------
router ospf 2 vrf Yellow
network 10 . 1 . 0 . 3 0 . 0 . 0 . 0 area 0
network 10 . 2 . 0 . 3 0 . 0 . 0 . 0 area 0
EXIT
فى برده طرق تانية ممكن تستخدمها زى مثلا ال Static Route
يعنى مثلا فى Loopback عند الراوتر الأصفر عاليمين إسمه 1 . 1 . 1 . 1
فلو انا عاوز اعلم راوتر ال ISP علشان يوصلة هكتبلة الأمر ده
IP Route VRF Yellow 1 . 1 . 1 . 1 255 . 255 . 255 . 255 e0/1
وبكده إحنا ضمنا بسبب ال VRF انه كل فرع هيوصل للفرع المقابل فنفس اللون .. الأصفر يمين مع الأصفر شمال والأزرق يمين مع الأزرق شمال
طيب أفرض إحنا عاوزين الأزرق والأصفر يتكلموا مع بعض .. ينفع نعمل كده لو عاوزين ؟؟؟
آه ينفع .. وده هيبقى موضوع المقال القادم إن شاء الله


لو إستفدت من المقال ممكن تشاركه من هنا
للتواصل و حجز الكورسات عبر
المقال الثانى
VRF-Lite
بسم الله والصلاة والسلام على رسول الله
ده أن شاء الله المقال رقم 3 من سلسلة ال VRF ... كوباية القهوه بتاعتك ويلا بينا نبدأ
فالمقال رقم 3 هنشرح فكرة التواصل بين Different VRF
الطبيعى انهم ميوصلوش لبعض .. طيب افرض عاوزينهم يوصلوا لبعض نعمل ايه ؟؟
عندنا أكثر من طريقة عشان نعمل الموضوع ده
الطريقة الأولى باستخدام ال Static Route
هنروح عند كل Customer سواء فوق او تحت ونعمل Default Route علشان نقوله لو محتاج توصل لأ مكان روح لل Service Provider وهو هيوصلك .. فهنكتب الأمر ده
CUST-A(config)# ip route 0. 0. 0. 0 0. 0. 0. 0 10. 1. 0. 3
CUST-B(config)# ip route 0. 0. 0. 0 0. 0. 0. 0 10. 2. 0. 3
وعلى سبيل المثال هنعمل على كل Customer رقم Loopback علشان ن test بيه ال Connectivity
CUST-A(config)# int lo 1
no sh
ip add 1 .1 .1 .1 255 .255 .255 .255
exit
---
CUST-B(config)# int lo 2
no sh
ip add 2 .2 .2 . 2 255 .255 .255 .255
exit
----
دلوقتى عند راوتر ال ISP هنعلم كل VRF ازاى يوصل لرقم ال Loopback الخاص بال VRF الآخر ...
هنبدأ ب VRF CUST-B وهنعلمه ازاى يوصل لرقم Loopback 1
ISP(config)# ip route vrf CUST-B 1 .1 .1 .1 255 .255 .255 .255 10. 1. 0 .1 global
ودلوقتى هنعمل VRF CUST-A وهنعلمه ازاى يوصل لرقم Loopback 2
ISP(config)# ip route vrf CUST-A 2 .2 .2 .2 255 .255 .255 .255 10 .2 .0 .2 global
هتلاحظ انى زودت كلمة global فالاخر ...
لانه التواصل المباشر ما بين ال Different VRF مش هينفع بالطريقة دى ومحتاجين تعديل بسيط
والتعديل هو اننا لازم نستخدم ال Routing Table كوسيط بين ال Different VRF
فلما تضيف كلمه Global هيحصل بالظبط اللى احنا محتاجينه
فلو مثلا CUST-B محتاج يوصل لشبكة اسمها 1 . 1. 1 .1 هيبص فالجدول بتاعه وبعدين يبص فال Routing Table وبعدين ينقل من VRF CUST-B الى VRF CUST-A
بس فى حاجه اخيرة هنعدلها ... بما اننا محتاجين مساعدة ال Routing Table فلازم علشان يساعدنا يبقى عارف ال Nexthop اللى احنا محتاجين نستخدمها
فانا دلوقتى هعلم ال Routing Table ازاى يوصل لكل Nexthop فيهم
ISP(config)# ip route 10. 1. 0 .1 255 .255 .255 .255 e0/1
ISP(config)# ip route 10 .2 .0 .2 255 .255 .255 .255 e0/3
دلوقتى كل حاجه هتشتغل تمام ولو عملت Ping من CUST-A على رقم 2. 2 .2 .2
هتلاقى كل حاجه شغاله تمام
ودى كانت الطريقة الأولى باستخدام ال Static Route
إنتظر شرح الطريقة التانيه فالمقال القادم (رقم 4) باستخدام ال BGP ...


لو إستفدت من المقال ممكن تشاركه من هنا
للتواصل و حجز الكورسات عبر
المقال الثالث
VRF-Lite
بسم الله والصلاة والسلام على رسول الله
ده أن شاء الله المقال رقم 4 من سلسلة ال VRF ... كوباية القهوه بتاعتك ويلا بينا نبدأ
فالمقال رقم 3 شرحنا بشكل تفصيلي فكرة التواصل بين different VRF بإستخدام ال Static Route
واليوم ان شاء الله فالمقال رقم 4 هنشرح فكرة التواصل بين Different VRF بإستخدام طريقة تانيه وهى ال BGP
فالمقال السابق احنا عملنا Default Route عند ال Customer عشان ال ISP تساعده يوصل لاى مكان ...محتاجين المره دى كمان نعمل كده برده ... فهنكتب تانى الأوامر دى
CUST-A(config)# ip route 0. 0. 0. 0 0. 0. 0. 0 10. 1. 0. 3
CUST-B(config)# ip route 0. 0. 0. 0 0. 0. 0. 0 10. 2. 0. 3
وعلشان نـ test اللى هنشرحه فهنحتاج يكون عندنا Loopback address عند كل Customer
CUST-A(config)# int lo 1
no sh
ip add 1 .1 .1 .1 255 .255 .255 .255
exit
---
CUST-B(config)# int lo 2
no sh
ip add 2 .2 .2 . 2 255 .255 .255 .255
exit
----
هنبدأ دلوقتى نستخدم
Route Distinguisher : RD
ده رقم بيميز كل VRF وبيبقى مختلف عن ال VRF الآخر
وبنستخدمله الصيغه دى علشان نكتبه
ASN : Value
الرقم ده مهم جدا لانه لما بننقل الترافيك من مكان لمكان عبر ال Service Provider بنقدر نميز انه الترافيك دى تخص فقط ال VRF ده .. من خلال رقم ال RD
تانى حاجه هنحتاج نستخدمها هى ال
Route Targe: RT
وده برده بيكون فنفس شكل ال RD ولكن له هدف مختلف
من خلال ال RD انا عرفت انه الترافيك دى تخص ال VRF ده .. عرفت هى جاية منين
لكن معرفتش هى المفروض تروح فين ... هل هتروح لنفس ال VRF
ولا ل Different VRF .. وال RT هو اللى هيساعدنا فالموضوع ده
تعال أوضحلك أكتر
ISP(config)# ip vrf CUST-A
ISP(config-vrf)# rd 1:1
ISP(config-vrf)# route-target export 1:1
ISP(config-vrf)# route-target import 2:2
انا كده دخلت على ال SP Router وكتبت عليه انه VRF CUST-A هنميزه ب RD 1:1
وانه لما يجى يعمل إرسال هيبقى رقمه فال RT هو 1:1 ... الرقم ممكن يختلف عادى عن ال RD لكن انا عملته متشابه لسهوله الفهم ... فهو كده هيـ export للناس الشبكات بتاعته تحت اسم RT 1:1
وبما انى فالمقال هنا بكلمك عن التواصل بين different VRF فانا هقوله انا عاوزك تاخد من 2:2 نسبة الى ال Other VRF فهو هيـ import شبكات الناس التانيه اللى اسمها RT 2:2
ودلوقتى هنحتاج اننا نضيف كل ده داخل ال BGP .... لان الكلام ده كله بيستخدم ف ال Multi-Protocol BGP واللى بتبقى عباره عن أكتر من Address Family
زى مثلا IPv4, IPv6, VPNv4 وهكذا
واحنا دلوقتى هنستخدم IPv4 & VPNv4
VPNv4 دى اللى بيبقى جواها ارقام ال RT & RD
فهنكتب دلوقتى أوامر ال BGP
ISP(config)# router bgp 1
ISP(config-router)# bgp router-id 3 .3 .3 .3
ISP(config-router)# address-family ipv4 vrf CUST-A
ISP(config-router-af)# redistribute static
ISP(config-router-af)# redistribute connected
ISP(config-router)# address-family ipv4 vrf CUST-B
ISP(config-router-af)# redistribute static
ISP(config-router-af)# redistribute connected
exit
هتلاحظ انه انا تحت كل VRF دخلت جواها Static & Conncted هو فين ال Static ده ؟؟
ISP(config)# ip route vrf CUST-A 1 .1 .1 .1 255 .255 .255 .255 10 .1 .0 .1
ISP(config)# ip route vrf CUST-B 2 .2 .2 .2 255 .255 .255 .255 10 . 2 .0 .2
فهنا ال Static هو شبكة ال Loopback اللى انا ذكرتها سابقا
وال Connected موجوده هنا علشان ال Nexthop Add اللى هنستخدمه فال Static
وبكده يبقى جمعنا داخل ال BGP كل حاجه
شبكة ال Static بتاع ال Loopback
شبكة ال Connected علشان ال Nexthop
رقم ال RD علشان نعرف انه الترافيك جاية من انهى VRF
رقم ال RT علشان نعرف انه الترافيك المفروض توصل لانهى VRF
وعلشان تشوف كل ده محتاج تعمل الأمر ده
ISP# show bgp vpnv4 unicast vrf CUST-A
ودلوقتى تقدر تعمل Ping من CUST-A على رقم ال Loopback الخاص ب CUST-B
اللى هو 2 . 2 . 2 . 2 وهتلاقى كل حاجه اشتغلت تمام
ودى كانت الطريقة الثانية باستخدام ال BGP
وبكده نكون وصلنا لنهاية المقال الرابع والأخير فسلسلة مقالات ال VRF ... إن شاء الله تكون إستفدت من المقالات الأربعة.


لو إستفدت من المقال ممكن تشاركه من هنا
للتواصل و حجز الكورسات عبر
المقال الرابع