Salut
Je suis en train de mettre en place un proxy que je voudrais rendre transparent, sous debian5 avec squid 3. pour l'instant j'utilise qu'une seule machine avec virtualbox qui simule le serveur debian avec squid/iptable et un client sous xp.
mon problème est le suivant: j'arrive à rendre squid3 transparent si j'ai qu'une carte réseau sous debian mais dès que je met une deuxième carte réseau, je peux utiliser squid seulement en configurant le navigateur de la machine cliente!
concrètement une fois mes expériences réussies, ça devrait donner:
- 1 modem/routeur/serveur dhcp avec ip 192.168.1.254/24 -> le dernier point d'accès à internet
- debian/squid/iptable avec deux cartes réseau:
- eth0 192.168.1.2/24 avec comme passerelle 192.168.1.254 (obtenu par le dhcp pour le moment)
- eth1 192.168.167.1/24 sans passerelle
- les machines clientes seront sur le réseau 192.168.167.0/24 avec comme passerelle 192.168.167.1.
virtuellement, si tout est ouvert dans iptable, le client ping le modem/routeur et peuvent accéder à internet en passant par le proxy (port 3128) si je configure le navigateur du client à passer par le proxy. je peux avoir la confirmation dans le fichier log du proxy qu'il y passe bien. dans ce cas, je n'ai pas configuré d'adresse dns dans les configuration réseau du client.
mais avec squid transparent non! sauf si j'enlève une carte réseau (donc squid et le client se retrouvent sur le même réseau) et si je met comme passerelle sur le client l'ip de squid et comme adresse dns l'ip du modem/routeur.
dans iptable j'ai aussi ajouté la règle suivante:
iptables -t nat -A PREROUTING -p TCP -i eth1 --dport 80 -j REDIRECT --to-port 3128
je crois savoir que squid3 pose problème en mode transparent... à moins que ce soit le fait qu'il y ait deux cartes réseau?
j'ai essayé de nombreuses règles iptables en nat prerouting, postrouting et output, ainsi qu'un paquet de fichier de configuration de squid où il y a par exemple:
http_port 3128 transparent ou http_port 127.0.0.1:3128 transparent ou http_port 192.168.167.1:3128 transparent ou 192.168.1.2:3128 transparent
svp, avez vous une solution à mon problème? merci!