Projet

Général

Profil

Config reseau linux avec rclocal » Historique » Version 2

Emmanuel Navarro, 17/11/2016 22:40

1 1 Emmanuel Navarro
h1. Configuration réseau sous linux avec _/etc/rc.local_ et _ip_
2 1 Emmanuel Navarro
3 1 Emmanuel Navarro
Voici comment utiliser _/etc/rc.local_ plutôt que _/etc/network/interface_ sur une machine linux/debian (ou assimilable).
4 1 Emmanuel Navarro
5 1 Emmanuel Navarro
h2. Pourquoi faire ça ?
6 1 Emmanuel Navarro
7 1 Emmanuel Navarro
cf Laurent https://lists.tetaneutral.net/pipermail/technique/2016-March/002217.html:
8 1 Emmanuel Navarro
9 1 Emmanuel Navarro
<pre>Pour rappel sur /etc/network/interfaces & fichiers de ce genre :
10 1 Emmanuel Navarro
11 1 Emmanuel Navarro
- la moindre erreur d'edit et vous perdez totalement le reseau
12 1 Emmanuel Navarro
- restart uniquement dans screen sinon perte totale du reseau
13 1 Emmanuel Navarro
- 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
14 1 Emmanuel Navarro
- impossible de transitionner etape par etape vers une autre configuration
15 1 Emmanuel Navarro
- au final fichier de configuration a la fois plus long et moins comprehensible qu'avec iproute2
16 1 Emmanuel Navarro
- tres difficile de faire un setup autre que trivial (dhcp) en pratique
17 1 Emmanuel Navarro
</pre>
18 1 Emmanuel Navarro
19 2 Emmanuel Navarro
Critiques remarques sur cette technique:
20 2 Emmanuel Navarro
<pre><alarig> navarro: le souci c’est que /etc/rc.local est lu après le démarrage de tous les autres daemons
21 2 Emmanuel Navarro
<alarig> donc s’ils doivent binder une IP au start, ils vont se vautrer.
22 2 Emmanuel Navarro
</pre>
23 1 Emmanuel Navarro
24 1 Emmanuel Navarro
h2. Configuration dans _/etc/rc.local_
25 1 Emmanuel Navarro
26 1 Emmanuel Navarro
Voici une exemple _/etc/rc.local_, *attention* à bien remplacer les IP4, IP6, XX et YY pour que ca colle à vos IP (voir plus bas) :
27 1 Emmanuel Navarro
<pre>#!/bin/sh 
28 1 Emmanuel Navarro
29 1 Emmanuel Navarro
# Network configuration
30 1 Emmanuel Navarro
ip link set eth0 up
31 1 Emmanuel Navarro
ip addr add IP4/32 dev eth0
32 1 Emmanuel Navarro
ip route add default via 91.224.148.0 dev eth0 onlink
33 1 Emmanuel Navarro
echo nameserver 91.224.149.254 > /etc/resolv.conf
34 1 Emmanuel Navarro
ip -6 addr add IP6/56 dev eth0
35 1 Emmanuel Navarro
ip -6 addr add fe80::XX:YY/64 dev eth0
36 1 Emmanuel Navarro
ip -6 route add default via fe80::31 dev eth0 onlink
37 1 Emmanuel Navarro
38 1 Emmanuel Navarro
echo nameserver 91.224.148.10 >> /etc/resolv.conf
39 1 Emmanuel Navarro
echo nameserver 2a03:7220:8081:fe00::1 >> /etc/resolv.conf
40 1 Emmanuel Navarro
41 1 Emmanuel Navarro
exit 0
42 1 Emmanuel Navarro
</pre>
43 1 Emmanuel Navarro
44 1 Emmanuel Navarro
* *IP4* c'est votre IPv4 TTNN... 
45 1 Emmanuel Navarro
* *IP6* c'est -votre- l'une de vos IPv6 ttnn (a priori en _2a03:7220:80XX:YY00::1). 
46 1 Emmanuel Navarro
* *XX* et *YY* ce sont les deux octets de fin de votre plage d'IPv6 (cf exemple ligne au dessus)
47 1 Emmanuel Navarro
48 1 Emmanuel Navarro
et dans _/etc/network/interface_ on a juste :
49 1 Emmanuel Navarro
<pre>auto lo
50 1 Emmanuel Navarro
iface lo inet loopback
51 1 Emmanuel Navarro
52 1 Emmanuel Navarro
auto eth0
53 1 Emmanuel Navarro
iface eth0 inet manual
54 1 Emmanuel Navarro
</pre>
55 1 Emmanuel Navarro
56 1 Emmanuel Navarro
57 1 Emmanuel Navarro
h2. Petites astuces
58 1 Emmanuel Navarro
59 1 Emmanuel Navarro
Avant de faire une modif, pensez à garder sous la main le résultat de :
60 1 Emmanuel Navarro
<pre>
61 1 Emmanuel Navarro
$ ip addr
62 1 Emmanuel Navarro
</pre>
63 1 Emmanuel Navarro
64 1 Emmanuel Navarro
"""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