I am looking at using OSPF/Quagga to provide high availability between a backbone and multiple remote locations (via GRE). I'm unable to get route summarisation working (forgive me if not the correct use of the term).
Area 0 has 2 routers
- Area0-A is 192.168.100.1/24
- Area0-B is 192.168.100.2/24
Directly connected to each other and running OSPF (although may not be directly connected in the future, different datacenters).
I've got 3 remote locations that connect into Area 0 via GRE:
- Area1-A is 192.168.1.0/24 and 192.168.2.0/24 (+ GRE PtP link)
- Area2-A is 192.168.3.0/24 and 192.168.4.0/24 (+ GRE PtP link)
- Area3-A is 192.168.5.0/24 and 192.168.6.0/24 (+ GRE PtP link)
The remote locations GRE links are spread across the various Area 0 routers.
However I need to only send a summarised route to the remote areas in order to scale out to hundreds/thousands of remote locations. I'm unable to get this working properly.
How can I advertise a 192.168.0.0/16 summary to the remote areas while preserving individual route entries within area 0?
When I try the following on Area0-A & Area0-B:
router ospf network 192.168.16.100/24 area 0.0.0.0 network (GRE PtP link1)/32 area 0.0.0.1 network (GRE PtP link2)/32 area 0.0.0.2 network (GRE PtP link3)/32 area 0.0.0.3 area 0.0.0.0 range 192.168.0.0/16
then the summary route 192.168.0.0/16 is correctly installed on the remote locations, however it is also installed within the other area 0 routers:
Area1-A is connected to Area0-A. Routing table on Area0-B shows a blackhole for 192.168.0.0/16 but no narrowing entries for the specific subnets that are reachable from ospf (192.168.1.0, 2.0). Area0-A (Area1-A is connected, routes installed):
# ip route list 240.0.1.2 dev vpn1 proto kernel scope link src 240.0.1.1 192.168.100.0/24 dev eth1 scope link src 192.168.100.1 192.168.1.0/24 via 240.0.1.2 dev vpn1 proto zebra metric 75 192.168.2.0/24 via 240.0.1.2 dev vpn1 proto zebra metric 70 192.168.200.0/24 dev eth0 scope link src 192.168.200.1 blackhole 192.168.0.0/16 proto zebra 127.0.0.0/8 dev lo scope link default via 192.168.200.254 dev eth0 src 192.168.200.1
Area0-B (Area1-A routes not installed):
# ip route list 192.168.100.0/24 dev eth1 scope link src 192.168.100.2 192.168.200.0/24 dev eth0 scope link src 192.168.200.2 blackhole 192.168.0.0/16 proto zebra 127.0.0.0/8 dev lo scope link default via 192.168.200.254 dev eth0 src 192.168.200.2
As far as I can tell, the summarisation command pushes the summaries out both to connected areas as well as the backbone.
How can I stop the summarisation on the backbone? Or, can someone please point me to a better approach?