I have an interesting network setup and was wondering if anyone could help me figure it out.

I am setting up an MPLS network which is essentially a fancy transparent VPN.

At each remote site is a CMTS (cable modem termination system) which in essence is just a switch. Behind this 'switch' are two networks. One network allows the cable modems to communicate with a tft server and for monitoring equipment to communicate with the cmts and modems via snmp. The second network is for all the traffic generated by the computers plugged into the modems. It is important that these two networks remain completely isolated.

Lets call these networks:

CM (Cable modem): 172.16.8.0
CPE (computers) : 172.20.8.0
on a 255.255.248.0 subnet.

Each remote site has a duplicate of these two networks, but with a different 3rd octet (so the next site would have 172.16.16.0 and 172.20.16.0).

Here at the corporate office, we have 172.16.0.0 and 172.20.0.0.

What we need to be able to do is place servers on the 172.16.0.0 network and have a route out to all 172.16.x.0 networks and a route from each 172.16.x.0 network back to 172.16.0.0. All traffic on the 172.20.x.0 networks needs to be forwarded to a gateway to the cloud on the 172.20.0.0 network.

Does this make sense so far?

Now I'm by no means a networking guy. I'm figuring this stuff out as I go. So I guess the question is, is this configuration possible and how to I go about setting it up. Right now each remote router has the nic on the 172.16. subnet and that is serving as the gateway for that subnet. I have no idea what to set the gateway or the next hop on the 172.20 subnet though.

Any advice or information here would be appreciated.