Skip to content

Commit 1bab211

Browse files
Overview article for ACLs
1 parent 4bdbe7a commit 1bab211

File tree

1 file changed

+57
-0
lines changed

1 file changed

+57
-0
lines changed
Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
---
2+
title: Azure Operator Nexus Access Control Lists Overview
3+
description: Get an overview of Access Control Lists for Azure Operator Nexus.
4+
author: joemarshallmsft
5+
ms.author: joemarshall
6+
ms.service: azure-operator-nexus
7+
ms.topic: conceptual
8+
ms.date: 09/02/2024
9+
ms.custom: template-concept
10+
---
11+
12+
# Access Control Lists Overview
13+
14+
An Access Control List (ACL) is a list of rules that control the inbound and outbound flow of packets into an interface. The interface can be an Ethernet interface, a sub interface, a port channel interface, or the switch control plane itself.
15+
16+
An ACL that is applied to incoming packets is called an **Ingress ACL**. An ACL that is applied to outgoing packets is called an **Egress ACL**.
17+
18+
An ACL has a Traffic-Policy definition including a set of match criteria and respective actions. The Traffic-Policy can match various conditions and perform actions such as count, drop, log, or police.
19+
20+
The available match criteria depend on the ACL type:
21+
22+
- IPv4 ACLs can match IPv4 source or destination addresses, with L4 modifiers including protocol, port number, and DSCP value.
23+
24+
- IPv6 ACLs can match IPv6 source or destination addresses, with L4 modifiers including protocol, port number.
25+
26+
- Standard IPv4 ACLs can match only on source IPv4 address.
27+
28+
- Standard IPv6 ACLs can match only on source IPv6 address.
29+
30+
ACLs can be either static or dynamic. Static ACLs are processed in order, beginning with the first rule and proceeding until a match is encountered. Dynamic ACLs use the payload keyword to turn an ACL into a group like PortGroups, VlanGroups, IPGroups for use in other ACLs. A dynamic ACL provides the user with the ability to enable or disable ACLs based on access session requirements.
31+
32+
ACLs can be applied to Network to Network interconnect (NNI) or External Network resources. An NNI is a child resource of a Network Fabric. ACLs can be created and linked to an NNI before the Network Fabric is provisioned. ACLs can be updated or deleted after the Network Fabric is deprovisioned.
33+
34+
## Traffic Policy
35+
36+
A traffic policy is a set of rules that control the flow of packets in and out of a network interface. This section explains the match criteria and actions available for distinct types of network resources.
37+
38+
- **Match Configuration**: The conditions that are used to match packets. You can match on various attributes, including:
39+
- IP address
40+
- Transport protocol
41+
- Port
42+
- VLAN ID
43+
- DSCP
44+
- Ethertype
45+
- IP fragmentation
46+
- TTL
47+
48+
Each match criterion has a name, a sequence number, an IP address type, and a list of match conditions. A packet matches the configuration if it meets all the criteria. For example, a match configuration of `protocol tcp, source port 100, destination port 200` matches packets that use the TCP protocol, with source port 100 and destination port 200.
49+
50+
- **Actions**: The operations that are performed on the matched packets, including:
51+
- Count
52+
- Permit
53+
- Drop
54+
55+
Each match criterion can have one or more actions associated with it.
56+
57+
- **Dynamic match configuration**: An optional feature that allows the user to define custom match conditions using field sets and user-defined fields. Field sets are named groups of values that can be used in match conditions, such as port numbers, IP addresses, VLAN IDs, etc. Dynamic match configuration can be provided inline or in a file stored in a blob container. For example, `field-set tcpport1 80, 443, 8080` defines a field set named tcpport1 with three port values, and `user-defined-field gtpv1-tid payload 0 32` defines a user-defined field named gtpv1-tid that matches the first 32 bits of the payload.

0 commit comments

Comments
 (0)