I am starting a new post because I have spent hours on this I think I am getting close to being able to give the right info needed to solve this. To put it in a nutshell I have two gateways, A. One running shorewall in a typical two interface network.with squid as a proxy 1: lo: <LOOPBACK,UP> mtu 16436 qdisc noqueue link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 brd 127.255.255.255 scope host lo 2: eth0: <BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast qlen 100 link/ether 00:0c:76:1d:27:ea brd ff:ff:ff:ff:ff:ff inet 63.228.99.225/29 brd 63.228.99.231 scope global eth0 3: eth1: <BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast qlen 100 link/ether 00:50:bf:79:1c:d8 brd ff:ff:ff:ff:ff:ff inet 10.5.198.254/24 brd 10.5.198.255 scope global eth1 13: tun1: <POINTOPOINT,MULTICAST,NOARP,UP> mtu 1405 qdisc pfifo_fast qlen 10 link/ppp inet 172.16.2.1 peer 172.16.2.2/32 scope global tun1 B. Only when accessing networks 63.90.86.0~63.90.86.255 or 63.90.86.0/24 I need to reroute to a different network gateway which is running a proxy server as well (10.5.198.29 private server) with gateway 10.5.198.238 The dns resloves ok from any dns as far as I can tell. But I have the dns server addresses for these networks that I can enter in resolve.conf Would I need to set these as two differnt zones in shorewall? and "route add 63.90.86.0/24 gw10.5.198.238" on the shorewall box.(mask??) I am not sure how to add this route? then write a rule maybe to redirect to the proxy. I really am stuck here? Can anyone help or is this really hard to do? I looked at the multiple router example that you sent Joshua, will that work being on the same internal network ? useing Tom''s example, it shows two different networks or the second router does not show the ip in his example I am assuming it is two networks. http://shorewall.net/Multiple_Zones.html Thank you Mike