When designing complex networks with multiple redistribution points, you must somehow limit redistribution so that loops are prevented. I'm going to show you my method of choice, which involves tagging routes and filtering with route maps.
Many routing protocols—for example, EIGRP, OSPF, and RIPv2 (but not RIPv1)—allow you tag routes with values when redistributing them. The route tags are nothing more than numbers within the range of 0–4,294,967,295. (Unfortunately, the tags cannot be alphanumeric.) Route tags do not affect the protocol's actions; the tag is simply a field to which you can assign a value to use elsewhere.
To set a route tag when redistributing into OSPF, add the
tag# keyword to the
redistribute eigrp 100 metric 10 subnets tag 2
This command will redistribute routes from EIGRP 100 into OSPF. The OSPF metric will
be 10, and the tag will be 2. To see the tags in OSPF routes, use the
show ip ospf database command. Redistributed routes will be
external routes. The last column will be the tags for these routes:
sho ip ospf datOSPF Router with ID (10.10.10.2) (Process ID 100) Router Link States (Area 0) Link ID ADV Router Age Seq# Checksum Link count 10.10.10.2 10.10.10.2 128 0x80000002 0x00F5BA 1 184.108.40.206 220.127.116.11 129 0x80000002 0x009DD9 1 Net Link States (Area 0) Link ID ADV Router Age Seq# Checksum 10.10.10.1 18.104.22.168 129 0x80000001 0x00B5CA Type-5 AS External Link States Link ID ADV ...