2 votes

Comment acheminer les connexions entrantes par une interface spécifique ?

J'ai plusieurs cartes Ethernet avec deux ensembles différents de réseaux configurés sur elles.

La sortie de route -n est donné ici : :

     Kernel IP routing table 
      Destination  Gateway        Genmask        Flags Metric Ref Use Iface
   0.0.0.0         192.168.3.1     0.0.0.0         UG    0      0        0 eth0
   169.254.0.0     0.0.0.0         255.255.0.0     U     1000   0        0 eth1
   192.168.1.0     0.0.0.0         255.255.255.0   U     1      0        0 eth1
   192.168.3.0     0.0.0.0         255.255.255.0   U     1      0        0 eth0

Les connexions sortantes sont correctes. Le problème se situe au niveau des connexions entrantes : Comment puis-je router le trafic entrant pour qu'il passe par 192.168.1.X ?

Une autre chose que je voudrais ajouter est que les connexions sortantes doivent passer par l'adresse 192.168.3.1.

2voto

rahul Points 116

J'ai trouvé moi-même la solution à ce problème : Routage pour des liaisons montantes/fournisseurs multiples

Une configuration courante est la suivante, dans laquelle il y a deux fournisseurs qui connectent un réseau local (ou même une seule machine) au grand Internet.

                                                               ________
                                          +------------+        /
                                          |            |       |
                            +-------------+ Provider 1 +-------
        __                  |             |            |     /
    ___/  \_         +------+-------+     +------------+    |
  _/        \__      |     if1      |                      /
 /             \     |              |                      |
| Local network -----+ Linux router |                      |     Internet
 \_           __/    |              |                      |
   \__     __/       |     if2      |                      \
      \___/          +------+-------+     +------------+    |
                            |             |            |     \
                            +-------------+ Provider 2 +-------
                                          |            |       |
                                          +------------+        \________

comment acheminer les réponses aux paquets qui arrivent par un fournisseur particulier, disons le fournisseur 1, et qui repartent par ce même fournisseur.

Fixons d'abord quelques noms symboliques. Soit $IF1 le nom de la première interface (if1 dans l'image ci-dessus) et $IF2 le nom de la seconde interface. Ensuite, laissez $IP1 être l'adresse IP associée à $IF1 et $IP2 l'adresse IP associée à $IF2. Ensuite, laissez $P1 être l'adresse IP de la passerelle du fournisseur 1, et $P2 l'adresse IP de la passerelle du fournisseur 2. Enfin, laissez $P1_NET être le réseau IP dans lequel se trouve $P1, et $P2_NET le réseau IP dans lequel se trouve $P2.

On crée deux tables de routage supplémentaires, dites T1 et T2. Elles sont ajoutées dans /etc/iproute2/rt_tables. Ensuite, vous configurez le routage dans ces tables comme suit :

  ip route add $P1_NET dev $IF1 src $IP1 table T1
  ip route add default via $P1 table T1
  ip route add $P2_NET dev $IF2 src $IP2 table T2
  ip route add default via $P2 table T2

Rien de spectaculaire, il suffit de construire une route vers la passerelle et de construire une route par défaut via cette passerelle, comme vous le feriez dans le cas d'un seul fournisseur en amont, mais en mettant les routes dans une table séparée par fournisseur. Notez que la route réseau suffit, car elle vous indique comment trouver n'importe quel hôte dans ce réseau, ce qui inclut la passerelle, comme spécifié ci-dessus. Ensuite, vous configurez la table de routage principale. C'est une bonne idée de router les choses vers le voisin direct à travers l'interface connectée à ce voisin. Notez les arguments `src', ils permettent de s'assurer que la bonne adresse IP sortante est choisie.

    ip route add $P1_NET dev $IF1 src $IP1
    ip route add $P2_NET dev $IF2 src $IP2

Ensuite, votre préférence pour le défaut de paiement ip route add default via $P1

Ensuite, vous configurez les règles de routage. Celles-ci choisissent en fait la table de routage à utiliser pour le routage. Vous voulez vous assurer que vous roulez vers une interface donnée si vous avez déjà l'adresse source correspondante : ip rule add from $IP1 table T1 ip rule add from $IP2 table T2

1voto

Matías Points 3008

Vous ne roulez pas les entrants vers un endroit spécifique, vous roulez les sortants...

le dernier saut (routeur ou autre) qui vous cible décidera de l'interface sur laquelle vous êtes contacté... par exemple, si une connexion est établie à partir de 192.168.1.x, elle ne routera pas vers le nic connecté à 192.168.3.x.

peut-être que quelque chose m'échappe ici... si ce n'est pas ce que vous voulez entendre, je pense que vous devez dessiner votre topologie de réseau ou nous donner plus d'informations.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X