Bonjour à toute la communauté !!!
J’administre le réseau informatique d’une entreprise.Cependant la bande passante acquise se trouve être désormais insuffisante pour satisfaire le besoin internet du personnel. En entrée du réseau se trouve un routeur cisco 1841 sur lequel j’ai configuré le protocole Wccp(Web Cache Communication Protocol) version 2.
Dans le réseau local j’ai un serveur Debian 3.2.51-1 x86_64 sur lequel j’ai installé le service squid3.
Vu le volume d’ordinateurs,il m’est impossible de configurer individuellement chaque navigateur. j’ai donc opté pour un service de proxy transparent de tel sorte que le routeur (qui est en même temps la passerelle par défaut) redirige les paquets http(80) vers le serveur proxy présent dans le réseau local, afin de rendre transparent le processus à l’utilisateur. j’ai donc créé un interface virtuel gre0 sur mon serveur par lequel les paquets redirigés par le routeur arriveront au serveur.
Jusqu’à ce niveau ça va puisque lorsque je fait : ifconfig, j’obtiens ceci:
…
eth0 Link encap:Ethernet HWaddr ac:16:2d:8d:86:50
inet adr:172.16.1.51 Bcast:172.16.255.255 Masque:255.255.0.0
adr inet6: fe80::ae16:2dff:fe8d:8650/64 Scope:Lien
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:3676934 errors:0 dropped:1642 overruns:0 frame:0
TX packets:1985499 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 lg file transmission:1000
RX bytes:611239780 (582.9 MiB) TX bytes:254132390 (242.3 MiB)
Interruption:32
…
…
gre0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet adr:172.16.1.51 Masque:255.255.255.255
UP RUNNING NOARP MTU:1476 Metric:1
RX packets:677745 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 lg file transmission:0
RX bytes:49038910 (46.7 MiB) TX bytes:0 (0.0 B)
…
il semble donc que les paquets arrivent bien sur l’interface gre0 du serveur. de plus le résultat de “tcpdump -i gre0” ,confirme bien que le routeur redirige les paquets vers gre0 du serveur.
Squid fonctionne bien puisque lorsque je configure le navigateur d’une machine du réseau pour l’utiliser ça marche.
Cependant “tcpdump -i eth0” me confirme que les paquets n’arrivent pas sur eth0 depuis gre0.
Sur le serveur Debian j’execute le script suivant en root:
modprobe ip_gre
ip addr add 172.16.1.51/32 dev gre0
ip link set gre0 up
echo 1 > /proc/sys/net/ipv4/ip_forward
echo 0 > /proc/sys/net/ipv4/conf/default/rp_filter
echo 0 > /proc/sys/net/ipv4/conf/all/rp_filter
echo 0 > /proc/sys/net/ipv4/conf/eth0/rp_filter
echo 0 > /proc/sys/net/ipv4/conf/lo/rp_filter
echo 0 > /proc/sys/net/ipv4/conf/gre0/rp_filter
iptables -t nat -F
iptables -t nat -A PREROUTING -i gre0 -p tcp -m tcp --dport 80 -j DNAT --to-destination 172.16.1.51:3128
et lorsque je fait: “iptables -t nat -L”
Chain PREROUTING (policy ACCEPT)
target prot opt source destination
DNAT tcp – anywhere anywhere tcp dpt:http to:172.16.1.51:3128
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Chain POSTROUTING (policy ACCEPT)
target prot opt source destination
Il semble(du moins c’est ce que je pense) que les paquets ne vont pas de gre0 à eth0. Si oui que dois-je faire? Sinon ou se situerait le problème?
Merci d’avance pour votre aide