On Mon, Aug 04, 2003 at 06:24:42AM -0700, [EMAIL PROTECTED] wrote:
I could sure use an idea for solving the following. We have a perfectly
functional but saturated ds0 with our telco that is very expensive. We
have squid running with transparent proxy for our LAN that consists of
about 10-15 users. [ fwd 127.0.0.1,3128 tcp from 192.168.5.0/24 to any 80 ]
It works fine but still not enough bandwidth so we contracted a connection
with a cable company that we plan to use for all outgoing requests for
port 80 from squid. The problem is that I can't get the outgoing requests
from squid to use the nic that is connected to the cable company.
Squid is setup to use the Cable companies IP
tcp_outgoing_address 10.24.194.163
but since the default gateway is to the telco interface, the request is sent
to the telco.
I'm not sure how to make this work. Our three nic's are set up as follows
rl1
192.168.5.0/24 ---
Internal Network \
\rl0 [TelCo]
-- 200.79.x.0/28--- INTERNET
/natd-ipfw-squid
rl2 / routing: default 200.79.x.1
10.24.194.163/20 ---
Cable Network
Our firewall configuration has been reduced to the following until we can
get this to work.
00100 allow ip from any to any via lo0
00200 deny ip from any to 127.0.0.0/8
00300 deny ip from 127.0.0.0/8 to any
00400 fwd 127.0.0.1,3128 tcp from 192.168.5.0/24 to any 80
65100 divert 8668 ip from any to any via rl0
65500 allow ip from any to any
65535 allow ip from any to any
Everything works great with rl1 - rl0 but rl2 is basically useless.
I have tried many different approaches and none have worked. I'm probably
complicating it too much.
Any help or suggestions will be appreciated.
This sounds to me like a policy based routing problem -- googling for
policy based routing FreeBSD in Google Groups should prove
informative.
However, the mechanism is basically the same as you've used to
implement your transparent proxy. All you need to do is insert
another rule to trap the port 80 traffic coming out of Squid and send
the packets to the next-hop gateway on your rl2 interface. That
presumably has it's default route set via the cable network.
Something like:
00500 fwd 10.24.207.254 tcp from me to any 80
(assuming that 10.24.207.254 is the router address in the cable
companies' network.) Since your Squid is already using a Cable
Co. address as the source address on any outgoing packets this should
cause all in- and out-going HTTP traffic to pass via the Cable
Co. network.
Cheers,
Matthew
--
Dr Matthew J Seaman MA, D.Phil. 26 The Paddocks
Savill Way
PGP: http://www.infracaninophile.co.uk/pgpkey Marlow
Tel: +44 1628 476614 Bucks., SL7 1TH UK
pgp0.pgp
Description: PGP signature