De documentatie van dit product is waar mogelijk geschreven met inclusief taalgebruik. Inclusief taalgebruik wordt in deze documentatie gedefinieerd als taal die geen discriminatie op basis van leeftijd, handicap, gender, etniciteit, seksuele oriëntatie, sociaaleconomische status of combinaties hiervan weerspiegelt. In deze documentatie kunnen uitzonderingen voorkomen vanwege bewoordingen die in de gebruikersinterfaces van de productsoftware zijn gecodeerd, die op het taalgebruik in de RFP-documentatie zijn gebaseerd of die worden gebruikt in een product van een externe partij waarnaar wordt verwezen. Lees meer over hoe Cisco gebruikmaakt van inclusief taalgebruik.
Cisco heeft dit document vertaald via een combinatie van machine- en menselijke technologie om onze gebruikers wereldwijd ondersteuningscontent te bieden in hun eigen taal. Houd er rekening mee dat zelfs de beste machinevertaling niet net zo nauwkeurig is als die van een professionele vertaler. Cisco Systems, Inc. is niet aansprakelijk voor de nauwkeurigheid van deze vertalingen en raadt aan altijd het oorspronkelijke Engelstalige document (link) te raadplegen.
Dit document beschrijft stappen om ACI-beveiligingsbeleid te begrijpen en problemen op te lossen, bekend als contracten.
Het materiaal van dit document is afgeleid uit het boek Problemen oplossen van Cisco Application Centric Infrastructure, Second Edition, met name het Security Policies - Overzicht, Security Policies - Tools, Security Policies - EPG naar EPG, Security Policies - Preferred group en Security Policies - vzAny naar EPG hoofdstukken.
De fundamentele veiligheidsarchitectuur van de ACI-oplossing volgt een permitlist-model. Tenzij een VRF in ongedwongen modus is geconfigureerd, worden alle EPG naar EPG verkeersstromen impliciet verwijderd. Zoals wordt geïmpliceerd door het out-of-the-box permitlist model, is de standaard VRF-instelling in afgedwongen modus. Verkeersstromen kunnen worden toegestaan of expliciet worden ontkend door regels voor de indeling in zones op de knooppunten van de switch te implementeren. Deze zoning-regels kunnen in een verscheidenheid van verschillende configuraties afhankelijk van de gewenste communicatie stroom tussen eindpuntgroepen (EPG) en de methode worden geprogrammeerd worden gebruikt om hen te bepalen. Merk op dat de zoning-regel ingangen niet stateful zijn en zullen typisch toestaan/ontkennen gebaseerd op haven/contactdoos gegeven twee EPGs zodra de regel is geprogrammeerd.
De belangrijkste methoden om de regels voor de indeling in zones binnen de ACI te programmeren, zijn:
Het volgende diagram kan worden gebruikt om de granulariteit van de zoneringsregel aan te geven die elk van de bovenstaande methoden toestaat voor controle:
Bij het gebruik van de contractmethode van de programmering van zoneregels, is er een optie voor het definiëren van de contractreikwijdte. Deze optie moet zorgvuldig worden overwogen als er een route lekt/gedeelde service ontwerp is vereist. Als de wens is om van de ene VRF naar de andere binnen de ACI-stof te komen, zijn contracten de methode om dit te doen.
De toepassingswaarden kunnen als volgt zijn:
Zodra de zoneringsregel is geprogrammeerd, wordt deze op een blad als volgt weergegeven:
+---------+--------+--------+----------+----------------+---------+---------+-----------------+----------+----------------------+
| Rule ID | SrcEPG | DstEPG | FilterID | Dir | operSt | Scope | Name | Action | Priority |
+---------+--------+--------+----------+----------------+---------+---------+-----------------+----------+----------------------+
Aangezien elke zoneringsregel geprogrammeerd wordt, zal een matrix van de zoneringsregel die tegen filteringangen in kaart wordt gebracht Policy CAM op de switches beginnen te verbruiken. Bij het ontwerpen van toegestane stromen door een ACI-stof, moet speciale zorg worden genomen bij het hergebruiken van contracten, in plaats van het creëren van nieuwe, afhankelijk van het eindontwerp. Het toevallig hergebruiken van hetzelfde contract over meerdere EPG's zonder de resulterende zoning-regels te begrijpen kan snel in meerdere stromen worden gekaatst die onverwacht worden toegestaan. Tegelijkertijd zullen deze onbedoelde stromen beleidsCAM blijven consumeren. Wanneer Policy CAM volledig wordt, zal de zoning-regel programmering beginnen te mislukken wat kan resulteren in onverwacht en intermitterend verlies afhankelijk van configuratie en eindpunt gedrag.
Dit is een speciale callout voor de case voor het gebruik van de gedeelde diensten waarvoor contracten moeten worden geconfigureerd. Gedeelde services impliceren doorgaans interVRF-verkeer binnen een ACI-structuur die afhankelijk is van het gebruik van een 'huurder'- of 'wereldwijd'-toepassingscontract. Om dit volledig te begrijpen, moet men eerst het idee versterken dat de typische pcTag-waarde die aan EPG's wordt toegewezen niet wereldwijd uniek is. pcTags zijn scoped naar een VRF en dezelfde pcTag kan mogelijk worden hergebruikt binnen een andere VRF. Wanneer de discussie over weglekken opduikt, beginnen eisen op de ACI-stof af te dwingen, inclusief de behoefte aan wereldwijd unieke waarden, waaronder subnetten en pcTags.
Wat dit een bijzondere overweging maakt is het directionaliteitsaspect dat verbonden is aan een EPG als consument tegenover aanbieder. In een scenario met gedeelde services wordt van de provider verwacht dat hij een wereldwijde pcTag aanstuurt om een unieke waarde voor de stof te krijgen. Tegelijkertijd zal de consument zijn VRF-opgeruimde pcTag behouden, wat het in een speciale positie plaatst om nu het gebruik van de wereldwijde pcTag waarde te kunnen programmeren en begrijpen om beleid af te dwingen.
Ter referentie is de pcTag toewijzingsbereik als volgt:
In elke VRF is het mogelijk om de instelling van de afdwingingsrichting te definiëren.
Het begrip van waar het beleid wordt afgedwongen hangt van verscheidene verschillende variabelen af.
De onderstaande tabel helpt te begrijpen waar het beveiligingsbeleid op bladniveau wordt afgedwongen.
scenario |
VRF-afdwingingsmodus |
Consument |
Provider |
Gedwongen beleid |
Intra-VRF |
Ingang/uitgang |
EPG |
EPG |
· Als eindpunt bestemming wordt aangeleerd: indringblad* · Als eindpunt bestemming niet wordt geleerd: uitreisblad |
Ingress |
EPG |
L3Out-EPG |
Consumentenblad (niet-grensblad) |
|
Ingress |
L3Out-EPG |
EPG |
Dienstenblad (niet-grensblad) |
|
uitgang |
EPG |
L3Out-EPG |
Grensblad -> niet-grensverkeer · Als eindpunt bestemming wordt aangeleerd: grensblad · Als eindpunt bestemming niet wordt geleerd: niet-grensblad Buitengrensblad-> grensbladverkeer · Grensblad |
|
uitgang |
L3Out-EPG |
EPG |
||
Ingang/uitgang |
L3Out-EPG |
L3Out-EPG |
Ingress leaf* |
|
Inter-VRF |
Ingang/uitgang |
EPG |
EPG |
Consumentenblad |
Ingang/uitgang |
EPG |
L3Out-EPG |
Consumentenblad (niet-grensblad) |
|
Ingang/uitgang |
L3Out-EPG |
EPG |
Ingress leaf* |
|
Ingang/uitgang |
L3Out-EPG |
L3Out-EPG |
Ingress leaf* |
*Beleidshandhaving wordt toegepast op het eerste blad dat door het pakket wordt geraakt.
De onderstaande figuur illustreert een voorbeeld van contracthandhaving waar EPG-Web als consument en L3Out EPG als leverancier een intra-VRF contract hebben. Als VRF is ingesteld op Ingress-afdwingingsmodus, wordt het beleid afgedwongen door de bladknooppunten waar EPG-Web zich bevindt. Als de VRF is ingesteld op de uitgangshandhavingsmodus, wordt het beleid afgedwongen door de grensbladknooppunten waar L3Out zich bevindt als het VM-Web-eindpunt op het grensblad wordt geleerd.
Er zijn een verscheidenheid aan hulpmiddelen en opdrachten die kunnen worden gebruikt om te helpen bij de identificatie van een beleidsdaling. Een beleidsdruppel kan worden gedefinieerd als een pakketdruppel als gevolg van een contractconfiguratie of het ontbreken daarvan.
De volgende tools en commando's kunnen worden gebruikt om de zoningregels die op switches geprogrammeerd zijn als gevolg van een afgewerkte contract-relatie tussen klant en aanbieder expliciet te valideren.
Een opdracht op switch die alle zoneregels toont.
leaf# show zoning-rule
+---------+--------+--------+----------+----------------+---------+----------+-----------------+----------+----------------------------+
| Rule ID | SrcEPG | DstEPG | FilterID | Dir | operSt | Scope | Name | Action | Priority |
+---------+--------+--------+----------+----------------+---------+----------+-----------------+----------+----------------------------+
| 4156 | 25 | 16410 | 425 | uni-dir-ignore | enabled | 2818048 | external_to_ntp | permit | fully_qual(7) |
| 4131 | 16410 | 25 | 424 | bi-dir | enabled | 2818048 | external_to_ntp | permit | fully_qual(7) |
+---------+--------+--------+----------+----------------+---------+----------+-----------------+----------+----------------------------+
Een filter dat de sport/uitwijkinformatie bevat waarop de zoneringsregel werkt. De filterprogrammering kan met deze opdracht worden geverifieerd.
leaf# show zoning-filter
+----------+----------+-------------+-------------+-------------+----------+-------------+-------------+-------------+-------------+----------+
| FilterId | Name | EtherT | Prot | ApplyToFrag | Stateful | SFromPort | SToPort | DFromPort | DToPort | Prio |
+----------+----------+-------------+-------------+-------------+----------+-------------+-------------+-------------+-------------+----------+
| implarp | implarp | arp | unspecified | no | no | unspecified | unspecified | unspecified | unspecified | dport |
| implicit | implicit | unspecified | unspecified | no | no | unspecified | unspecified | unspecified | unspecified | implicit |
| 425 | 425_0 | ip | tcp | no | no | 123 | 123 | unspecified | unspecified | sport |
| 424 | 424_0 | ip | tcp | no | no | unspecified | unspecified | 123 | 123 | dport |
+----------+----------+-------------+-------------+-------------+----------+-------------+-------------+-------------+-------------+----------+
Deze opdracht kan worden uitgevoerd om het aantal hits per zoning-rule te verifiëren. Dit is nuttig om te bepalen of een verwachte regel wordt geraakt in tegenstelling tot een andere, zoals een impliciete drop regel die een hogere prioriteit kan hebben.
leaf# show system internal policy-mgr stats
Requested Rule Statistics
Rule (4131) DN (sys/actrl/scope-2818048/rule-2818048-s-16410-d-25-f-424) Ingress: 0, Egress: 0, Pkts: 0 RevPkts: 0
Rule (4156) DN (sys/actrl/scope-2818048/rule-2818048-s-25-d-16410-f-425) Ingress: 0, Egress: 0, Pkts: 0 RevPkts: 0
Een opdracht op switch niveau die kan worden uitgevoerd op iBash-niveau en die ACL-gerelateerde (contract)dalingen en flow-gerelateerde informatie rapporteert, waaronder:
leaf# show logging ip access-list internal packet-log deny
[ Tue Oct 1 10:34:37 2019 377572 usecs]: CName: Prod1:VRF1(VXLAN: 2654209), VlanType: Unknown, Vlan-Id: 0, SMac: 0x000c0c0c0c0c, DMac:0x000c0c0c0c0c, SIP: 192.168.21.11, DIP: 192.168.22.11, SPort: 0, DPort: 0, Src Intf: Tunnel7, Proto: 1, PktLen: 98
[ Tue Oct 1 10:34:36 2019 377731 usecs]: CName: Prod1:VRF1(VXLAN: 2654209), VlanType: Unknown, Vlan-Id: 0, SMac: 0x000c0c0c0c0c, DMac:0x000c0c0c0c0c, SIP: 192.168.21.11, DIP: 192.168.22.11, SPort: 0, DPort: 0, Src Intf: Tunnel7, Proto: 1, PktLen: 98
Een Python-script op het apparaat dat een uitvoer produceert die de zoningregels, filters en hit-statistieken correleert tijdens het uitvoeren van naamraadplegingen van ID’s. Dit script is uitermate nuttig in die zin dat het een meerstappenproces neemt en het in één opdracht verandert die kan worden gefilterd naar specifieke EPG’s/VRF’s of op andere contractgerelateerde waarden.
leaf# contract_parser.py
Key:
[prio:RuleId] [vrf:{str}] action protocol src-epg [src-l4] dst-epg [dst-l4] [flags][contract:{str}] [hit=count]
[7:4131] [vrf:common:default] permit ip tcp tn-Prod1/ap-Services/epg-NTP(16410) tn-Prod1/l3out-L3Out1/instP-extEpg(25) eq 123 [contract:uni/tn-Prod1/brc-external_to_ntp] [hit=0]
[7:4156] [vrf:common:default] permit ip tcp tn-Prod1/l3out-L3Out1/instP-extEpg(25) eq 123 tn-Prod1/ap-Services/epg-NTP(16410) [contract:uni/tn-Prod1/brc-external_to_ntp] [hit=0]
[12:4169] [vrf:common:default] deny,log any tn-Prod1/l3out-L3Out1/instP-extEpg(25) epg:any [contract:implicit] [hit=0]
[16:4167] [vrf:common:default] permit any epg:any tn-Prod1/bd-Services(32789) [contract:implicit] [hit=0]
Een ASIC-rapport dat wordt gebruikt om te controleren of er gegevens worden doorgestuurd, wat bij een gedropt pakket de reden voor het uitzetten aangeeft. Relevant voor deze sectie, kan de reden een SECURITY_GROUP_DENY (contract policy drop) zijn.
Een op Python gebaseerd hulpprogramma op de APIC die end-to-end pakketstroom met ELAM kan volgen.
Een APIC-app die de complexiteit van verschillende ASIC's samenvat om het doorsturen van beslissingsinspectie veel handiger en gebruiksvriendelijker te maken.
Raadpleeg het gedeelte "Intra-Fabric Forwarding" voor meer informatie over de ELAM, fTriage en ELAM Assistant tools
Het gebruik van Policy CAM per blad is een belangrijke parameter om te monitoren om ervoor te zorgen dat de stof in een gezonde status is. De snelste manier om dat te controleren is door het 'Capacity Dashboard' te gebruiken binnen de GUI en expliciet de 'Policy Cam'-kolom te controleren.
Deze opdracht is handig voor het valideren van een verscheidenheid aan resourcegrenzen en gebruik, waaronder Policy CAM. Let op dat deze opdracht alleen uitgevoerd kan worden in vsh_lc, dus geef het door in de "-c" vlag als het vanaf iBash uitgevoerd wordt.
leaf8# vsh_lc -c "show platform internal hal health-stats"
|Sandbox_ID: 0 Asic Bitmap: 0x0
|-------------------------------------
...
Policy stats:
=============
policy_count : 96
max_policy_count : 65536
policy_otcam_count : 175
max_policy_otcam_count : 8192
policy_label_count : 0
max_policy_label_count : 0
=============
Er zijn talrijke manieren om een connectiviteitskwestie tussen twee endpoints problemen op te lossen. De volgende methodologie biedt een goed uitgangspunt om snel en effectief te isoleren of het connectiviteitsprobleem het gevolg is van een beleidsdaling (geïnduceerd contract).
Enkele belangrijke vragen die het waard zijn om gesteld te worden voordat je binnenduikt:
Met de diverse beschikbare hulpmiddelen, zijn er sommige die geschikter en geschikter zijn om met dan anderen te beginnen, afhankelijk van het niveau van informatie reeds gekend over de beïnvloede stroom.
Is het volledige pad van het pakket in de ACI-stof bekend (indringblad, uitreisblad...)?
Houd er rekening mee dat de tool fTriage niet in detail in deze sectie wordt besproken. Raadpleeg het hoofdstuk "Intra-Fabric Forwarding" voor meer informatie over het gebruik van deze tool.
Denk eraan dat, hoewel zichtbaarheid en probleemoplossing kunnen helpen om snel te visualiseren waar pakketten tussen twee eindpunten worden gelaten, fTriage meer diepgaande informatie toont voor verdere probleemoplossing. d.w.z. fTriage zal helpen interface, valreden, en andere lage details over de beïnvloede stroom identificeren
.
Dit voorbeeldscenario zal tonen hoe u een beleidsdaling tussen twee endpoints kunt oplossen: 192 168 21 11 en 192 168 23 11
Ervan uitgaande dat pakketdruppels tussen deze twee eindpunten worden ervaren, wordt de volgende workflow voor probleemoplossing gebruikt om de basisoorzaak van het probleem te identificeren:
Identificeer de src/dst-bladeren die bij de verkeersstroom betrokken zijn:
De bovenstaande stappen worden in de volgende paragraaf nader beschreven.
Dit voorbeeldscenario zal tonen hoe u een beleidsdaling tussen twee endpoints kunt oplossen: 192.168.21.11 in EPG-Web en 192.168.23.11 in EPG-DB.
De tool Zichtbaarheid en probleemoplossing helpt de switch waar de pakketdaling heeft plaatsgevonden voor een specifieke EP-naar-EP-stroom te visualiseren en te identificeren waar pakketten mogelijk zijn gedropt.
Configureer een sessienaam, bron en doeleindpunt. Klik vervolgens op 'Verzenden' of 'Rapport genereren'.
De tool zal automatisch de eindpunten in de stof vinden en informatie verstrekken over de huurder, het toepassingsprofiel en EPG die EP behoren tot.
In dit geval zal zij ontdekken dat de EP's behoren tot de huurder Prod1, zij behoren tot hetzelfde toepassingsprofiel 'AppProf' en worden toegewezen aan verschillende EPG's: 'Web' en 'DB'.
Het hulpmiddel zal automatisch de topologie van het het oplossen van probleemscenario visualiseren. In dit geval zijn de twee eindpunten toevallig verbonden met dezelfde switch.
Door naar het submenu Drop/Stats te navigeren, kan de gebruiker algemene druppels op het blad of de ruggengraat in kwestie bekijken. Raadpleeg de sectie "Interface Drops" in het hoofdstuk "Intra-Fabric Forwarding" van dit boek voor meer informatie over het begrijpen van welke druppels relevant zijn.
Veel van deze druppels zijn verwacht gedrag en kunnen worden genegeerd.
Door neer te boren om detail te laten vallen met behulp van de gele "Geknepen gevallen" knop in het switch diagram, kan de gebruiker details over de verloren stroom bekijken.
Door aan submenu Contracten te navigeren, kan de gebruiker identificeren welk contract beleidsvertraging tussen EPGs veroorzaakt. In het voorbeeld, is het impliciet om Prod1/VRF1 te ontkennen die sommige hits toont. Dit betekent niet noodzakelijkerwijs dat de gespecificeerde stroom (192.168.21.11 en 192.168.23.11) deze impliciete ontkenning raakt. Als de Hits van Context Implicit ontkennen regel toeneemt, impliceert het dat er verkeer is tussen Prod1/DB en Prod1/Web die geen van de contracten raken, vandaar door Implicit ontkennen worden gelaten.
In de weergave van de topologie van het toepassingsprofiel bij huurder > selecteer de naam van het toepassingsprofiel links > Topologie, is het mogelijk om te verifiëren welke contracten worden toegepast op de DB EPG. In dat geval wordt aan de EPG geen contract toegewezen:
Nu de bron- en bestemming-EPG’s bekend zijn, is het ook mogelijk andere relevante informatie te identificeren, zoals:
Klasse-ID en bereik kunnen gemakkelijk worden opgehaald uit de APIC GUI door de huurder te openen > selecteer de naam van de huurder links > Operationeel > Resource ID’s > EPG’s
In dit geval zijn de Klasse ID en Scopes:
Een interessant hulpmiddel om het pakket te verifiëren dat op een ACI-blad wordt gelaten, is de iBash-opdrachtregel: 'toon het registreren ip toegang-lijst intern pakketlogboek ontkennen':
leaf5# show logging ip access-list internal packet-log deny | grep 192.168.21.11
[2019-10-01T14:25:44.746528000+09:00]: CName: Prod1:VRF1(VXLAN: 2654209), VlanType: FD_VLAN, Vlan-Id: 114, SMac: 0xf6f26c4ec8d0, DMac:0x0022bdf819ff, SIP: 192.168.21.11, DIP: 192.168.23.11, SPort: 0, DPort: 0, Src Intf: Ethernet1/19, Proto: 1, PktLen: 126
[2019-10-01T14:25:44.288653000+09:00]: CName: Prod1:VRF1(VXLAN: 2654209), VlanType: FD_VLAN, Vlan-Id: 116, SMac: 0x3e2593f0eded, DMac:0x0022bdf819ff, SIP: 192.168.23.11, DIP: 192.168.21.11, SPort: 0, DPort: 0, Src Intf: Ethernet1/19, Proto: 1, PktLen: 126
Op de switch van het blad zijn, net als bij de vorige uitgave, talrijke ICMP-pakjes uit EP 192.168.23.11 naar 192.168.21.11 weggelaten.
Het contract_parser hulpmiddel zal helpen om het daadwerkelijke beleid te verifiëren dat op VRF wordt toegepast waar de Endpoints met worden geassocieerd:
leaf5# contract_parser.py --vrf Prod1:VRF1
Key:
[prio:RuleId] [vrf:{str}] action protocol src-epg [src-l4] dst-epg [dst-l4] [flags][contract:{str}] [hit=count]
[7:5159] [vrf:Prod1:VRF1] permit ip tcp tn-Prod1/ap-App1/epg-App(32771) eq 5000 tn-Prod1/ap-App1/epg-Web(32772) [contract:uni/tn-Prod1/brc-web_to_app] [hit=0]
[7:5156] [vrf:Prod1:VRF1] permit ip tcp tn-Prod1/ap-App1/epg-Web(32772) tn-Prod1/ap-App1/epg-App(32771) eq 5000 [contract:uni/tn-Prod1/brc-web_to_app] [hit=0]
[16:5152] [vrf:Prod1:VRF1] permit any epg:any tn-Prod1/bd-Web(49154) [contract:implicit] [hit=0]
[16:5154] [vrf:Prod1:VRF1] permit arp epg:any epg:any [contract:implicit] [hit=0]
[21:5155] [vrf:Prod1:VRF1] deny,log any epg:any epg:any [contract:implicit] [hit=38,+10]
[22:5153] [vrf:Prod1:VRF1] deny,log any epg:any pfx-0.0.0.0/0(15) [contract:implicit] [hit=0]
Dit kan ook worden geverifieerd aan de hand van de zoneringsregel die in het blad is geprogrammeerd en het beleid dat door de switch wordt gehandhaafd.
leaf5# show zoning-rule scope 2654209
+---------+--------+--------+----------+----------------+---------+----------+------------+----------+-------------------------+
| Rule ID | SrcEPG | DstEPG | FilterID | Dir | operSt | Scope | Name | Action | Priority |
+---------+--------+--------+----------+----------------+---------+----------+------------+----------+-------------------------+
| 5155 | 0 | 0 | implicit | uni-dir | enabled | 2654209 | | deny,log | any_any_any(21) |
| 5159 | 32771 | 32772 | 411 | uni-dir-ignore | enabled | 2654209 | web_to_app | permit | fully_qual(7) |
| 5156 | 32772 | 32771 | 410 | bi-dir | enabled | 2654209 | web_to_app | permit | fully_qual(7) |
+---------+--------+--------+----------+----------------+---------+----------+------------+----------+-------------------------+
Zoals reeds gezien door het hulpmiddel van het Zichtbaarheid & van het Problemen oplossen, het contract_parser hulpmiddel, en de zoneringsregels, bevestigt de output dat er geen contract tussen de bron en bestemming EPGs in het oplossen van problemen is. Het is gemakkelijk om te veronderstellen dat de gelaten vallen pakketten impliciet ontkennen regel 5155 aanpassen.
ELAM Capture levert een ASIC-rapport dat wordt gebruikt om te controleren of er gegevens worden doorgestuurd, wat in het geval van een gedropt pakket de reden voor het uitzetten aangeeft. Wanneer de reden van een daling een beleidsdaling is, zoals in dit scenario, zal de output van ELAM vangen als het volgende kijken.
Houd er rekening mee dat de details van het opzetten van een ELAM-opname niet in dit hoofdstuk worden besproken. Raadpleeg het hoofdstuk "Intra-Fabric Forwarding".
leaf5# vsh_lc
module-1# debug platform internal tah elam asic 0
module-1(DBG-elam)# trigger init in-select 6 out-select 0
module-1(DBG-elam)# trigger reset
module-1(DBG-elam-insel6)# set outer ipv4 src_ip 192.168.21.11 dst_ip 192.168.23.11
module-1(DBG-elam-insel6)# start
module-1(DBG-elam-insel6)# status
ELAM STATUS
===========
Asic 0 Slice 0 Status Triggered
Asic 0 Slice 1 Status Armed
module-1(DBG-elam-insel6)# ereport | grep reason
RW drop reason : SECURITY_GROUP_DENY
LU drop reason : SECURITY_GROUP_DENY
pkt.lu_drop_reason: 0x2D
Uit het ELAM-rapport hierboven blijkt duidelijk dat het pakket is gevallen als gevolg van een beleidsdaling: 'SECURITY_GROUP_DENY'
Hetzelfde resultaat van de ELAM-opname kan via de ELAM Assistant-app op de APIC GUI worden getoond.
Typisch, zal de gebruiker zowel bron als bestemmingsdetails voor de stroom van belang vormen. In dit voorbeeld, wordt src IP gebruikt om verkeer naar eindpunt in bestemming EPG te vangen dat geen contractverhouding aan de bron EPG heeft.
Er zijn drie uitvoerniveaus die kunnen worden bekeken met ELAM Assistant. Dit zijn Express, Detail en Raw.
Onder het Express Resultaat geeft de Drop Code reden SECURITY_GROUP_DENY aan dat de daling het gevolg was van een contracthit.
Er zijn twee soorten beleidshandhaving beschikbaar voor EPG's in een VRF met een voorkeursgroep voor een contract:
De voorkeursgroepfunctie van het contract maakt een betere controle van de communicatie tussen EPG’s in een VRF mogelijk. Als de meeste EPG's in de VRF open communicatie zouden moeten hebben, maar een paar slechts beperkte communicatie met de andere EPG's zouden moeten hebben, stel een combinatie van een contract voorkeursgroep en contracten met filters in om de communicatie tussen EPG's nauwkeuriger te controleren.
EPG's die van de voorkeursgroep zijn uitgesloten, kunnen alleen met andere EPG's communiceren als er een contract is om de standaardregel voor bron-willekeurige-bestemming-ontkennen te negeren.
In wezen zijn voorkeursgroepen contracten een omgekeerde groep van reguliere contracten. Voor reguliere contracten zijn expliciete regels voor de zonering van vergunningen geprogrammeerd met een impliciete ontkennen-regel met de VRF-scope. Voor voorkeursgroepen is een impliciete "PERMIT"-zoning-regel geprogrammeerd met de hoogste numerieke prioriteitswaarde en zijn specifieke "DENY" zoning-regels geprogrammeerd om verkeer van EPG's die geen voorkeursgroepleden zijn, te verbieden. Dientengevolge, ontkennen de regels eerst worden geëvalueerd en als de stroom niet door deze regels wordt aangepast, dan wordt de stroom impliciet toegestaan.
Er is altijd een paar expliciete ontkennen zoning-regels voor elke EPG buiten de voorkeursgroep:
De onderstaande afbeelding toont een logische topologie waarin EPGs App, App2 en App3 allemaal zijn geconfigureerd als voorkeursgroep leden.
VM-App maakt deel uit van EPG-App en VM-App2 maakt deel uit van EPG-App2. Zowel App als App2 EPG moeten deel uitmaken van de voorkeursgroep en dus vrij communiceren.
VM-App initieert een verkeersstroom op TCP-poort 6000 naar VM-App2. Zowel EPG-App als EPG-App2 zijn voorkeursleden van de groep als onderdeel van VRF1. VM-App2 ontvangt nooit pakketten op TCP-poort 6000.
1. Zoek de pcTag van EPG APP en zijn VRF VNID/Scope
EPG- en VRF-pc-tags
2. Controleer contractprogrammering met contract_parser.py op het toegangsblad
Gebruik contract_parser.py en/of de opdracht 'show zoning-rule' en specificeer de VRF
fab3-leaf8# show zoning-rule scope 2654209
+---------+--------+--------+----------+---------+---------+---------+------+----------+----------------------------+
| Rule ID | SrcEPG | DstEPG | FilterID | Dir | operSt | Scope | Name | Action | Priority |
+---------+--------+--------+----------+---------+---------+---------+------+----------+----------------------------+
| 4165 | 0 | 0 | implicit | uni-dir | enabled | 2654209 | | permit | grp_any_any_any_permit(20) |
| 4160 | 0 | 0 | implarp | uni-dir | enabled | 2654209 | | permit | any_any_filter(17) |
| 4164 | 0 | 15 | implicit | uni-dir | enabled | 2654209 | | deny,log | grp_any_dest_any_deny(19) |
| 4176 | 0 | 16386 | implicit | uni-dir | enabled | 2654209 | | permit | any_dest_any(16) |
| 4130 | 32770 | 0 | implicit | uni-dir | enabled | 2654209 | | deny,log | grp_src_any_any_deny(18) |
| 4175 | 49159 | 0 | implicit | uni-dir | enabled | 2654209 | | deny,log | grp_src_any_any_deny(18) |
| 4129 | 0 | 49159 | implicit | uni-dir | enabled | 2654209 | | deny,log | grp_any_dest_any_deny(19) |
| 4177 | 32778 | 0 | implicit | uni-dir | enabled | 2654209 | | deny,log | grp_src_any_any_deny(18) |
| 4128 | 0 | 32778 | implicit | uni-dir | enabled | 2654209 | | deny,log | grp_any_dest_any_deny(19) |
| 4178 | 32775 | 0 | implicit | uni-dir | enabled | 2654209 | | deny,log | grp_src_any_any_deny(18) |
| 4179 | 0 | 32775 | implicit | uni-dir | enabled | 2654209 | | deny,log | grp_any_dest_any_deny(19) |
+---------+--------+--------+----------+---------+---------+---------+------+----------+----------------------------+
fab3-leaf8# contract_parser.py --vrf Prod1:VRF1
Key:
[prio:RuleId] [vrf:{str}] action protocol src-epg [src-l4] dst-epg [dst-l4] [flags][contract:{str}] [hit=count]
[16:4176] [vrf:Prod1:VRF1] permit any epg:any tn-Prod1/bd-App(16386) [contract:implicit] [hit=0]
[16:4160] [vrf:Prod1:VRF1] permit arp epg:any epg:any [contract:implicit] [hit=0]
[18:4130] [vrf:Prod1:VRF1] deny,log any tn-Prod1/vrf-VRF1(32770) epg:any [contract:implicit] [hit=?]
[18:4178] [vrf:Prod1:VRF1] deny,log any epg:32775 epg:any [contract:implicit] [hit=?]
[18:4177] [vrf:Prod1:VRF1] deny,log any epg:32778 epg:any [contract:implicit] [hit=?]
[18:4175] [vrf:Prod1:VRF1] deny,log any epg:49159 epg:any [contract:implicit] [hit=?]
[19:4164] [vrf:Prod1:VRF1] deny,log any epg:any pfx-0.0.0.0/0(15) [contract:implicit] [hit=0]
[19:4179] [vrf:Prod1:VRF1] deny,log any epg:any epg:32775 [contract:implicit] [hit=?]
[19:4128] [vrf:Prod1:VRF1] deny,log any epg:any epg:32778 [contract:implicit] [hit=?]
[19:4129] [vrf:Prod1:VRF1] deny,log any epg:any epg:49159 [contract:implicit] [hit=?]
[20:4165] [vrf:Prod1:VRF1] permit any epg:any epg:any [contract:implicit] [hit=65]
Na onderzoek van de bovenstaande output wordt de impliciete vermelding van de vergunning — regelID 4165 — met de hoogste prioriteit van 20, in acht genomen. Deze impliciete vergunningsregel zal veroorzaken dat alle verkeersstromen worden toegestaan tenzij er een expliciete ontkennen regel met een lagere prioriteit is die de verkeersstroom verbiedt.
Daarnaast zijn er twee expliciete ontkenningsregels voor pcTag 32775, de pcTag van EPG App2. Deze twee expliciete ontkennen zoning-regels verkeer van elke EPG naar EPG App2, en vice versa. Deze regels hebben prioriteit 18 en 19, dus ze zullen voorrang hebben op de standaard-vergunningsregel.
De conclusie is dat EPG App2 geen voorkeurlid van de Groep is aangezien de expliciete ontkenningsregels worden nageleefd.
3. Controleer de configuratie van de voorkeursgroep van EPG-leden
Navigeer de APIC GUI en controleer de configuratie van de EPG App2 en de voorkeursgroep van de EPG App, In het volgende cijfer, zie EPG App2 niet als Voorkeursgroep Lid wordt gevormd.
EPG App2 — Uitgesloten instellingen voorkeursleden
EPG App — voorkeursgroep Ledeninstelling inbegrepen
4. Stel EPG App2 in als voorkeurslid van de groep
Door de configuratie van App2 EPG te wijzigen kan de voorkeursgroep vrij communiceren als deel van de voorkeursgroep.
EPG App2 — Preferred Group Member setting inbegrepen
5. Controleer contractprogrammering opnieuw met behulp van contract_parser.py op het blad waar de src-EP zich bevindt
Gebruik contract_parser.py opnieuw en specificeer de VRF naam om te verifiëren of de expliciete ontkennen regels voor EPG App2 nu zijn verdwenen.
fab3-leaf8# contract_parser.py --vrf Prod1:VRF1
Key:
[prio:RuleId] [vrf:{str}] action protocol src-epg [src-l4] dst-epg [dst-l4] [flags][contract:{str}] [hit=count]
[16:4176] [vrf:Prod1:VRF1] permit any epg:any tn-Prod1/bd-App(16386) [contract:implicit] [hit=0]
[16:4160] [vrf:Prod1:VRF1] permit arp epg:any epg:any [contract:implicit] [hit=0]
[18:4175] [vrf:Prod1:VRF1] deny,log any epg:16390 epg:any [contract:implicit] [hit=0]
[18:4167] [vrf:Prod1:VRF1] deny,log any epg:23 epg:any [contract:implicit] [hit=0]
[18:4156] [vrf:Prod1:VRF1] deny,log any tn-Prod1/vrf-VRF1(32770) epg:any [contract:implicit] [hit=0]
[18:4168] [vrf:Prod1:VRF1] deny,log any epg:49159 epg:any [contract:implicit] [hit=0]
[19:4164] [vrf:Prod1:VRF1] deny,log any epg:any pfx-0.0.0.0/0(15) [contract:implicit] [hit=0]
[19:4169] [vrf:Prod1:VRF1] deny,log any epg:any epg:16390 [contract:implicit] [hit=0]
[19:4159] [vrf:Prod1:VRF1] deny,log any epg:any epg:23 [contract:implicit] [hit=0]
[19:4174] [vrf:Prod1:VRF1] deny,log any epg:any epg:49159 [contract:implicit] [hit=0]
[20:4165] [vrf:Prod1:VRF1] permit any epg:any epg:any [contract:implicit] [hit=65]
De expliciete ontkenningsregels voor EPG App2 en zijn pcTag 32775 worden niet langer in de bovenstaande output waargenomen. Dit betekent dat het verkeer tussen EP's in EPG App en EPG App2 nu gelijk zal zijn aan de impliciete vergunningsregel — regelId 4165 — met de hoogste prioriteit van 20.
Bij het configureren van contracten tussen een of meerdere EPG’s kunnen contracten worden geconfigureerd als een verbruikte of geleverde relatie. Wanneer het aantal EPG's groeit, kan dat ook de hoeveelheid contractuele relaties tussen hen. In sommige veel voorkomende gevallen moeten alle EPG’s verkeersstromen uitwisselen met een andere specifieke EPG. Een dergelijk geval zou een EPG kunnen zijn met EP's die diensten verlenen die door alle andere EPG's binnen dezelfde VRF moeten worden verbruikt (bijvoorbeeld NTP of DNS). vzAny zorgt voor lagere operationele overheadkosten bij het configureren van contractrelaties tussen alle EPG’s en specifieke EPG’s die diensten leveren die door alle andere EPG’s moeten worden verbruikt. Bovendien staat vzAny een veel efficiënter gebruik van de CAM van het Veiligheidsbeleid op bladregels toe aangezien slechts 2 zoning-switches voor elke vzAny contractverhouding worden toegevoegd.
De onderstaande afbeelding beschrijft een dergelijke gebruikscase waarbij VM-Web en VM-App in EPGs Web en App respectievelijk NTP-services van VM-NTP in EPG-NTP moeten gebruiken. In plaats van het configureren van een geleverd contract op EPG NTP, en vervolgens het hebben van hetzelfde contract als een verbruikt contract op EPGs Web en App, staat vzAny elke EPG in VRF Prod toe:VRF1 om NTP-services te verbruiken van EPG NTP.
vzAny — Any EPG met VRF-proxy:VRF1 kan NTP-services van EPG NTP gebruiken
Overweeg een scenario waarin druppels worden waargenomen tussen EPG's die de NTP-diensten gebruiken wanneer er geen contract tussen hen is.
1. Zoek de pcTag van EPG NTP en zijn VRF VNID/Scope op
'huurder > Operationeel > Resource ID's > EPG's' maakt het mogelijk pcTag en scope te vinden
EPG NTP pcTag en de VRF-video/bereik ervan
2. Controleer of een contract is geconfigureerd als een vzAny verbruikt contract als onderdeel van de VRF
Navigeer naar de VRF en controleer of er een verbruikt contract is geconfigureerd als vzAny onder de 'EPG Collection for VRF'.
Contract geconfigureerd als een verbruikt vzAny contract op de VRF
3. Controleer of hetzelfde contract wordt toegepast als een geleverd contract op EPG NTP
Om een contractrelatie vast te stellen, moet hetzelfde contract worden toegepast als een verstrekt contract op EPG NTP dat NTP-diensten verleent aan de andere EPG’s in zijn VRF.
4. Zones-regel verificatie op indringingsblad met contract_parser.py of 'toon zoning-regel'
Het toegangsblad moet 2 zoningregels hebben om bidirectionele verkeersstromen mogelijk te maken (als het contractonderwerp is ingesteld om beide richtingen toe te staan) tussen elke EPG en EPG NTP. 'Elke EPG' wordt aangeduid als pcTag 0 in zoning-rule programmeren.
Het gebruik van contract_parser.py of de 'show zoning-rule' commando's op het toegangsblad terwijl het specificeren van de VRF maakt het mogelijk om te verzekeren dat de zoning-regel geprogrammeerd is.
Gebruik contract_parser.py en 'toon zoning-rule' om de aanwezigheid van de vzAny gebaseerde zoning-regels te controleren.
Hier zijn twee soorten regels duidelijk:
Gezien het feit dat de laagste prioriteit voorrang heeft, zullen alle EPG's van de VRF toegang hebben tot NTP EPG.
fab3-leaf8# contract_parser.py --vrf Prod1:VRF
Key:
[prio:RuleId] [vrf:{str}] action protocol src-epg [src-l4] dst-epg [dst-l4] [flags][contract:{str}] [hit=count]
[13:4156] [vrf:Prod1:VRF1] permit ip tcp tn-Prod1/ap-Services/epg-NTP(49161) eq 123 epg:any [contract:uni/tn-Prod1/brc-any_to_ntp] [hit=0]
[14:4168] [vrf:Prod1:VRF1] permit ip tcp epg:any tn-Prod1/ap-Services/epg-NTP(49161) eq 123 [contract:uni/tn-Prod1/brc-any_to_ntp] [hit=0]
[16:4176] [vrf:Prod1:VRF1] permit any epg:any tn-Prod1/bd-App(16386) [contract:implicit] [hit=0]
[16:4174] [vrf:Prod1:VRF1] permit any epg:any tn-Prod1/bd-Services(32776) [contract:implicit] [hit=0]
[16:4160] [vrf:Prod1:VRF1] permit arp epg:any epg:any [contract:implicit] [hit=0]
[21:4165] [vrf:Prod1:VRF1] deny,log any epg:any epg:any [contract:implicit] [hit=65]
[22:4164] [vrf:Prod1:VRF1] deny,log any epg:any pfx-0.0.0.0/0(15) [contract:implicit] [hit=0]
fab3-leaf8# show zoning-rule scope 2654209
+---------+--------+--------+----------+---------+---------+---------+------------+----------+----------------------+
| Rule ID | SrcEPG | DstEPG | FilterID | Dir | operSt | Scope | Name | Action | Priority |
+---------+--------+--------+----------+---------+---------+---------+------------+----------+----------------------+
| 4165 | 0 | 0 | implicit | uni-dir | enabled | 2654209 | | deny,log | any_any_any(21) |
| 4160 | 0 | 0 | implarp | uni-dir | enabled | 2654209 | | permit | any_any_filter(17) |
| 4164 | 0 | 15 | implicit | uni-dir | enabled | 2654209 | | deny,log | any_vrf_any_deny(22) |
| 4176 | 0 | 16386 | implicit | uni-dir | enabled | 2654209 | | permit | any_dest_any(16) |
| 4174 | 0 | 32776 | implicit | uni-dir | enabled | 2654209 | | permit | any_dest_any(16) |
| 4168 | 0 | 49161 | 424 | uni-dir | enabled | 2654209 | any_to_ntp | permit | any_dest_filter(14) |
| 4156 | 49161 | 0 | 425 | uni-dir | enabled | 2654209 | any_to_ntp | permit | src_any_filter(13) |
+---------+--------+--------+----------+---------+---------+---------+------------+----------+----------------------+
Shared Layer 3 Out is een configuratie die het mogelijk maakt om een L3Out in één VRF te hebben die bepaalde diensten (externe toegang) biedt en één of meer andere VRF’s verbruiken dit L3Out. Meer details over gedeelde L3Out kunnen worden gevonden in het hoofdstuk "Externe routing".
Bij het doen van gedeelde L3Out wordt aanbevolen om de aanbieder van het contract te hebben die de gedeelde L3Out en de EPG die de consument van het contract zijn. Dit scenario wordt in deze paragraaf toegelicht.
Het is niet aan te raden om het tegenovergestelde te doen, namelijk L3Out die een dienst van een EPG gebruikt. De reden hiervoor heeft te maken met schaalbaarheid, aangezien voor gedeelde diensten de zoneringsregels alleen op VRF voor consumenten worden geïnstalleerd. De beginselen van consumptie en aanbod geven aan waar verkeersstromen worden geïnitieerd. Bij de handhaving van het standaardtoegangsbeleid betekent dit dat de handhaving van het beleid zal worden toegepast aan de kant van de consument en meer specifiek op het indringblad (niet-grensblad). Voor het indringenblad om beleid af te dwingen vereist het de pcTag van de bestemming. In dit scenario is de bestemming de externe EPG pcTag. Het indringingsblad voert dus de beleidshandhaving uit en stuurt de pakketten door naar het grensblad. Het grensblad ontvangt het pakket op zijn fabric link die een route lookup (LPM) uitvoert en het pakket doorstuurt naar de nabijheid voor de bestemming prefix.
Het grensblad voert echter GEEN beleidshandhaving uit bij het verzenden van verkeer naar de bestemming EP en doet dit ook niet op de terugstroom van verkeer naar de bron EP.
Als gevolg daarvan heeft alleen de Policy CAM van het indringende niet-BL-blad ingangen geïnstalleerd (in de VRF van de consument) en de Policy CAM van BL niet beïnvloed.
1. Controleer EPG pcTag en VRF VNID/Scope voor de consument EPG
Met gedeelde L3Out, zijn de zoning-regels slechts geïnstalleerd in de consument VRF. De provider moet een wereldwijde pcTag (onder 16k) hebben waarmee deze pcTag kan worden gebruikt in alle VRF’s voor consumenten. In ons scenario is de provider de externe EPG en heeft hij een wereldwijde pcTag. De consument EPG zal een lokale pcTag zoals gebruikelijk hebben.
pcTag van de consument
2. Controleer pcTag en VRF VNID/Scope voor de provider L3Out EPG
Zoals opgemerkt in Stap 1, heeft de provider L3Out EPG een globale bereik pcTag als prefixes van L3Out die worden uitgelekt in de consument VRF. Als gevolg daarvan is de L3Out EPG pcTag vereist om niet te overlappen met pcTags in de VRF voor consumenten, en dus is het binnen het wereldwijde pcTag bereik.
pcTag van externe EPG van de leverancier
3. Controleer of de EPG van de consument een geïmporteerd huurder-scoped contract of een wereldwijd contract heeft geconfigureerd
De consument EPG NTP met subnetverbinding gedefinieerd onder de EPG/BD verbruikt het 'huurder' of 'globaal' scoped contract
Door EPG verbruikte opdracht
4. Controleer of de BD van de consument EPG een subnetverbinding heeft geconfigureerd met het bereik ingesteld op 'Gedeeld tussen VRF's'
Het subnet van de EPG wordt geconfigureerd onder het brugdomein, maar moet de 'gedeelde VRF'-vlag hebben (om routed leking toe te staan) en de 'geadverteerde extern' vlag (om te kunnen adverteren naar L3Out)
5. Controleer of de provider L3Out EPG een geïmporteerd huurder-scoped contract of een wereldwijd contract heeft geconfigureerd
De L3Out EPG moet een huurder-scoped contract of een globaal contract als een beschikbaar contract hebben.
Contract op provider L3Out
6. Controleer of de provider L3Out EPG een subnetverbinding heeft geconfigureerd met het benodigde bereik gecontroleerd
De provider L3Out EPG moet het te lekken prefix hebben geconfigureerd met de volgende scènes:
Voor meer details over subnetvlag in L3Out EPG verwijzen naar het hoofdstuk "Extern doorsturen".
Externe EPG-subnetinstellingen
Externe EPG-subnetinstellingen uitgebreid
7. Controleer de pcTag van L3Out EPG-subnet op de niet-BL voor de VRF voor consumenten
Wanneer het verkeer dat bestemd is voor het externe EPG-subnettoegang de niet-BL ingaat, wordt een raadpleging uitgevoerd tegen het doelprefix om de pcTag te bepalen. Dit kan worden gecontroleerd met de volgende opdracht op de niet-BL.
Let op dat deze output valt onder het toepassingsgebied van de VNI 2818048, de VRF-VNID voor consumenten. Door te kijken naar de tabel kan de consument de pcTag van de bestemming vinden, ook al zit deze niet in dezelfde VRF.
fab3-leaf8# vsh -c 'show system internal policy-mgr prefix' | egrep 'Vrf-Vni|==|common:default'
Vrf-Vni VRF-Id Table-Id Table-State VRF-Name Addr Class Shared Remote Complete
======= ====== =========== ======= ============================ ================================= ====== ====== ====== ========
2818048 19 0x13 Up common:default 0.0.0.0/0 15 False False False
2818048 19 0x80000013 Up common:default ::/0 15 False False False
2818048 19 0x13 Up common:default 172.16.10.0/24 25 True True False
De bovenstaande output laat de combinatie zien van het L3Out EPG-subnet en zijn wereldwijde pcTag 25.
8. Controleer de geprogrammeerde zoningregels op de niet-BL voor de VRF voor de consument
Gebruik 'contract_parser.py' of de 'show zoning-rule' opdracht en specificeer de VRF.
Onder commando outputs display twee zoning-regels zijn geïnstalleerd om verkeer van de consument EPG lokale pcTag 16410 naar de L3Out EPG globale pcTag 25 toe te staan. Dit is in het scope 2818048, dat is de scope van de consument VRF.
fab3-leaf8# show zoning-rule scope 2818048
+---------+--------+--------+----------+----------------+---------+---------+-----------------+----------+-----------------------+
| Rule ID | SrcEPG | DstEPG | FilterID | Dir | operSt | Scope | Name | Action | Priority |
+---------+--------+--------+----------+----------------+---------+---------+-----------------+----------+-----------------------+
| 4174 | 0 | 0 | implarp | uni-dir | enabled | 2818048 | | permit | any_any_filter(17) |
| 4168 | 0 | 15 | implicit | uni-dir | enabled | 2818048 | | deny,log | any_vrf_any_deny(22) |
| 4167 | 0 | 32789 | implicit | uni-dir | enabled | 2818048 | | permit | any_dest_any(16) |
| 4159 | 0 | 0 | implicit | uni-dir | enabled | 2818048 | | deny,log | any_any_any(21) |
| 4169 | 25 | 0 | implicit | uni-dir | enabled | 2818048 | | deny,log | shsrc_any_any_deny(12)|
| 4156 | 25 | 16410 | 425 | uni-dir-ignore | enabled | 2818048 | external_to_ntp | permit | fully_qual(7) |
| 4131 | 16410 | 25 | 424 | bi-dir | enabled | 2818048 | external_to_ntp | permit | fully_qual(7) |
+---------+--------+--------+----------+----------------+---------+---------+-----------------+----------+-----------------------+
fab3-leaf8# contract_parser.py --vrf common:default
Key:
[prio:RuleId] [vrf:{str}] action protocol src-epg [src-l4] dst-epg [dst-l4] [flags][contract:{str}] [hit=count]
[7:4131] [vrf:common:default] permit ip tcp tn-Prod1/ap-Services/epg-NTP(16410) tn-Prod1/l3out-L3Out1/instP-extEpg(25) eq 123 [contract:uni/tn-Prod1/brc-external_to_ntp] [hit=0]
[7:4156] [vrf:common:default] permit ip tcp tn-Prod1/l3out-L3Out1/instP-extEpg(25) eq 123 tn-Prod1/ap-Services/epg-NTP(16410) [contract:uni/tn-Prod1/brc-external_to_ntp] [hit=0]
[12:4169] [vrf:common:default] deny,log any tn-Prod1/l3out-L3Out1/instP-extEpg(25) epg:any [contract:implicit] [hit=0]
[16:4167] [vrf:common:default] permit any epg:any tn-Prod1/bd-Services(32789) [contract:implicit] [hit=0]
[16:4174] [vrf:common:default] permit arp epg:any epg:any [contract:implicit] [hit=0]
[21:4159] [vrf:common:default] deny,log any epg:any epg:any [contract:implicit] [hit=0]
[22:4168] [vrf:common:default] deny,log any epg:any pfx-0.0.0.0/0(15) [contract:implicit] [hit=0]
9. Controleer de geprogrammeerde zoningregels op de BL voor de VRF-aanbieder
Gebruik 'contract_parser.py' of de 'show zoning-rule' opdracht en specificeer de VRF. De volgende opdrachtoutput laat zien dat er GEEN specifieke zoningregels zijn in de provider VRF zoals meerdere malen eerder geschetst.
Het is in het toepassingsgebied 2719752 dat de reikwijdte is van aanbieder VRF.
border-leaf# show zoning-rule scope 2719752
+---------+--------+--------+----------+----------------+---------+---------+--------------+----------+----------------------+
| Rule ID | SrcEPG | DstEPG | FilterID | Dir | operSt | Scope | Name | Action | Priority |
+---------+--------+--------+----------+----------------+---------+---------+--------------+----------+----------------------+
| 4134 | 10937 | 24 | default | uni-dir-ignore | enabled | 2719752 | vrf1_to_vrf2 | permit | src_dst_any(9) |
| 4135 | 24 | 10937 | default | bi-dir | enabled | 2719752 | vrf1_to_vrf2 | permit | src_dst_any(9) |
| 4131 | 0 | 0 | implicit | uni-dir | enabled | 2719752 | | deny,log | any_any_any(21) |
| 4130 | 0 | 0 | implarp | uni-dir | enabled | 2719752 | | permit | any_any_filter(17) |
| 4132 | 0 | 15 | implicit | uni-dir | enabled | 2719752 | | deny,log | any_vrf_any_deny(22) |
+---------+--------+--------+----------+----------------+---------+---------+--------------+----------+----------------------+
border-leaf# contract_parser.py --vrf Prod1:VRF3
Key:
[prio:RuleId] [vrf:{str}] action protocol src-epg [src-l4] dst-epg [dst-l4] [flags][contract:{str}] [hit=count]
[9:4134] [vrf:Prod1:VRF3] permit any tn-Prod1/l3out-L3Out1/instP-extEpg2(10937) tn-Prod1/l3out-L3Out2/instP-extEpg2(24) [contract:uni/tn-Prod1/brc-vrf1_to_vrf2] [hit=0]
[9:4135] [vrf:Prod1:VRF3] permit any tn-Prod1/l3out-L3Out2/instP-extEpg2(24) tn-Prod1/l3out-L3Out1/instP-extEpg2(10937) [contract:uni/tn-Prod1/brc-vrf1_to_vrf2] [hit=0]
[16:4130] [vrf:Prod1:VRF3] permit arp epg:any epg:any [contract:implicit] [hit=0]
[21:4131] [vrf:Prod1:VRF3] deny,log any epg:any epg:any [contract:implicit] [hit=0]
[22:4132] [vrf:Prod1:VRF3] deny,log any epg:any pfx-0.0.0.0/0(15) [contract:implicit] [hit=0]
Revisie | Publicatiedatum | Opmerkingen |
---|---|---|
1.0 |
05-Aug-2022 |
Eerste vrijgave |