I have quite a few networks, over 10 at this point. All sites should be able to communicate with any other site. I recently tried to upgrade to IPv6 to eliminate the problem of NAT. Not all sites have public IPv4, some don't even have IPv6. When there is IPv6 available on both ends, I use GRE6, then there are public IPv4, I prefer GRE4, when there is neither one, I need to use OpenVPN. Problem arises when there are 2 sites that have neither IPv4, nor IPv6. Then I need to hop over another network to reach the destionation.
In order to connect the sites, I use the following links (the most prefer and the one with lowest distance in routing table on top):
- GRE6
- GRE4 (with public IPv4 on both sides)
- OpenVPN (server when public IPv4 on at least one side, client to any other OpenVPN server)
So far I was only using Simple Static routing with different distances as a fail over. This no longer seems to be easy to manage. What protocol would you please suggest to manage routing? I read about OSPF3 which might be a way to go, or BGP. I have no knowledge over any solution yet and I am not looking for a step-by-step from anyone. I just need an advice as to what might be the easiest way to manage the network.
I am not sure whether my description is easy to understand so if not, I can try to draw something.