Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 8 sur 8
  1. #1
    Invité régulier
    Inscrit en
    juin 2005
    Messages
    67
    Détails du profil
    Informations forums :
    Inscription : juin 2005
    Messages : 67
    Points : 8
    Points
    8

    Par défaut Squid + iptables + bonded interface

    Bonjour,

    Je tente de mettre en place mon premier proxy sous centos 5 avec squid 2.6.

    Tout fonctionne correctement en mode normal i.e en configurant le navigateur de chaque client pour taper dans le proxy.

    Cependant quand j'essaye de passer en mode transparent ça ne fonctionne plus !

    Pour se faire j'ai éditer mon squid.conf avec http_port 3128 transparent puis ajouté une règle à mon firewall avec :

    iptables -t nat -A PREROUTING -i bond0 -p tcp --dport 80 -j REDIRECT --to-port 3128

    /etc/init.d/iptables save
    /etc/init.d/iptables restart
    /etc/init.d/squid restart

    Mon problème est qu'apparemment je ne navigue plus par l'intermédiaire du proxy !

    Peut-etre que la configuration est différente avec une interface réseau bondée ??

    Si quelqu'un à une idée elle est la bienvenue !

    Merci

  2. #2
    Modérateur
    Avatar de IP_Steph
    Homme Profil pro Steph
    Architecte réseau
    Inscrit en
    février 2012
    Messages
    1 666
    Détails du profil
    Informations personnelles :
    Nom : Homme Steph
    Localisation : France

    Informations professionnelles :
    Activité : Architecte réseau
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : février 2012
    Messages : 1 666
    Points : 3 682
    Points
    3 682

    Par défaut

    Salut,

    je ne pense que ce soit lié au bonding. Je pense qu'il faudrait faire intervenir l'interface qui fournit la connexion vers l'Internet.

    Code :
    1
    2
    3
    4
    5
    6
    7
     Internet
        ^
        |192.168.1.1/24
        |eth0
    +-------+
    | Squid |=bond0= réseau local
    +-------+
    En supposant que l'interface bond0 soit l'interface qui connecte sur le réseau local des utilisateurs, et eth0 celle qui doit forwarder le traffic vers l'Internet (je lui ai mis l'adresse 192.168.1.1/24), voilà le premier essai à tenter :

    Code :
    1
    2
    3
    4
    5
    6
    iptables -F
    iptables -X
    iptables -t nat -F
    iptables -t nat -X
    iptables -t nat -A PREROUTING -i bond0 -p tcp --dport 80 -j DNAT --to 192.168.1.1:3128
    iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128
    Si ça ne marche toujours pas, une option consisterait à casser le bonding et refaire les tests en utilisant une eth1 à la place de bond0, histoire de vérifier que ça n'est pas un problème de bonding.

    Tout ceci implique bien sûr que l'IP Forwarding soit activé !

    Steph
    )-: sʞɔns ɹǝʌıɹp ɐıpıʌu ʍǝu sıɥʇ

  3. #3
    Invité régulier
    Inscrit en
    juin 2005
    Messages
    67
    Détails du profil
    Informations forums :
    Inscription : juin 2005
    Messages : 67
    Points : 8
    Points
    8

    Par défaut

    Salut Steph,

    Merci beaucoup pour ta réponse.
    Pour situer rapidement, je n'ai pas vraiment de connaissance en réseau.

    Donc j'ai suivi ce que tu m'as dit par contre ça n'est pas moi qui ai configuré le bonding donc j'ai fait avec ce que j'ai compris.

    A savoir que mon interface bond0 a un ip, mettons 192.168.1.1/24 et j'ai deux interface physique eth0 et eth1 qui n'ont pas d'adresses.

    Donc j'ai procédé comme suit:
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    iptables -F
    iptables -X
    iptables -t nat -F
    iptables -t nat -X
    iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j DNAT --to 192.168.1.1:3128
    iptables -t nat -A PREROUTING -i bond0 -p tcp --dport 80 -j REDIRECT --to-port 3128
    iptables-save
    /etc/init.d/iptables restart
    Avec un iptables -nvL j'obtiens:

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    Chain INPUT (policy ACCEPT 20 packets, 2610 bytes)
     pkts bytes target     prot opt in     out     source               destination         
        0     0 ACCEPT     tcp  --  bond0  *       0.0.0.0/0            0.0.0.0/0           tcp dpt:80 
        0     0 ACCEPT     tcp  --  bond0  *       0.0.0.0/0            0.0.0.0/0           tcp dpt:3128 
     
    Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
     pkts bytes target     prot opt in     out     source               destination         
     
    Chain OUTPUT (policy ACCEPT 11 packets, 1372 bytes)
     pkts bytes target     prot opt in     out     source               destination
    Ca ne fonctionne toujours pas. J'ai aussi essayé avec eth1 (sans vraiment être sûr que ça ait un sens ) sans succès.
    Tout ça après avoir activé l'IP Forwarding qui ne l'était pas:
    Code :
    1
    2
    3
     
    net.ipv4.ip_forward = 1
    sysctl -p

  4. #4
    Modérateur
    Avatar de IP_Steph
    Homme Profil pro Steph
    Architecte réseau
    Inscrit en
    février 2012
    Messages
    1 666
    Détails du profil
    Informations personnelles :
    Nom : Homme Steph
    Localisation : France

    Informations professionnelles :
    Activité : Architecte réseau
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : février 2012
    Messages : 1 666
    Points : 3 682
    Points
    3 682

    Par défaut

    Peux-tu fournir le résultat des commandes suivantes

    Steph
    )-: sʞɔns ɹǝʌıɹp ɐıpıʌu ʍǝu sıɥʇ

  5. #5
    Invité régulier
    Inscrit en
    juin 2005
    Messages
    67
    Détails du profil
    Informations forums :
    Inscription : juin 2005
    Messages : 67
    Points : 8
    Points
    8

    Par défaut

    Pas de souci !

    ifconfig -a
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
     
    bond0     Link encap:Ethernet  HWaddr 00:15:17:56:40:A8  
              inet addr:146.203.18.49  Bcast:146.203.18.255  Mask:255.255.255.0
              inet6 addr: fe80::215:17ff:fe56:40a8/64 Scope:Link
              UP BROADCAST RUNNING MASTER MULTICAST  MTU:1500  Metric:1
              RX packets:18291 errors:0 dropped:0 overruns:0 frame:0
              TX packets:4835 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:0 
              RX bytes:2869191 (2.7 MiB)  TX bytes:746806 (729.3 KiB)
     
    eth0      Link encap:Ethernet  HWaddr 00:15:17:56:40:A8  
              UP BROADCAST RUNNING SLAVE MULTICAST  MTU:1500  Metric:1
              RX packets:9947 errors:0 dropped:0 overruns:0 frame:0
              TX packets:2421 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000 
              RX bytes:1483802 (1.4 MiB)  TX bytes:375840 (367.0 KiB)
              Memory:b8820000-b8840000 
     
    eth1      Link encap:Ethernet  HWaddr 00:15:17:56:40:A8  
              UP BROADCAST RUNNING SLAVE MULTICAST  MTU:1500  Metric:1
              RX packets:8345 errors:0 dropped:0 overruns:0 frame:0
              TX packets:2418 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000 
              RX bytes:1385455 (1.3 MiB)  TX bytes:371758 (363.0 KiB)
              Memory:b8800000-b8820000 
     
    lo        Link encap:Local Loopback  
              inet addr:127.0.0.1  Mask:255.0.0.0
              inet6 addr: ::1/128 Scope:Host
              UP LOOPBACK RUNNING  MTU:16436  Metric:1
              RX packets:1928 errors:0 dropped:0 overruns:0 frame:0
              TX packets:1928 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:0 
              RX bytes:2465301 (2.3 MiB)  TX bytes:2465301 (2.3 MiB)
     
    sit0      Link encap:IPv6-in-IPv4  
              NOARP  MTU:1480  Metric:1
              RX packets:0 errors:0 dropped:0 overruns:0 frame:0
              TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:0 
              RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)
    route -n

    Code :
    1
    2
    3
    4
    5
    6
     
    Kernel IP routing table
    Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
    146.203.18.0    0.0.0.0         255.255.255.0   U     0      0        0 bond0
    169.254.0.0     0.0.0.0         255.255.0.0     U     0      0        0 bond0
    0.0.0.0         146.203.18.1    0.0.0.0         UG    0      0        0 bond0

  6. #6
    Modérateur
    Avatar de IP_Steph
    Homme Profil pro Steph
    Architecte réseau
    Inscrit en
    février 2012
    Messages
    1 666
    Détails du profil
    Informations personnelles :
    Nom : Homme Steph
    Localisation : France

    Informations professionnelles :
    Activité : Architecte réseau
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : février 2012
    Messages : 1 666
    Points : 3 682
    Points
    3 682

    Par défaut

    Une bond interface ne te sera d'aucune utilité, tu n'as que 2 interfaces physiques...

    Voici un scenario typique d'utilisation d'aggrégat :

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
        Internet
            ^
            |
            |eth2
        +-------+
        | Linux |
        +-------+
           | |
       eth0| |eth1
          bond0
           | |
        +-------+
        |Switch |   
        +-------+
    eth0 et eth1 sont aggrégées sur une bond0 interface, elle-même en frontal sur un switch. La bond0 est vue comme une seule entité logique du point de vue de la machine Linux.

    Dans ton cas, tu ne peux pas associer ainsi tes 2 cartes Ethernet puisque l'une fournit un accès à ton réseau local et l'autre forwarde les paquets vers l'Internet.

    Steph
    )-: sʞɔns ɹǝʌıɹp ɐıpıʌu ʍǝu sıɥʇ

  7. #7
    Invité régulier
    Inscrit en
    juin 2005
    Messages
    67
    Détails du profil
    Informations forums :
    Inscription : juin 2005
    Messages : 67
    Points : 8
    Points
    8

    Par défaut

    Salut Steph,

    Désolé pour le temps de réponse mais il fallait que je me documente un peu.
    Il y a juste un truc qui m'intrigue dans ton explication. Quand tu dis:
    "Dans ton cas, tu ne peux pas associer ainsi tes 2 cartes Ethernet puisque l'une fournit un accès à ton réseau local et l'autre forwarde les paquets vers l'Internet." est-ce que tu déduis ça des infos que je t'ai fourni ? Lesquels dans ce cas ?

    Merci

  8. #8
    Modérateur
    Avatar de IP_Steph
    Homme Profil pro Steph
    Architecte réseau
    Inscrit en
    février 2012
    Messages
    1 666
    Détails du profil
    Informations personnelles :
    Nom : Homme Steph
    Localisation : France

    Informations professionnelles :
    Activité : Architecte réseau
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : février 2012
    Messages : 1 666
    Points : 3 682
    Points
    3 682

    Par défaut

    Aurais-je mal compris ?

    Reprenons alors

    Mais d'une autre manière...

    Avant d'en venir au bonding d'interfaces, je reprends ton premier post :

    Je tente de mettre en place mon premier proxy sous centos 5 avec squid 2.6.

    Tout fonctionne correctement en mode normal
    Ce "mode normal" s'appuie sur 2 cartes physiques ?

    De la façon suivante ?

    Code :
    1
    2
    3
    4
    5
    6
    7
     Internet
        ^
        |
        |eth1
    +-------+
    | Squid |eth0 -- réseau local
    +-------+
    Steph
    )-: sʞɔns ɹǝʌıɹp ɐıpıʌu ʍǝu sıɥʇ

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •