Route-map with multiple parameters in one match statement

When implementing Route-maps, and when configuring multiple parameters to be checked within a single match statement, these parameters are matched using a logical OR operation.

For example, in the match ip address 101 121 commands, a route is permitted if it is permitted by Access-List (ACL) 101 OR access list 121.

Note that in the above example case, either ACL is matched. Now when you are matching ACLs, you are matching them to particular networks. What if both ACLs match the particular network? The OR logic means that we check ALL of the potential elements in the match statement. So we don’t stop at one, but check them all. And if they all match, or if just one of them matches, then the route map will consider this a match.

This behavior introduces a strange case when the matching elements are different. For example, let's say you are redistributing connected networks by matching particular interfaces like so:

R2#show route-map route-map interface, permit, sequence 10 Match clauses: interface GigabitEthernet0/2 GigabitEthernet0/3 GigabitEthernet0/4

In this case, we are still using OR logic, however, so it means that we still check ALL of the potential elements in the match statement. So we don’t stop at one, but check them all. And if they all match, then the route map will actually redistribute all of the connected routes to those interfaces.

In this case, when we have multiple match commands on the same line, the router doesn’t stop at the first match it finds. Instead, it will match any of the conditions listed. So, it’s not that it matches G0/2 and stops, it’s that it matches G0/2 OR G0/1 OR G0/0.

In other words, the router will redistribute the connected networks from any of the three interfaces listed as they all match the conditions in the route-map.