[Routage Debian] 1 service, deux cartes réseaux, deux passerelles

1 service, deux cartes réseaux, deux passerelles [Routage Debian] - réseaux et sécurité - Linux et OS Alternatifs

Marsh Posté le 07-04-2010 à 18:16:37    

Bonjour
 
J'ai un soucis de routage galère là :/
 
J'ai un serveur ssh qui à l'origine n'avait qu'un carte réseau d'active,  
eth0 : 10.170.0.1 passerelle 10.170.0.254 , laquelle passerelle est un modem/routeur wanadoo.
 
un petit programme permet à des user de se connecter à ce service ssh depuis l'extérieur via la l'ip fixe de la wanadoo, tout va bien.
 
Problème du jour :  
 
Permettre à des gens de se connecter à ce même serveur via une ligne sdsl qui arrive sur le même site que là ou arrive la ligne wanadoo mais pas sur le meme sous reseaux, de passerelle 10.170.12.254 TOUT EN PERMETTANT à ceux qui se connectent par la wanadoo de continuer à le faire en attendant de changer le programme de connexion tous nos collaborateurs nomades, qui au final n'utiliseront plus du tout la ligne wanadoo.
 
J'ai donc activé la deuxième carte réseaux :
eth1 : 10.170.12.1 passerelle 10.170.12.254.
 
Et là, c'est du grand n'importe quoi.
Shorewall accepte les connexions de la nouvelle ligne mais la connexion ssh ne s'établie pas, j'imagine qu'il essaie de la renvoyer vers la 10.170.0.254
 
Mais je ne vois pas quelle route imposer à mon /etc/network/interface pour que ca fonctionne.
Une idée   :??: :sweat:  
Suis dans le caca là :/


---------------
Mon topic de vente - Mon feed-back
Reply

Marsh Posté le 07-04-2010 à 18:16:37   

Reply

Marsh Posté le 07-04-2010 à 18:32:11    

Edit : Ça a l'air de fonctionner "au petit bonheur la chance", là je viens de re-essayer ca fonctionne alors que ca ne fonctionnait pas tout à l'heure et je n'ai rien changé depuis. Ca me fait un poil flipper quand même.


---------------
Mon topic de vente - Mon feed-back
Reply

Marsh Posté le 07-04-2010 à 19:17:00    

Tu peux nous faire un schéma de la topo ?

Reply

Marsh Posté le 07-04-2010 à 19:20:06    

à coup de policy based routing tu devrais être à même de régler le problème de manière "déterminée" (en te basant sur la source c'est à dire l'adresse IPv4 de ton eth1, tu forces le routage  vers la bonne gateway)
>> http://lartc.org/howto/

 

il date un poil mais il est toujours valables sinon :
>> http://linux-ip.net/

 

(je n'ai pas encore eu le temps de le parcourir, je l'ai découvert récemment)

 


Message édité par o'gure le 07-04-2010 à 19:20:58

---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 07-04-2010 à 22:23:18    

Ha c'est dommage, j'ai perdu la conf exacte que j'utilisais à un moment ... sinon j'aurai pu te la copier/coller ....
 
Le pb était comparable au tien j'avais 2 box ADSL, et un serveur sur le LAN qui devait être joignable depuis les 2 connexions... donc une configuration "multi wan" (mot clé à chercher sur google ...)
 
Le principe pour gérer ça sous Linux est d'une part de définir plusieurs tables de routage, et d'autre part d'associer chaque table à une adresse IP du serveur.
 
Regarde ce genre d'article pour des exemples:
http://blog.taragana.com/index.php [...] -on-linux/
 
Je ne suis pas certain qu'on puisse intégrer ça "proprement" dans les distribs classiques (à mon avis il faut obligatoirement se faire un script genre rc.local ...)

Message cité 2 fois
Message édité par [Albator] le 07-04-2010 à 22:23:43
Reply

Marsh Posté le 07-04-2010 à 22:35:56    

kisscoolz a écrit :

