Home > Articles > ACL Concepts

ACL Concepts

Chapter Description

In this sample chapter from Enterprise Networking, Security, and Automation Companion Guide (CCNAv7) for Cisco Networking Academy students, you will explore differences between standard and extended IPv4 ACLs.

Purpose of ACLs (4.1)

This section describes how ACLs filter traffic in small- to medium-sized business networks.

What Is an ACL? (4.1.1)

Routers make routing decisions based on information in each packet’s header. Traffic entering a router interface is routed solely based on information in the routing table. The router compares the destination IP address with routes in the routing table to find the best match and then forwards a packet based on the best match route. A similar process can be used to filter traffic using an access control list (ACL).

An ACL is a series of IOS commands that are used to filter packets based on information found in the packet header. By default, a router does not have any ACLs configured. However, when an ACL is applied to an interface, the router performs the additional task of evaluating all network packets as they pass through the interface to determine if each packet can be forwarded.

An ACL uses a sequential list of permit or deny statements known as access control entries (ACEs).

Several tasks performed by routers require the use of ACLs to identify traffic. Table 4-1 lists some of these tasks and provides examples.

Table 4-1 Tasks That Use ACLs



Limit network traffic to increase network performance

  • A corporate policy prohibits video traffic on the network to reduce the network load.

  • A policy can be enforced using ACLs to block video traffic.

Provide traffic flow control

  • A corporate policy requires that routing protocol traffic be limited to certain links only.

  • A policy can be implemented using ACLs to restrict the delivery of routing updates to only those that come from a known source.

Provide a basic level of security for network access

  • Corporate policy demands that access to the human resources network be restricted to authorized users only.

  • A policy can be enforced using ACLs to limit access to specified networks.

Filter traffic based on traffic type

  • Corporate policy requires that email traffic be permitted into a network but that Telnet access be denied.

  • A policy can be implemented using ACLs to filter traffic by type.

Screen hosts to permit or deny access to network services

  • Corporate policy requires that access to some file types (such as FTP or HTTP) be limited to user groups.

  • A policy can be implemented using ACLs to filter user access to services.

Provide priority to certain classes of network traffic

  • Corporate traffic specifies that voice traffic be forwarded as fast as possible to avoid any interruption.

  • A policy can be implemented using ACLs and QoS to identify voice traffic and process it immediately.

Packet Filtering (4.1.2)

Packet filtering controls access to a network by analyzing the incoming and/or outgoing packets and forwarding them or discarding them based on given criteria. Packet filtering can occur at Layer 3 or Layer 4, as shown in Figure 4-1.


Figure 4-1 Packet Filtering in the OSI Model

Cisco routers support two types of ACLs:

  • Standard ACLs: These ACLs only filter at Layer 3, using the source IPv4 address only.

  • Extended ACLs: These ACLs filter at Layer 3 using the source and/or destination IPv4 address. They can also filter at Layer 4 using TCP, UDP ports, and optional protocol type information for finer control.

ACL Operation (4.1.3)

An ACL defines a set of rules that give added control for packets that enter inbound interfaces, packets relayed through the router, and packets that exit outbound interfaces of the router.

ACLs can be configured to apply to inbound traffic and outbound traffic, as shown in Figure 4-2.


Figure 4-2 ACLs on Inbound and Outbound Interfaces

An inbound ACL filters packets before they are routed to the outbound interface. An inbound ACL is efficient because it saves the overhead of routing lookups if the packet is discarded. If a packet is permitted by the ACL, it is processed for routing. Inbound ACLs are best used to filter packets when the network attached to an inbound interface is the only source of packets that need to be examined.

An outbound ACL filters packets after they are routed, regardless of the inbound interface. Incoming packets are routed to the outbound interface, and they are then processed through the outbound ACL. Outbound ACLs are best used when the same filter will be applied to packets coming from multiple inbound interfaces before exiting the same outbound interface.

When an ACL is applied to an interface, it follows a specific operating procedure. For example, here are the operational steps used when traffic has entered a router interface with an inbound standard IPv4 ACL configured:

  • Step 1. The router extracts the source IPv4 address from the packet header.

  • Step 2. The router starts at the top of the ACL and compares the source IPv4 address to each ACE, in sequential order.

  • Step 3. When a match is made, the router carries out the instruction, either permitting or denying the packet, and the remaining ACEs in the ACL, if any, are not analyzed.

  • Step 4. If the source IPv4 address does not match any ACEs in the ACL, the packet is discarded because there is an implicit deny ACE automatically applied to all ACLs.

The last ACE statement of an ACL is always an implicit deny that blocks all traffic. By default, this statement is automatically implied at the end of an ACL even though it is hidden and not displayed in the configuration.

5. Wildcard Masks in ACLs (4.2) | Next Section Previous Section

There are currently no related articles. Please check back later.