TP2 (Routage)
Memento
- Activer le routage sur une machine (ip forward) :
echo 1 > /proc/sys/net/ipv4/ip_forward
ousysctl -w net.ipv4.ip_forward=1
- Afficher la table de routage :
route -n
- Définir une route par défaut :
route add default gw <@gateway>
- Ajouter une route vers un réseau :
route add -net <@network> netmask <mask> gw <@gateway>
- Ajouter une route vers une machine particulière :
route add -host <@host> gw <@gateway>
- Pour supprimer une règle, il taper la commande
route del <…>
avec exactement les mêmes arguments que pour la commandeadd
.
Routage
Considérons le réseau 147.210.0.0/16 (cf. TP2) avec les configurations suivantes :
opeth (eth0,13.1) --- (eth0,13.2) immortal (eth1,12.2) --- | grave (eth1,14.1) | nile (eth0,16.2) --- (eth1,16.1) syl (eth0,14.2) ---
Voici un résumé des commandes à taper sur chaque machine pour que toutes communiquent !
opeth$ ifconfig eth0 147.210.13.1/24 opeth$ route add default gw 147.210.13.2 nile$ ifconfig eth0 147.210.16.2/24 nile$ route add default gw 147.210.16.1 immortal$ ifconfig eth0 147.210.13.2/24 immortal$ ifconfig eth1 147.210.12.2/24 immortal$ route add default gw 147.210.12.1 immortal$ echo 1 > /proc/sys/net/ipv4/ip_forward syl$ ifconfig eth0 147.210.14.2/24 syl$ ifconfig eth1 147.210.16.1/24 syl$ route add default gw 147.210.14.1 syl$ echo 1 > /proc/sys/net/ipv4/ip_forward grave$ ifconfig eth0 147.210.12.1/24 grave$ ifconfig eth1 147.210.14.1/24 grave$ route add -net 147.210.13.0/24 gw 147.210.12.2 grave$ route add -net 147.210.16.0/24 gw 147.210.14.2 grave$ echo 1 > /proc/sys/net/ipv4/ip_forward
En cas de problème, il faut effectuer un diagnostic avec les commandes ping et tcpdump -i any. Lorsqu'on indique une gateway, il faut que cette machine soit accessible directement via une route locale.
ARP
Pour afficher le cache ARP, il suffit de taper la commande arp -n.
Wireshark
Pour utiliser Wireshark depuis en exportant une capture depuis la machine virtuelle immortal :
immortal$ mount /mnt/host -o remount,rw immortal$ tcpdump -i eth0 immortal$ tcpdump -i eth0 -s 1500 -w /mnt/host/capture immortal$
Votre fichier capture se trouve dans le répertoire UML-TMP/immortal/ de votre machine hôte. Lancez Wireshark, ouvrez votre capture. Sélectionner la trame TCP qui vous intéresse et cliquez avec le bouton-droit sur “Follow TCP Stream” pour afficher tous les échanges associés à une connexion.