Tu peux nous faire un schéma de la topo ?


Je mets que l'essentiel bien sur, mais pas sur que ca éclaire
 
http://hfr-rehost.net/preview/self/pic/0769cc3153b4159ebe8e4f34502478322bd2c9ab.jpeg


---------------
Mon topic de vente - Mon feed-back
Reply

Marsh Posté le 07-04-2010 à 22:37:23    

[Albator] a écrit :

Ha c'est dommage, j'ai perdu la conf exacte que j'utilisais à un moment ... sinon j'aurai pu te la copier/coller ....
 
Le pb était comparable au tien j'avais 2 box ADSL, et un serveur sur le LAN qui devait être joignable depuis les 2 connexions... donc une configuration "multi wan" (mot clé à chercher sur google ...)
 
Le principe pour gérer ça sous Linux est d'une part de définir plusieurs tables de routage, et d'autre part d'associer chaque table à une adresse IP du serveur.
 
Regarde ce genre d'article pour des exemples:
http://blog.taragana.com/index.php [...] -on-linux/
 
Je ne suis pas certain qu'on puisse intégrer ça "proprement" dans les distribs classiques (à mon avis il faut obligatoirement se faire un script genre rc.local ...)


 
:/
Tout ca pour un truc temporaire, je sens que j'ai pas fini d'en chier. Je me le sens moyen là
 :jap:  


---------------
Mon topic de vente - Mon feed-back
Reply

Marsh Posté le 07-04-2010 à 22:39:39    

[Albator] a écrit :

Ha c'est dommage, j'ai perdu la conf exacte que j'utilisais à un moment ... sinon j'aurai pu te la copier/coller ....
 
Le pb était comparable au tien j'avais 2 box ADSL, et un serveur sur le LAN qui devait être joignable depuis les 2 connexions... donc une configuration "multi wan" (mot clé à chercher sur google ...)
 
Le principe pour gérer ça sous Linux est d'une part de définir plusieurs tables de routage, et d'autre part d'associer chaque table à une adresse IP du serveur.
 
Regarde ce genre d'article pour des exemples:
http://blog.taragana.com/index.php [...] -on-linux/
 
Je ne suis pas certain qu'on puisse intégrer ça "proprement" dans les distribs classiques (à mon avis il faut obligatoirement se faire un script genre rc.local ...)


 
Humm, je viens de parcourir le lien, je suis pas sur de bien suivre mais en fait ca joue là non ?
 
/usr/sbin/gwping
 
On link l'ip de chaque carte réseau avec la passerelle qu'on veut, c'est bien ça ?
 
et les lignes ajoutée dans /etc/rc.local
c'est quoi la différence avec les ajouter dans /etc/networking/interface ?


Message édité par tuxbleu le 07-04-2010 à 22:47:14

---------------
Mon topic de vente - Mon feed-back
Reply

Marsh Posté le 08-04-2010 à 07:38:04    

Juste comme ça, c'est clairement présenté dans mon premier lien, chapitre 4...
enfin je dis ça...

 
Citation :

4.2.1. Split access

 

The first is how to route answers to packets coming in over a particular provider, say Provider 1, back out again over that same provider.

Message cité 1 fois
Message édité par o'gure le 08-04-2010 à 07:39:12

---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 08-04-2010 à 11:55:26    

o'gure a écrit :

Juste comme ça, c'est clairement présenté dans mon premier lien, chapitre 4...
enfin je dis ça...
 

Citation :

4.2.1. Split access
 
The first is how to route answers to packets coming in over a particular provider, say Provider 1, back out again over that same provider.



 :sweat:  
Excuse, je m'étais noyé dans les chapitres  :sweat:  
 :jap:  :jap:


---------------
Mon topic de vente - Mon feed-back
Reply

Marsh Posté le 08-04-2010 à 11:55:26   

Reply

Marsh Posté le 08-04-2010 à 12:29:14    

Le seul passage que je ne comprends pas, c'est celui là :
 
Warning  
 
