Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
linux:iproute2 [2006/06/19 09:02]
ofredj
linux:iproute2 [2010/01/12 13:29] (current)
Line 1: Line 1:
 +Olivier Fredj le 09/06/2006
 +Eric Auge le 19/06/2006
  
 +=====Objectif:​=====
 +Avoir plusieurs routes par défaut sur la même box Linux.
 +
 +===Intro:​===
 +Vous allez me dire mais à quoi ça peut bien me servir mon bon mossieur ?!
 +Dans mon cas ça m'a servi pour une migration, il a fallu que je bouge en douceur
 +plusieurs machines d'un vlan à un autre, et je ne pouvais donc pas faire des alias
 +tout bêtes sur mes cartes réseaux. Cette config est aussi assez utile si vous avez par
 +exemple plusieurs connexions internet.
 +
 +===Pré-requis:​===
 +  * Un kernel avec l'​option Linux Advanced router.
 +  * iproute2.
 +
 +=====Théorie:​=====
 +
 +Nous avons donc notre box Linux ayant au moins deux interfaces,
 +chacune sur un réseau différent, nous prendrons dans cet exemple
 +deux réseaux privés, mais c'est exactement la même chose avec des
 +réseaux publics.
 +
 +<​code>​
 +                             ​+------------------+
 +  [gw out 10.0.0.254/​24]-----| eth0 10.0.0.1/24 |
 +                             ​| ​                 |
 +  [gw out 10.0.1.254/​24]-----| eth1 10.0.1.1/24 |
 +                             ​+------------------+
 +</​code>​
 +
 +
 +Nous allons créer deux "​tables"​ de routage avec des routes par défaut différentes
 +pour chacun de nos réseaux, puis nous allons créer des règles permettant de router le trafic sur la
 +bonne table.
 +
 +=====Pratique:​=====
 +
 +Configuration des cartes réseaux:
 +
 +  ifconfig eth0 10.0.0.1 netmask 255.255.255.0
 +  ifconfig eth1 10.0.1.1 netmask 255.255.255.0
 +
 +Création des "​tables":​
 +
 +  echo "200 R0">>/​etc/​iproute2/​rt_tables
 +  echo "201 R1">>/​etc/​iproute2/​rt_tables
 +
 +Ajout des routes :
 +  ​
 +  # pour 10.0.0.0/24
 +  ip route add 10.0.0.0/24 dev eth0 table R0
 +  ip route add default via 10.0.0.254 table R0  ​
 +  ​
 +  # pour 10.0.1.0/24
 +  ip route add 10.0.1.0/24 dev eth1 table R1
 +  ip route add default via 10.0.1.254 table R1
 +
 +
 +
 +
 +Ajout des règles :
 +
 +  ip rule add from 10.0.0.0/24 table R0
 +  ip rule add from 10.0.1.0/24 table R1
 +
 +Voila c'est fini !
 +Si vous voulez router le trafic d'un troisième réseau via ces 2 réseaux, vous pouvez rajouter des règles "ip rule".
 +Vous pouvez aussi jouer avec iptables et la cible MARK, ip rule vous permet de créer des règles sur des marques posées par le fw, ça vous permet par exemple de faire passer le ssh et l'irc sur un réseau et le ftp sur l'​autre lien .
linux/iproute2.txt · Last modified: 2010/01/12 13:29 (external edit)