1.Distribute-lists
Distribute-lists are used to filter routing updates in both inbound and outbound direction. It refers to access-list or prefix-list to match a source traffic and then applies under routing process.
Example using access-list
Router(config)# access-list 10 permit ip 172.16.0.0 0.0.255.255Distribute-list only allows incoming updates to RIP on serial0/0 for traffic refered in access-list 10. That means "Only update informations from 172.16.0.0/24 go through Serial0/0 by inbound direction will be accepted to RIP protocol."
Router(config)# router rip
Router(config-router)# distribute-list 10 in serial0/0
Example using prefix-list
Router(config)# ip prefix-list MYLIST 10.1.0.0/16With the same meaning with access-list, difference in replacing access-list 10 with prefix-list MYLIST
Router(config)# router rip
Router(config-router)# distribute-list 10 in serial0/0
Two above examples both say about routing updates, so what happen in redistribution.
Distribute-lists can be configured under routing process that importing routes from redistributed-protocol. That means, when configuring distribute-lists, you have to go to received-protocol process to configure filtering. And the command must use "out" direction because it refers to routing process from which routes are redistributed.
For example, under EIGRP process, the command
distribute-list 1 out ospf 2tells EIGRP to apply ACL 1 when importing routes from OSPF process 2. Note that, "out" direction must be refered.
Using this figure to demonstrate:
In this scenario, two routing protocols running are EIGRP and OSPF. R1 will take redistributing functions. The requirement is preventing route 1.1.1.0/24 from redistributing into OSPF process.
Before filtering route, subnet 1.1.1.0/24 still appears in routing table of R3:
R3#show ip route ospfI'm using prefix-list named TEST:
1.0.0.0/24 is subnetted, 1 subnets
O E2 1.1.1.0 [110/20] via 11.0.0.1, 00:01:08, Ethernet0/1
2.0.0.0/24 is subnetted, 1 subnets
O E2 2.2.2.0 [110/20] via 11.0.0.1, 00:28:33, Ethernet0/1
10.0.0.0/30 is subnetted, 1 subnets
O E2 10.0.0.0 [110/20] via 11.0.0.1, 00:28:33, Ethernet0/1
11.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
O E2 11.11.11.0/24 [110/20] via 11.0.0.1, 00:28:33, Ethernet0/1
R1#show run | section prefix-listThis prefix-list only denies subnet 1.1.1.0/24 exactly and allows the rest. Go to R1, under OSPF process:
ip prefix-list TEST seq 5 deny 1.1.1.0/24
ip prefix-list TEST seq 10 permit 0.0.0.0/0 le 32
R1#show run | section router ospfAfter applying distribute-list to OSPF process, subnet 1.1.1.0/24 is no longer appears in R3's routing table.
router ospf 1
log-adjacency-changes
redistribute eigrp 10 subnets
network 11.0.0.0 0.0.0.3 area 0
distribute-list prefix TEST out eigrp 10
R3#show ip route ospf
2.0.0.0/24 is subnetted, 1 subnets
O E2 2.2.2.0 [110/20] via 11.0.0.1, 00:30:21, Ethernet0/1
10.0.0.0/30 is subnetted, 1 subnets
O E2 10.0.0.0 [110/20] via 11.0.0.1, 00:30:21, Ethernet0/1
11.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
O E2 11.11.11.0/24 [110/20] via 11.0.0.1, 00:30:21, Ethernet0/1
2. Route-maps
Route-map is another tool to filter traffic like ACL but has more power functions:
- Controlling redistribution between routing protocols
- Adjust attributes for routes (especially BGP)
- Implement Policy Base Routing - PBR
Syntax of route-map:
Router(config)# access-list 1 permit 10.1.0.0 0.0.0.255An ACL was created first to match traffic from 10.1.0.0/24. Then the route-map named TEST with permit condition and a sequence number is 10.
Router(config)# route-map TEST permit 10
Router(config-route-map)# match ip address 1
Router(config-route-map)# set ip next-hop 2.2.2.2
The route-map will match traffic listed in ACL 1 and finally sets attribute next-hop to traffic.
A route-map can contains multiple match commands:
Router(config)# route-map TEST permit 10With matching criteria in the same line, that means "OR" logical is applied.
Router(config-route-map)# match ip address 1 2 3
Router(config-route-map)# match ip address 1With separated lines, the "AND" logical is applied.
Router(config-route-map)# match ip address 2
When using with redistribution, if you dont want to make any changes to attributes of traffic, the route-map must have permit condition, match condition refers to ACL with no set is configured.
Use above diagram and requirement to demonstrate:
R1#show run | section access-listVerify routing table on R3:
access-list 10 deny 1.1.1.0 0.0.0.255
access-list 10 permit any
R1#show run | section route-map
route-map TEST permit 10
match ip address 10 <<<< there is no set condition
R1#show run | section router ospf
router ospf 1
log-adjacency-changes
redistribute eigrp 10 subnets route-map TEST
network 11.0.0.0 0.0.0.3 area 0
R3#show ip route ospfAs you can see, both distribute-lists and route-map accept us to expand configuration depends on requirement. They use ACL and prefix-list for reference so you can set various settings in ACL to have the best configuration.
2.0.0.0/24 is subnetted, 1 subnets
O E2 2.2.2.0 [110/20] via 11.0.0.1, 00:03:09, Ethernet0/1
10.0.0.0/30 is subnetted, 1 subnets
O E2 10.0.0.0 [110/20] via 11.0.0.1, 00:03:09, Ethernet0/1
11.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
O E2 11.11.11.0/24 [110/20] via 11.0.0.1, 00:03:09, Ethernet0/1
No comments:
Post a Comment