Reader Rod Roark notes: 'If $P0_NET is the local network and $IF0 is its interface, the following additional entries are desirable:
 
ip route add $P0_NET     dev $IF0 table T1
ip route add $P2_NET     dev $IF2 table T1
ip route add 127.0.0.0/8 dev lo   table T1
ip route add $P0_NET     dev $IF0 table T2
ip route add $P1_NET     dev $IF1 table T2
ip route add 127.0.0.0/8 dev lo   table T2                                      


---------------
Mon topic de vente - Mon feed-back
Reply

Marsh Posté le 08-04-2010 à 12:54:29    

Bon, là c'est fort de café, j'ai une erreur " :42: duplicate option"
 
 
 

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
 
# The loopback network interface
auto lo
iface lo inet loopback
 
# The primary network interface
#allow-hotplug eth0
auto eth0
iface eth0 inet static
 address 10.170.0.1
 netmask 255.255.255.0
 #gateway 10.170.0.254
 
#allow-hotplug eth1
auto eth1
iface eth1 inet static
 address 10.170.12.1
 netmask 255.255.255.0
 #gateway 10.170.12.254
 
#up route add 10.170.0.0 netmask 255.255.255.0 dev eth0
#route add default gw 10.170.12.254
 
ip route add 10.170.0.0/24 dev eth0 src 10.170.0.1 table adsl
>ligne 42 : ip route add default via 10.170.0.254 table adsl


 
Quand j'ai eu l'erreur j'ai commenté les gateway, flushé les routes puis relancé le service network : même erreur.
Une idée ? [:alph-one]


---------------
Mon topic de vente - Mon feed-back
Reply

Marsh Posté le 08-04-2010 à 13:08:50    

une idée, non.
une question, oui.
 
les commandes route add default et ip route add... tu les as rentré dans le fichiers /etc/network/interfaces ?


---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 08-04-2010 à 13:31:53    

o'gure a écrit :

une idée, non.
une question, oui.
 
les commandes route add default et ip route add... tu les as rentré dans le fichiers /etc/network/interfaces ?


oui  
C'est nimporte quoi ? [:alph-one]  
Mes précédentes routes, je les mettais là, à base de "up route add...", il en reste d'ailleurs une trace commentée.
L'exemple parle de rc.local, en effet, mais fondamentalement ca change quelque chose ?


---------------
Mon topic de vente - Mon feed-back
Reply

Marsh Posté le 08-04-2010 à 14:12:33    

oui, n'importe quoi [:romf]

 

up route machin... oui, pour une interface donnée
mais là il s'agit de la commande "ip" à proprement parler, à faire en root dans un terminal.

Message cité 1 fois
Message édité par o'gure le 08-04-2010 à 14:12:46

---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 08-04-2010 à 14:33:01    

o'gure a écrit :

oui, n'importe quoi [:romf]
 
up route machin... oui, pour une interface donnée
mais là il s'agit de la commande "ip" à proprement parler, à faire en root dans un terminal.


 
 :jap:  
 
Du coup question idiote, mais tant que j'y suis :
Je dois indiquer la passerelle de mes cartes reseaux dans /etc/network/interface, ou c'est obsolette car elles seront définies avec les commandes ip.. ?
 
edit : je me reponds : faut que je commente mes passerelles dans /etc/network/interface


Message édité par tuxbleu le 08-04-2010 à 15:50:48

---------------
Mon topic de vente - Mon feed-back
Reply

Marsh Posté le 08-04-2010 à 15:33:55    

Bon, presque tout passe, sauf ca en rouge :  
 
   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
 
