Can somebody help me understand the in-depth difference between area X range x.x.x.x y.y.y.y not-advertise AND area X filter-list.
What I'm looking for in specific is in terms of LSAs.
for performing inter area filtering of internal LSA the old way to do this was to create a summary route with the option not-advertise.
The modern way to perform inter area filtering of internal LSA is to use the area X filter-list command that invokes a prefix-list that provides much more flexibility.
This form of inter-area filtering does not apply to LSA type 5 external routes that cannot be filtered.
In terms of LSA both type of commands influence how an ABR operates in terms of creation or regeneration of type 3 summary route LSAs.
The first command area area range with not-advertise option does the following:
collect of internal routes of area X that are inside the range from Router LSAs or Network LSAs in area X, creates a single LSA type 3 for all of them and then does not advertise it to area 0 the backbone.
The area X filter-list command can be applied out or in, it does not perform any form of route summarization of its own but allows to process the list of all possible LSAs originated in area X and that can be passed to area 0 and to filter about them. (out direction) OR the area X filter-list can apply to all type 3 LSAs received on the ABR from backbone area or other locally connected areas and to decide which to regenerate into area X. (in direction)
So the area filter list provides only filtering capabilities, but in two directions to backbone and from backbone.
The area filter-list provides more control as you can allow a specific component route denying all other component routes of an aggregate.
With area-range all component routes matching the command are denied.
A nice application of area filter-list is in allowing only /32 prefixes (node loopbacks) to go to the backbone and to be received from the backbone. This is used as a form of scalability for big OSPF domains in MPLS networks where all services are advertised via MP BGP.
Hope to help
So basically both command filter LSA type 3 only ?
Another doubt came up is then if someone wants to filter only external routes ( LSA 5) into the backbone, then what type of filtering can be done. ( except distribute-list, since it will only filter it from routing table and not Database table ).
unfortunately selective filtering of LSA type 5 is not possible in OSPF: all you can do is to get all (standard area) or none (stub area or NSSA) depending on the use of stub areas or NSSA areas.
Decision is taken by ABR at area border.
Hope to help