Les listes de contrôle d'accès définissent des règles de contrôle pour les paquets arrivant par les interfaces d'entrée, passant par le routeur et atteignant leur destination par les interfaces de sortie. Elles ne gèrent pas les paquets provenant du routeur lui-même.
Les listes de contrôle d'accès sont configurées pour s'appliquer au trafic entrant ou sortant, comme le montre la figure.
- Listes de contrôle d'accès entrantes : les paquets entrants sont traités avant d'être routés vers l'interface de sortie. Une liste de contrôle d'accès entrante est efficace car elle réduit la charge des recherches de routage en cas d'abandon du paquet. Si le paquet est autorisé à l'issue des tests, il est soumis au routage. Les listes de contrôle d'accès entrantes sont idéales pour filtrer les paquets lorsque le réseau relié à une interface d'entrée est la seule source des paquets devant être inspectés.
- Listes de contrôle d'accès sortantes : les paquets entrants sont acheminés vers l'interface de sortie, puis traités par le biais de la liste de contrôle d'accès sortante. Les listes de contrôle d'accès sortantes sont particulièrement efficaces lorsqu'un même filtre est appliqué aux paquets provenant de plusieurs interfaces d'entrée avant de quitter la même interface de sortie.
La dernière instruction d'une liste de contrôle d'accès est toujours une instruction implicit deny. Cette instruction est automatiquement ajoutée à la fin de chaque liste de contrôle d'accès, même si elle n'est pas physiquement présente. L'instruction implicit deny bloque l'ensemble du trafic. En raison de ce refus implicite, une liste de contrôle d'accès qui n'a pas au moins une instruction d'autorisation bloquera tout le trafic.