Un routeur expérimental         

Objectif
: Créer un routeur avec un petit pc sous Linux équipé de plusieurs interfaces réseau (Ethernet, modem, serial ..) pour expérimenter les fonctions de routage et de filtrage.

Ce tutoriel a un intérêt purement pédagogique.

Les routeurs ont pour rôle de relier deux ou plusieurs réseaux afin de permettre la communication entre eux. On obtient ainsi un "réseau de réseaux". le réseau "internet" en est un bon exemple.

Quand un réseau local (LAN) comporte de nombreux ordinateurs (>300), il est avantageux de le segmenter en "VLAN". Pour faire communiquer ces vlans entre eux, on a aussi besoin d'un routeur (ou d'une fonction de routage sur l'un des actifs). Pour assurer la sécurité, on y adjoint des règles de filtrage.



Un peu de théorie...

   il existe deux catégories principales d'actifs : les ponts et le passerelles. Dans le cas d'un pont (angl. "bridge" ex. un commutateur ou "switch") , le protocole de la trame en sortie est identique au protocole de la trame en entrée; mais surtout, les adresses MAC source et destination de la trame sont inchangées. Dans le cas d'une passerelle (angl. "gateway" ex. un routeur), la trame de sortie est (potentiellement) encapsulée dans un autre protocole, l'adresse MAC source devient celle de l'interface de sortie du routeur, et l'adresse MAC destination est celle du noeud suivant.

  De plus, le masquage d'adresse (NAT) au niveau du routeur peut aussi remplacer l'adresse IP source du paquet, de façon à ce que les deux réseaux ne voient plus que leurs routeurs respectifs; même si ce n'est pas ce qui est cherché en premier lieu, c'est un plus pour la sécurité. les "box" des FAI français fonctionnent de cette manière.
Chapitre 1.


Un peu de théorie
Préparation matérielle

Le routeur expérimental ne sera pas exigeant en performance; ce peut être un vieux pc inutilisé; toutefois il doit posséder au minimum deux cartes réseaux :
- Ethernet (nommée eth0, eth1, ...)
- WIFI (nommée wlan0, wlan1, ...)
- modem (via RS232, nommée ttyS0)
- série (RS232 + câble croisé, nommée ttyS0, ttyS1,...)

résumé du matériel :
- 1 PC
- 2 cartes réseau ou plus
- 512 Mo de RAM
- disque dur >10Go
- 1 switch

Tu connecteras le switch à la carte Ethernet eth0, et le réseau existant à la carte Ethernet eth1 :

routeur-3-cartes.png


Chapitre 2.

Préparation matérielle


Installation de l'OS

Choisi une adresse réseau différente pour chacune des cartes réseau (ex.) :
- 192.168.223.254 (255.255.255.0) pour eth0
- dhcp pour eth1 (il sera relié au réseau existant)

Installe un OS de type Centos 5. (voir le tutoriel) :
  astuce : Modifie l'adresse IP pour eth0 en fonction de ce que tu as choisi ci-dessus


Chapitre 3.


Installation de l'OS

Choix des paramètres IP
Configuration du routage

====  Routage =====


En ligne de commande, active le routage en éditant le fichier :

nano /etc/sysctl.conf

Ajoute/modifie la ligne suivante dans le fichier
net.ipv4.ip_forward=1 


 Redémarre le pc

Le routeur est prêt !!

==== Masquage d'adresse (NAT) ==== (Optionnel)

 Le masquage d'adresse activé, toutes les trames qui sortiront vers le "réseau existant" le feront avec comme IP source l'adresse du routeur. Le routeur agit alors comme un mandataire; il lui incombe de mémoriser l'adresse IP source véritable du datagramme d'origine, pour pouvoir faire suivre la réponse venant de l'autre réseau.



En ligne de commande, active le NAT en éditant le fichier :

nano /etc/rc.local

Ajoute/modifie la ligne suivante dans le fichier
iptables -t nat -A POSTROUTING -j MASQUERADE



==== Filtrage ==== (Optionnel)
 




Chapitre 4.


Configuration du routage
Tests

Utilise l’utilitaire "tcpdump" pour capturer les trames qui traversent le routeur et compare les MAC et IP source et destination des trames, avant et après routage.
Chapitre 5.


Tests