المقدمة
يصف هذا المستند تأثير سمة مجتمع Router MAC الموسعة التي تم تكوينها بشكل غير صحيح على بنية قائمة التحكم في الوصول (ACI) عند تلقيها من نظير BGP خارجي.
معلومات أساسية
باستخدام بروتوكول العبارة الحدودية، هناك خيار لإرسال سمات المجتمع والمجتمع الموسعة باستخدام البادئات التي يتم الإعلان عنها إلى أقران BGP. تتيح لنا سمات المجتمع هذه تعديل سياسات التوجيه وتغيير طريقة معالجة حركة المرور الموجهة بشكل ديناميكي.
المشكلة
عندما يتم إرسال سمة مجتمع Router MAC الموسعة مع بادئة IPv4 AFI من نظير BGP خارجي إلى بنية قائمة التحكم في الوصول (ACI)، يحدث سوء برمجة FIB و HAL على أي ورقة في البنية التي تستلم المسار من ورقة (أوراق) الحدود عبر عملية MP-BGP الداخلية. وذلك لأن سمة RMAC EXTCOMMUNITY تنتمي إلى عائلة عناوين EVPN BGP L2VPN، وعندما يتم حقنها في عائلة عناوين BGP IPv4، يتم رفضها. ويعزى ذلك إلى انتهاك القاعدة 5-2 (وضع الانتشار الموحد)، الوارد وصفها في وثيقة IETF المعنونة "العمل البيني لشبكة EVPN مع شبكة IPVPN". في الصفحة 15، البند 4 ج، يستدعى العدد المحدد:
4. As discussed, Communities, Extended Communities and Large
Communities SHOULD be kept by the gateway PE from the originating
SAFI route. Exceptions of Extended Communities that SHOULD NOT
be kept are:
C. All the extended communities of type EVPN.
The gateway PE SHOULD NOT copy the above extended communities
from the originating ISF route to the re-advertised ISF route.إرتباط إلى المستند: العمل البيني ل EVPN مع IPvpn
وفيما يلي مثال على المشكلة المتعلقة ببروتوكول iBGP، ومع ذلك، تظهر المشكلة أيضا في بروتوكول eBGP.
مخطط المخطط:
مخطط الطوبولوجيا
تكوين خريطة المسار على جهاز نظير BGP الخارجي (الموجه 1) وتعيين سمة مجتمع EVPN RMAC:
Router-1# show run | sec route-map
route-map RMAC permit 10
set extcommunity evpn rmac aaaa.bbbb.cccc
تحت تكوين عائلة عنوان IPv4 المجاور BGP، قم بتكوين مجتمعات BGP الموسعة، وتكوين خريطة المسار في الإتجاه الصادر:
Router-1# show run bgp
<output omitted>
feature bgp
router bgp 65001
vrf example
router-id 192.168.20.20
address-family ipv4 unicast
network 192.168.20.0/24
neighbor 192.168.30.30
remote-as 65001
update-source loopback1
address-family ipv4 unicast
send-community extended
route-map RMAC out
تحقق من حالة BGP على BL 101:
leaf-101# show ip bgp 192.168.20.0 vrf example:example
BGP routing table information for VRF example:example, address family IPv4 Unicast
BGP routing table entry for 192.168.20.0/24, version 40 dest ptr 0xa0fec840
Paths: (1 available, best #1)
Flags: (0x80c001a 00000000) on xmit-list, is in urib, is best urib route, is in HW, exported
vpn: version 2725, (0x100002) on xmit-list
Multipath: eBGP iBGP
Advertised path-id 1, VPN AF advertised path-id 1
Path type (0xa96485b8): internal 0x18 0x0 ref 0 adv path ref 2, path is valid, is best path
AS-Path: NONE, path sourced internal to AS
192.168.20.20 (metric 5) from 192.168.20.20 (192.168.20.20)
Origin IGP, MED not set, localpref 100, weight 0 tag 0, propagate 0
Extcommunity:
RT:65001:2162688
COST:pre-bestpath:163:1879048192
Router MAC:aaaa.bbbb.cccc
***Notice that the router mac is present here.***
VNID:2162688
VRF advertise information:
Path-id 1 not advertised to any peer
VPN AF advertise information:
Path-id 1 advertised to peers:
10.0.216.65 10.0.216.66
تدقيق RIB على CL 102:
leaf-102# show ip route 192.168.20.0 vrf example:example
IP Route Table for VRF "example:example"
'*' denotes best ucast next-hop
'**' denotes best mcast next-hop
'[x/y]' denotes [preference/metric]
'%<string>' in via output denotes VRF <string>
192.168.20.0/24, ubest/mbest: 1/0
*via 10.0.210.70%overlay-1, [200/0], 00:00:43, bgp-65001, internal, tag 65001, rwVnid: vxlan-2162688
recursive next hop: 10.0.210.70/32%overlay-1
***Notice that we have the route here and our next-hop address is correct (showing the TEP IP of BL 101). Also, notice that there is an rwVnid entry here.***
leaf-102# acidiag fnvread | grep 101
101 1 leaf-101 <output omitted> 10.0.210.70/32 leaf active 0
تحقق من FIB على CL 102:
module-1(DBG-elam-insel6)# show forwarding route 192.168.20.0 vrf example:example
ERROR: no longest match in IPv4 table 0xf5df36b0
***No entry is present.***
تحقق من جدول HAL على CL 102:
module-1(DBG-elam-insel6)# show platform internal hal l3 routes | grep 192.168.20.0
***No entry is present.***
إختبارات الاتصال من EP (المضيف 1) إلى المضيف في الشبكة الخارجية التي تأتي من نظير BGP الخارجي (192.168.20.20):
Host-1# ping 192.168.20.20 vrf example
PING 192.168.20.20 (192.168.20.20): 56 data bytes
Request 0 timed out
Request 1 timed out
Request 2 timed out
Request 3 timed out
Request 4 timed out
--- 192.168.20.20 ping statistics ---
5 packets transmitted, 0 packets received, 100.00% packet loss
***No connectivity.***
تحقق من ELAM على CL 102:
leaf-102# vsh_lc
module-1# debug platform internal roc elam asic 0
module-1(DBG-elam)# trigger reset
module-1(DBG-elam)# trigger init in-select 6 out-select 0
module-1(DBG-elam-insel6)# set outer ipv4 src_ip 192.168.10.10 dst_ip 192.168.20.20
module-1(DBG-elam-insel6)# start
module-1(DBG-elam-insel6)# stat
ELAM STATUS
===========
Asic 0 Slice 0 Status Armed
Asic 0 Slice 1 Status Triggered
module-1(DBG-elam-insel6)# ereport
Python available. Continue ELAM decode with LC Pkg
ELAM REPORT
<output omitted>
------------------------------------------------------------------------------------------------------------------------------------------------------
Lookup Drop
------------------------------------------------------------------------------------------------------------------------------------------------------
LU drop reason : UC_PC_CFG_TABLE_DROP
***Notice the drop vector here.***
الحل
يكمن الحل في إيقاف إرسال سمة مجتمع MAC الموسعة للموجه باستخدام بادئة مجموعة عناوين IPv4 من نظير BGP خارجي إلى بنية قائمة التحكم في الوصول (ACI).
قم بإزالة خريطة المسار التي تم تكوينها مسبقا وتوقف إرسال المجتمعات الموسعة من جهاز نظير BGP الخارجي (الموجه 1). تعمل إزالة أي من هذه التهيئة، أو كلا التكوينين:
Router-1# show run bgp
وهناك حل آخر (أقل تفضيلا) وهو تصفية جميع المجتمعات التي تم استقبالها من جهاز نظير BGP الخارجي عن طريق إنشاء خريطة مسار في L3Out الذي تم تكوينه في واجهة التحكم في الوصول (ACI).
انتقل إلىTenant > Policies > Protocol > Route Maps for Route Control > Create Route Maps for Route Control:
حدد الخيار لإنشاء خرائط مسار للتحكم في المسار
قم بتسمية مخطط المسار الخاص بك وتمكينRoute-Map Continueالخيار، ثم قم بإضافة سياق. حدد+ الأيقونة في جدول السياقات:
إنشاء مخطط مسار وإنشاء سياق
قم بتسمية السياق الخاص بك، واترك الإجراء الافتراضيPermitالمحدد، ثم قم بإنشاء قاعدة مطابقة عن طريق تحديد+الأيقونة فيAssociated Matched Rulesالجدول، ثم حدد Create Match Rule for a Route Map:
إنشاء سياق التحكم في المسار وتحديد خيار لإنشاء قاعدة مطابقة لمخطط المسار
قم بتسمية قاعدة المطابقة الخاصة بك ثم قم بإضافة بادئة جديدة عن طريق تحديد أيقونة + فيMatch Prefixالجدول:
إنشاء قاعدة المطابقة وإنشاء بادئة المطابقة
قم بإضافة البادئة المطلوبة. يوضح هذا المثال كيفية إضافة تجميع لجميع البادئات:
إنشاء قاعدة وجهة مسار المطابقة
بعد أن تقوم بتحديد OK فيCreate Match Route Destination Ruleالنافذة، سترى أن البادئة الخاصة بك قد تمت إضافتها إلىMatch Prefixالجدول فيCreate Match Ruleالنافذة:
تمت إضافة بادئة المطابقة الآن إلى قاعدة المطابقة
بعد أن تقوم بالتحديدSubmit فيCreate Match Ruleالنافذة، حددUpdateفيAssociated Matched Rulesالجدول فيCreate Route Control Contextالنافذة:
إضافة قاعدة المطابقة المقترنة إلى سياق التحكم في المسار
تمت الآن إضافة قاعدة المطابقة المقترنة إلى السياق الخاص بك:
تمت الآن إضافة قاعدة المطابقة المقترنة إلى سياق التحكم في المسار
بعد ذلك، حدد القائمة المنسدلة المجاورةSet RuleوحددCreate Set Rules for a Route Map:
تحديد خيار لإنشاء قواعد تعيين لمخطط المسار
قم بتسمية قاعدة المجموعة الخاصة بك، ثم حددSet Communityالخيار واترك المعايير الافتراضيةNo communityالمحددة:
إنشاء قاعدة تعيين لخريطة المسار
بعد أن تقوم بتحديد إنهاء فيCreate Set Rules for a Route Mapالنافذة، سترى قاعدة المجموعة الخاصة بك محددة فيCreate Route Control Contextالنافذة:
تمت إضافة قاعدة التعيين الآن إلى سياق التحكم في المسار
بعد أن تقوم بتحديدOKفيCreate Route Control Context النافذة، سترى سياقك مضاف إلىContexts الجدول فيCreate Route Maps for Route Controlالنافذة. أخيرا، حددSubmitلإكمال التكوين:
تمت إضافة السياق الآن إلى خريطة المسار
انتقل إلى ملف تعريف اتصال نظير BGP في L3Out وحدد+الرمز فيRoute Control Profileالجدول، ثم قم بإضافة خريطة المسار الخاصة بك مع الإتجاه الافتراضيRoute Import Policyالمحدد:
إضافة خريطة مسار إلى ملف تعريف اتصال نظير BGP
بعد تحديد Update لخريطة المسار، يمكنك رؤية خريطة المسار التي قمت بإضافتها إلىRoute Control Profileالجدول:
تتم إضافة خريطة المسار الآن إلى ملف تعريف اتصال نظير BGP
*للحصول على مزيد من المعلومات حول خيارات تكوين خريطة المسار في قائمة التحكم في الوصول (ACI)، ارجع إلى تقرير L3Out الخاص بهيكل قائمة التحكم في الوصول (ACI)
بعد تنفيذ أحد الحلول المذكورة أعلاه، تحقق من حل المشكلة.
تحقق من حالة BGP على BL 101:
leaf-101# show ip bgp 192.168.20.0 vrf example:example
BGP routing table information for VRF example:example, address family IPv4 Unicast
BGP routing table entry for 192.168.20.0/24, version 46 dest ptr 0xa0fec840
Paths: (1 available, best #1)
Flags: (0x80c001a 00000000) on xmit-list, is in urib, is best urib route, is in HW, exported
vpn: version 2731, (0x100002) on xmit-list
Multipath: eBGP iBGP
Advertised path-id 1, VPN AF advertised path-id 1
Path type (0xa96485b8): internal 0x18 0x0 ref 0 adv path ref 2, path is valid, is best path
AS-Path: NONE, path sourced internal to AS
192.168.20.20 (metric 5) from 192.168.20.20 (192.168.20.20)
Origin IGP, MED not set, localpref 100, weight 0 tag 0, propagate 0
Extcommunity:
RT:65001:2162688
COST:pre-bestpath:163:1879048192
***Notice that no router mac is present here.***
VNID:2162688
VRF advertise information:
Path-id 1 not advertised to any peer
VPN AF advertise information:
Path-id 1 advertised to peers:
10.0.216.65 10.0.216.66
تدقيق RIB على CL 102:
leaf-102# show ip route 192.168.20.0 vrf example:example
IP Route Table for VRF "example:example"
'*' denotes best ucast next-hop
'**' denotes best mcast next-hop
'[x/y]' denotes [preference/metric]
'%<string>' in via output denotes VRF <string>
192.168.20.0/24, ubest/mbest: 1/0
*via 10.0.210.70%overlay-1, [200/0], 00:00:06, bgp-65001, internal, tag 65001
recursive next hop: 10.0.210.70/32%overlay-1
***Notice that no rwVnid entry is present here.***
ملاحظة: لا يحدد غياب أو وجود إدخال rwVnid وحده ما إذا كانت المشكلة تحدث أم لا. في العديد من الحالات، يتم إزالة إدخال rwVnid من المسار المعني بمجرد حل المشكلة. ولكن هذا ليس هو الحال دائما. تحقق دائما من جداول FIB و HAL للتحقق من حل المشكلة أو عدم حلها.
تحقق من FIB على CL 102:
module-1(DBG-elam-insel6)# show forwarding route 192.168.20.0 vrf example:example
IPv4 routes for table example:example/base
------------------+------------------+----------------------+------------------------
Prefix | Next-hop | Interface/VRF | Additional Info
------------------+------------------+----------------------+------------------------
*192.168.20.0/24 10.0.210.70 overlay-1
***Notice that we have the route here and our next-hop address is correct (showing the TEP IP of BL 101).***
Route Class-id:0x0
Policy Prefix 0.0.0.0/0
leaf-102# acidiag fnvread | grep 101
101 1 leaf-101 10.0.210.70/32 leaf active 0
جدول HAL على CL 102:
module-1(DBG-elam-insel6)# show platform internal hal l3 routes | grep 192.168.20.0
| 4662| 192.168.20.0/ 24| UC| 686| 20601| TRIE| a5| 5/ 0| 60a5|A| 8443| 86b6| ef5| 1/ 2| a5| 0| 0| f| 3| 0| 0| 1| sc,spi,dpi
***Notice that we have an entry here and it's in the correct VRF.***
module-1(DBG-elam-insel6)# hex 4662
0x1236
module-1(DBG-elam-insel6)# show platform internal hal l3 vrf pi
============================================================================================================
| -- TOR -- | - Spine - | ACL | |
Vrf Hw I I Vrf | SB NB | Proxy ACI | Ing Egr | vpn |
VrfId Name VrfId I S Vnid | BDId BDId | Ou Bd Enc | Lbl Msk Lbl Msk | lbl |
============================================================================================================
26 example:example 1236 0 0 210000 0 0 0 1 0 0 0 0 0
إختبارات الاتصال من EP (المضيف 1) إلى المضيف في الشبكة الخارجية التي تأتي من نظير BGP الخارجي (192.168.20.20):
Host-1# ping 192.168.20.20 vrf example
PING 192.168.20.20 (192.168.20.20): 56 data bytes
64 bytes from 192.168.20.20: icmp_seq=0 ttl=252 time=1.043 ms
64 bytes from 192.168.20.20: icmp_seq=1 ttl=252 time=1.292 ms
64 bytes from 192.168.20.20: icmp_seq=2 ttl=252 time=1.004 ms
64 bytes from 192.168.20.20: icmp_seq=3 ttl=252 time=0.769 ms
64 bytes from 192.168.20.20: icmp_seq=4 ttl=252 time=1.265 ms
--- 192.168.20.20 ping statistics ---
5 packets transmitted, 5 packets received, 0.00% packet loss
round-trip min/avg/max = 0.769/1.074/1.292 ms
***Connectivity is there.***
ELAM على CL 102:
leaf-102# vsh_lc
module-1# debug platform internal roc elam asic 0
module-1(DBG-elam)# trigger reset
module-1(DBG-elam)# trigger init in-select 6 out-select 0
module-1(DBG-elam-insel6)# set outer ipv4 src_ip 192.168.10.10 dst_ip 192.168.20.20
module-1(DBG-elam-insel6)# start
module-1(DBG-elam-insel6)# stat
ELAM STATUS
===========
Asic 0 Slice 0 Status Armed
Asic 0 Slice 1 Status Triggered
module-1(DBG-elam-insel6)# ereport
Python available. Continue ELAM decode with LC Pkg
ELAM REPORT
<output omitted>
------------------------------------------------------------------------------------------------------------------------------------------------------
Lookup Drop
------------------------------------------------------------------------------------------------------------------------------------------------------
LU drop reason : no drop
***Traffic forwards correctly.***
معلومات ذات صلة