Quote:
If I ping www-isp2.norman.cx from a remote host and sniff on my local network I see the incoming packet arrive via ISP2. I see www-isp2.norman.cx reply, using the correct ISP2 IP address. The reply never reaches the remote host though.
The only explanation I can think of for this at the moment is that it is being sent out via ISP1 (which is the default gateway).
If you're sniffing on the server then it's possible that you'd see the reply coming from the correct address but going via the default gateway where (presumably) it gets dropped upstream because the address appears to be spoofed.
Try adding two routes to 0.0.0.0, one via each gateway, without the default flag, and then remove the existing default route. This should allow the server to choose the appropriate route.
ie;
route del default
route add -net 0.0.0.0 gw isp1.gateway.ip metric 1 dev isp1.ethernet.interface
route add -net 0.0.0.0 gw isp2.gateway.ip metric 1 dev isp2.ethernet.interface
_________________________
Mk2a 60GB Blue. Serial 030102962
sig.mp3: File Format not Valid.