I've been finally able to set my ubuntu 10.04 server as transparent proxy using squid. It works exactly like I wanted but I have a serious problem...
On both ethernet cards I have the chance to get on the internet (two different isps) but I'd like this server to use only eth1 to serve all internet requests.
So the final scheme would be using eth0 to collect all incoming proxy request and let squid gather information from the internet using the ultra speedy connection on eth1.
The problem is that I have a firewall connected to eth0: this firewall allows a branch office to get to proxy using a wifi bridge.
To ensure communication between branch office and proxy I'm forced to set as default gateway on eth0 my firewall which - sadly - also offers internet connection (but a slow one). Squid uses entirely eth0 to collect requests and get data from the internet.
I can't set an unique correct default gateway because in that case I'd not send packets back to our branch office using the wifi bridge.
I hope I've been a little clearer I'm sorry for my poor exposition.
My actual route shows:
Kernel IP routing table`
Destination Gateway Genmask Flags Metric Ref Use Iface
193.206.x.x * 255.255.255.0 U 0 0 0 eth1
128.0.x.x * 255.255.0.0 U 0 0 0 eth0
default 128.0.x.x 0.0.0.0 UG 100 0 0 eth0
default 193.206.x.x 0.0.0.0 UG 100 0 0 eth1
Any hints?
If you need any kind of details I'll post them.