Configuration réseau sous linux avec /etc/rc.local et ip¶
Voici comment utiliser /etc/rc.local plutôt que /etc/network/interface sur une machine linux/debian (ou assimilable).
Pourquoi faire ça ?¶
cf Laurent https://lists.tetaneutral.net/pipermail/technique/2016-March/002217.html:
Pour rappel sur /etc/network/interfaces & fichiers de ce genre : - la moindre erreur d'edit et vous perdez totalement le reseau - restart uniquement dans screen sinon perte totale du reseau - impossible de separer ipv4 et ipv6 donc perte de benefice du dual stack en cas de soucis vous perdez les deux a la fois ipv4 et ipv6 - impossible de transitionner etape par etape vers une autre configuration - au final fichier de configuration a la fois plus long et moins comprehensible qu'avec iproute2 - tres difficile de faire un setup autre que trivial (dhcp) en pratique
Critiques remarques sur cette technique:
<alarig> navarro: le souci c’est que /etc/rc.local est lu après le démarrage de tous les autres daemons <alarig> donc s’ils doivent binder une IP au start, ils vont se vautrer.
Configuration dans /etc/rc.local¶
Voici une exemple /etc/rc.local, attention à bien remplacer les IP4, IP6, XX et YY pour que ca colle à vos IP (voir plus bas) :
#!/bin/sh for i in /proc/sys/net/ipv6/conf/*; do for j in autoconf accept_ra; do echo 0 > $i/$j; done;done # Network configuration ip link set eth0 up ip addr add IP4/32 dev eth0 ip route add default via 91.224.148.0 dev eth0 onlink echo nameserver 91.224.149.254 > /etc/resolv.conf ip -6 addr add IP6/56 dev eth0 ip -6 addr add fe80::XX:YY/64 dev eth0 ip -6 route add default via fe80::31 dev eth0 onlink echo nameserver 91.224.148.10 >> /etc/resolv.conf echo nameserver 2a03:7220:8081:fe00::1 >> /etc/resolv.conf exit 0
- IP4 c'est votre IPv4 TTNN...
- IP6 c'est
votrel'une de vos IPv6 ttnn (a priori en _2a03:7220:80XX:YY00::1). - XX et YY ce sont les deux octets de fin de votre plage d'IPv6 (cf exemple ligne au dessus)
et dans /etc/network/interface on a juste :
auto lo iface lo inet loopback auto eth0 iface eth0 inet manual
Petites astuces¶
Avant de faire une modif, pensez à garder sous la main le résultat de :
$ ip addr
"""Ca donne la link local ipv6 qui pourra servir a recuperer le ssh sur la machine.""" cf https://lists.tetaneutral.net/pipermail/technique/2016-March/002217.html