Lorsque l’on crée une route par exemple en utilisant la commande « route add -net … », celle-ci fonctionnera jusqu’au redémarrage du système … voire même de l’interface réseau concernée. Pour créer une route statique, le plus efficace est de créer un petit fichier batch…
Le dossier « /etc/network/if-up.d/ » contient une série de scripts/batch qui sont exécutés une fois qu’une interface réseau est « up ». Pour créer des routes statiques, il suffit de rajouter un script dans ce dossier contenant les lignes de commandes désirées.
On commence donc par créer le fichier:
root@SDJ-Ubuntu:/etc/network/if-up.d# vi static-routes
On y ajoute les lignes de scripts sans oublier le « #!/bin/sh » en première ligne qui définit l’interpéteur qui doit être utilisé.
#!/bin/sh /sbin/route add -net 10.0.0.0 netmask 255.255.255.0 gw 192.168.1.10 dev eth0
On sauvegarde le fichier, et on le rend exécutable (puisqu’il s’agit d’un script).
root@SDJ-Ubuntu:/etc/network/if-up.d# chmod 755 static-routes
Il ne reste plus qu’à réinitialiser l’interface réseau:
root@SDJ-Ubuntu:/etc/network/if-up.d# ifconfig eth0 down root@SDJ-Ubuntu:/etc/network/if-up.d# ifconfig eth0 up
Et voilà la table de routage qui contient bel et bien la nouvelle route:
root@SDJ-Ubuntu:/etc/network/if-up.d# route -n Table de routage IP du noyau Destination Passerelle Genmask Indic Metric Ref Use Iface 10.0.0.0 192.168.1.10 255.255.255.0 UG 0 0 0 eth0 192.168.1.0 0.0.0.0 255.255.255.0 U 1 0 0 eth0 169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 eth0 0.0.0.0 192.168.1.1 0.0.0.0 UG 0 0 0 eth0