Skip to main content

Cisco ACI - Forwarding inside the Fabric


One of the most intriguing (of course, if you get the hang of it) or depressing concepts of Cisco ACI is how the traffic forwarding takes place inside Cisco ACI.





Let's start with an endpoint sending the frame to the connected leaf:





  1. The leaf checks the destination MAC address of the frame. The leaf will do a layer 2 lookup to find the destination MAC. If the leaf knows the location of the destination MAC (either local to the leaf or some other leaf), it will determine the destination's EPG. Depending on the EPG, it would determine if a contract is required to allow the frame to forward.. If yes, it would look into the L3 and L4 contents of the packet to determine if the contract exists. If it does, allow the traffic, if not drop.
  2. If the frame has the destination MAC address of that of the leaf, it will be routed. This will be the standard destination IP based routing. If a route exists for the destination in the VRF of the source, it is routed. If not, it will be dropped.




With regards to the routing, the leaf always does a /32 lookup to determine the EPG of the destination, which may be the same EPG as the source, in which it will forward the packet.
[
Here, if the destination is local to the leaf -- it would be directly forwarded
if the destination is to another leaf, it would be VXLAN encapsulated and sent to the destination leaf TEP
]

If the /32 lookup fails, the leaf needs to check if:





  1. the destination IP is a local route -- i.e. learned from within the source's VRF OR leaked from another VRF
  2. the destination IP is remote -- i.e. learned from a L3 Out




Case 1:





If the destination address is a local route, the leaf will send it to the Proxy. The VXLAN header in this case will have the SP (source policy) set. This ensures that policy has not been already applied on this packet.
If the spine knows the destination, it will forward the packet and the policy will be applied at the egress leaf





Case 2:





If the destination is a remote route, it will determine the destination EPG based on the destination IP address, apply policy and if the traffic is allowed, it will forward it to the nearest external router.
i. The router may be locally attached (the source endpoint is connected to the border leaf) in which case the traffic will be locally forwarded.
ii. The router may be attached to another leaf (the source endpoint is not on the border leaf) in which case the packet will be VXLAN encapsulated and forwarded to the TEP of the border leaf


Comments

Popular posts from this blog

Checkpoint - Exporting Objects in CSV format

Be it a Network Operations Manager, Security Architect or a Security Auditor, the people up the hierarchy always harangue the Security Engineers to compile the list of firewall objects or rules or policies or the traffic statistics and so on.. This can turn out to be quite hectic especially if there are no built in features to systematically provide the output in a "layman-readable" format. Come, Checkpoint's "Object Explorer..."  which not only provides the output in the "layman-readable" format, but also provides in-built filtering mechanisms, thereby ensuring that the Security Engineer doesn't have to rely on Google for building his scarce Microsoft Excel data filtering skills. The following screenshots will show how easy it is, with Checkpoint R80.10 to generate the firewall configuration inventory. On the SmartConsole Unified Portal, navigate to Menu >> Open Object Explorer... Select the Categories you wish to see in your output: Click o

MITRE ATT&CK - Kerberos Vulnerabilities and Security

From the previous post, the summary of Kerberos authentication process is as below: For the initial authentication, the user’s client machine sends a request to the KDC  Authentication Service (AS) . The request includes details like the user’s username, and the date and time. All information except the username is encrypted using the hash of the user’s password. The KDC AS uses the username to look up its copy of the user’s password hash and uses it to decrypt the rest of the request. If the decryption is successful, that means the client used the correct password hash and the user has successfully authenticated. Once the user is authenticated, the KDC AS sends the user’s client a  ticket granting ticket   (TGT) . The TGT includes a unique session key and a timestamp that specifies how long that session is valid (normally 8 or 10 hours). Importantly, before sending the TGT, the KDC encrypts it using the password hash for a special account, the  KRBTGT account.  That password hash is s

AWS Workspaces - Unhide C drive

AWS Workspaces Windows 10 has C:\ drive hidden by default.. To unhide it, locate the following directory in Windows Registry (regedit), HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\ Explorer Dword Value - NoDrives. By default it is set to Hexidecimal value of 4.. Change it to Hexidecimal value of 0 Restart the Workspace and C:\ drive should be visible.