How many sites are you talking about? I would normally use 'co-located' to mean that the SME server is at a 'co-location facility', which means 'NOT local to the users', giving me a network (in your situation) something like this:
Internet----SME
|
|
NGO_Internet_Router
| |
| \
Users Router_to_supplier====>supplier
However, since you're having trouble I suspect your network is actually more like this:
Internet
|
|
NGO_SME
|
Switch
| \
| \
Users Router_to_supplier====>supplier
The 'local networks' option in SME does not do anything with routing tables - it only modifies firewall and access rules (allowing unauthenticated smtp relay, for example).
In either case you should be able to get traffic from 'Users' to 'supplier' by adding a route to either each user's computer or to the system that acts as the default gateway for each user's computer (NGO_SME or NGO_Internet_Router).
You're likely to have some trouble doing this on the SME unless your Users can talk to 'supplier' without any NAT or PAT. If you do NOT need NAT or PAT between your users & supplier you may be able to
route add -net 192.168.1.0/24 gw 192.168.200.3
where:
- 192.168.1.0/24 is the supplier's network
- 192.168.200.3 is the IP address of Router_to_supplier
If you DO need NAT or PAT between you, you will also need to customize the iptables rules.
I have *no idea* how to template custom routes in SME, though...
You could also (with either configuration above) modify the routing table for each user (assuming windows and the same IP scheme used previously) using a batch file that says:
route add 192.168.1.0 mask 255.255.255.0 192.168.200.3
You could make this route persist on each workstation through a reboot using
route -p add 192.168.1.0 mask 255.255.255.0 192.168.200.3.
Here's a link w/ more info:
http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/route.mspx?mfr=true