Next you set up the main routing table. It is a good idea to route things to the direct neighbour through the interface connected to that neighbour. Note the `src' arguments, they make sure the right outgoing IP address is chosen.
 
     ip route add $P1_NET dev $IF1 src $IP1
     ip route add $P2_NET dev $IF2 src $IP2

   
 
Then, your preference for default route:
 
     ip route add default via $P1
   
 
Next, you set up the routing rules. These actually choose what routing table to route with. You want to make sure that you route out a given interface if you already have the corresponding source address:
 
     ip rule add from $IP1 table T1
     ip rule add from $IP2 table T2
   
 
 
 
Je viens de tester, tout à l'air de tourner malgrès ça :)
Ces lignes, si je les mets dans rc.local, ca sera bon au prochain reboot ?
 
 :jap:  
 


---------------
Mon topic de vente - Mon feed-back
Reply

Marsh Posté le 08-04-2010 à 16:58:24    

tuxbleu a écrit :

Bon, presque tout passe, sauf ca en rouge :


Si nous n'avons pas les messages d'erreur, on ne va pas t'aider...


---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 08-04-2010 à 17:10:09    

o'gure a écrit :


Si nous n'avons pas les messages d'erreur, on ne va pas t'aider...


C'est pleins de bon sens ça  :jap:  
 

RTNETLINK answers: File exists


 
Je ne sais pas si c'est le hasard, mais même sans ca ca marche bien pour le moment.
J'imagine que cette info est contenue dans "/etc/networking/interface" , mais je ne vois pas bien où :/ , ya vraiment pas grand chose dessus :  
 

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
 
# The loopback network interface
auto lo
iface lo inet loopback
 
# The primary network interface
#allow-hotplug eth0
auto eth0
iface eth0 inet static
 address 10.170.0.1
 netmask 255.255.255.0
 #gateway 10.170.0.254
 
#allow-hotplug eth1
auto eth1
iface eth1 inet static
 address 10.170.12.1
 netmask 255.255.255.0
 #gateway 10.170.12.254


---------------
Mon topic de vente - Mon feed-back
Reply

Marsh Posté le 08-04-2010 à 17:49:05    

En fait oui, ça signifie que la conf est déjà existante. Cette ligne indique à la table de routage que pour joindre le réseau local de ta carte (mettons) eth0, c'est directement joignable sur eth0 et il faut utiliser l'adresse d'eth0 de préférence. Et ceci pour les deux interfaces.

 

C'est une route  rajouté automatiquement par le kernel lorsqu'il adresse une interface réseau. Donc pas gênant de ne pas mettre explicitement cela.

 


pour la persistance au reboot, je ne suis plus sûr. Normalement les règles sont écrites dans  /etc/iproute2/rt_tables, mais j'ai un doute sur la réinstanciation automatique au reboot.

 

Le plus simple, c'est de tester. Si ça ne se restaure pas de soit même, tu te refais un bête script de démarrage. Dans la doc que je t'ai filé tu as le moyen de voir si c'est correctement réinstancier en lisant les tables de routages par règle.

Message cité 1 fois
Message édité par o'gure le 08-04-2010 à 17:50:20

---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 08-04-2010 à 20:12:37    

o'gure a écrit :

En fait oui, ça signifie que la conf est déjà existante. Cette ligne indique à la table de routage que pour joindre le réseau local de ta carte (mettons) eth0, c'est directement joignable sur eth0 et il faut utiliser l'adresse d'eth0 de préférence. Et ceci pour les deux interfaces.
 
C'est une route  rajouté automatiquement par le kernel lorsqu'il adresse une interface réseau. Donc pas gênant de ne pas mettre explicitement cela.
 
 
pour la persistance au reboot, je ne suis plus sûr. Normalement les règles sont écrites dans  /etc/iproute2/rt_tables, mais j'ai un doute sur la réinstanciation automatique au reboot.
 
Le plus simple, c'est de tester. Si ça ne se restaure pas de soit même, tu te refais un bête script de démarrage. Dans la doc que je t'ai filé tu as le moyen de voir si c'est correctement réinstancier en lisant les tables de routages par règle.


 :jap:  
 
J'ai mis ces règles dans rc.local, j'ai rebooté, j'ai fais quelques tests, pas une erreur.
je vais voir comment vérifier avec ton lien  :jap:


---------------
Mon topic de vente - Mon feed-back
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed