OSPF Redistribute subnets
If I remember correctly, although OSPF is classless itself, (Cisco) redistribution into OSPF. The subnets parameter seems to assume classful networks.
For instance, under classful rules, 10.x.x.x is class A network (or /8 VLSM). 10.1.1.0/24, under classful rules is a subnet of the 10.x.x.x class A address. To have (Cisco) redistribute 10.1.1.0/24 into OSPF requires the subnets keyword. To have (Cisco) redistribute 10.0.0.0/8 into OSPF would not.
Usually when working with (Cisco) OSPF, you’ll want to use the subnets keyword when doing redistribution into OSPF.
If you wanted to redistribute 192.168.1.0/24 into OSPF, since, under class rules, it’s a class C address, you wouldn’t need the subnets parameter. However, 192.168.1.0/25, a class C subnet, you would need subnets parameter.
When working with VLSM/classless, you’ll want to use subnets parameter.)
This output shows an OSPF router redistributing static, RIP, IGRP, EIGRP, and IS-IS routes.
router ospf 1
network 131.108.0.0 0.0.255.255 area 0
redistribute static metric 200 subnets
redistribute rip metric 200 subnets
redistribute igrp 1 metric 100 subnets
redistribute eigrp 1 metric 100 subnets
When there is a major net that is subnetted, you need to use the keyword subnet to redistribute protocols into OSPF. Without this keyword, OSPF only redistributes major nets that are not subnetted.