Wiki » Historique » Version 2
Guillaume LE GALL, 28/09/2017 16:29
1 | 1 | Guillaume LE GALL | h1. Softwire |
---|---|---|---|
2 | |||
3 | Softwire est un logiciel permettant de monter un tunnel IPv6 au dessus d'IPv4, ou l'inverse. Pour cela, il se base sur les technologies Layer Two Tunneling Protocol version 2 (L2TPv2) et Point-to-Point Protocol (PPP). |
||
4 | |||
5 | Softwire est une implémentation de "RFC 5571":https://tools.ietf.org/html/rfc5571 contenue dans ce projet et les projets associés. |
||
6 | |||
7 | La version actuelle n'utilise plus wide-dhcpv6, qui était utilisé notamment pour la délégation de préfixe au client. |
||
8 | |||
9 | h2. Installation |
||
10 | |||
11 | Ce guide est a été rédigé pour l'actuelle version stable de Debian, « "Stretch":https://wiki.debian.org/fr/DebianStretch ». |
||
12 | |||
13 | h3. Commun |
||
14 | |||
15 | h4. OpenL2TP |
||
16 | |||
17 | Installer les paquets : |
||
18 | |||
19 | <pre> |
||
20 | sudo apt-get install flex bison libreadline-dev ppp-dev dpatch libtirpc1 rpcbind |
||
21 | </pre> |
||
22 | |||
23 | Cloner le dépôt : |
||
24 | <pre> |
||
25 | $ git clone https://redmine.telecom-bretagne.eu/git/softwire-openl2tp |
||
26 | </pre> |
||
27 | |||
28 | Compiler OpenL2TP : |
||
29 | <pre> |
||
30 | $ make |
||
31 | </pre> |
||
32 | |||
33 | Faire un paquet binaire : |
||
34 | <pre> |
||
35 | $ dpkg-buildpackage --build=binary |
||
36 | </pre> |
||
37 | |||
38 | 2 | Guillaume LE GALL | Le paquet créé est dans le répertoire au niveau au dessus. Si il y a une erreur comme quoi il manque une clé privée pour signer le fichier ".buildinfo", ignorer le message. |
39 | 1 | Guillaume LE GALL | |
40 | Installer les paquets créés : |
||
41 | <pre> |
||
42 | $ sudo dpkg -i openl2tp_1.8-1_amd64.deb openl2tp-dbgsym_1.8-1_amd64.deb openl2tp-dev_1.8-1_all.deb |
||
43 | $ sudo dpkg -i --force-overwrite openl2tp-ppp_1.8-1_amd64.deb |
||
44 | $ sudo dpkg -i openl2tp-ppp-dbgsym_1.8-1_amd64.deb |
||
45 | </pre> |
||
46 | |||
47 | Si il reste des problèmes de dépendances à ce stade, utiliser : |
||
48 | <pre> |
||
49 | $ sudo apt-get --fix-missing install |
||
50 | </pre> |
||
51 | |||
52 | Et enfin configurer les paquets "laissés non configurés" aux étapes précédentes |
||
53 | (nécessaire seulement si il y a eu des problèmes…). |
||
54 | |||
55 | Pratique pour demander à dpkg de configurer les paquest laissés non configurés : |
||
56 | <pre> |
||
57 | $ sudo dpkg --configure --pending |
||
58 | 2 | Guillaume LE GALL | </pre> |
59 | 1 | Guillaume LE GALL | |
60 | 2 | Guillaume LE GALL | En cas de problème, pour obtenir les messages de débug d'OpenL2TP dans le syslog, modifier le fichier de configuration d'OpenL2TP en y mettant : |
61 | 1 | Guillaume LE GALL | |
62 | <pre> |
||
63 | OPENL2TPD_ARGS="-D -d API" |
||
64 | </pre> |
||
65 | |||
66 | h4. PPP |
||
67 | |||
68 | Si vous n'utilisez pas l'authentification Radius pour PPP, la version du système (actuellement 2.4.7.) devrait suffire. |
||
69 | |||
70 | *Attention :* PPP doit être installé après OpenL2TP, sans quoi le plugin PPP pour OpenL2TP ne sera pas à jour, et ne permettra pas de notifier OpenL2TP que le tunnel a été monté avec succès. Cela aura pour conséquence que OpenL2TP fermera le tunnel après un timeout de 2 minutes. |
||
71 | |||
72 | Installation des dépendances : |
||
73 | |||
74 | <pre> |
||
75 | $ sudo apt-get install libpcap0.8-dev libpam0g-dev zlib1g-dev |
||
76 | </pre> |
||
77 | |||
78 | Cloner le dépôt : |
||
79 | <pre> |
||
80 | $ git clone https://redmine.telecom-bretagne.eu/git/softwire-ppp |
||
81 | </pre> |
||
82 | |||
83 | Se placer sur la branche « debian/stretch ». |
||
84 | |||
85 | Pour construire le paquet, utiliser : |
||
86 | <pre> |
||
87 | dpkg-buildpackage -b -rfakeroot -us -uc |
||
88 | </pre> |
||
89 | |||
90 | Installer les paquets créés, en utilisant « --force-overwrite » quand c'est nécessaire. |
||
91 | |||
92 | h3. Softwire-concentrator |
||
93 | |||
94 | Ce logiciel joue le rôle de « serveur » |
||
95 | |||
96 | Cloner les dépôts : |
||
97 | <pre> |
||
98 | $ git clone https://redmine.telecom-bretagne.eu/git/softwire-concentrator |
||
99 | </pre> |
||
100 | |||
101 | Installer les dépendances : |
||
102 | <pre> |
||
103 | $ sudo apt-get install wide-dhcpv6-relay radvd |
||
104 | </pre> |
||
105 | |||
106 | Compiler (c'est un projet autotools) : |
||
107 | <pre> |
||
108 | $ autoreconf -i -v |
||
109 | </pre> |
||
110 | |||
111 | 2 | Guillaume LE GALL | Si le système se plaint que le fichier "missing" est trop vieux, le supprimer et recommencer. |
112 | 1 | Guillaume LE GALL | |
113 | Ensuite : |
||
114 | |||
115 | <pre> |
||
116 | $ ./configure |
||
117 | $ make |
||
118 | </pre> |
||
119 | |||
120 | Pour obtenir un paquet Debian: |
||
121 | |||
122 | <pre> |
||
123 | $ dpkg-buildpackage --build=binary |
||
124 | </pre> |
||
125 | |||
126 | 2 | Guillaume LE GALL | Le paquet créé est dans le répertoire au niveau au dessus. Si il y a une erreur comme quoi il manque une clé privée pour signer le fichier ".buildinfo", ignorer le message. |
127 | 1 | Guillaume LE GALL | |
128 | Installer le paquet créé. |
||
129 | |||
130 | 2 | Guillaume LE GALL | *Note :* Après mise à jour du code du paquet, penser à mettre à jour le fichier debian/changelog, à l'aide de l'outil dch, qui pré-remplit une nouvelle entrée dans ce fichier. |
131 | 1 | Guillaume LE GALL | |
132 | h3. Softwire-initiator |
||
133 | |||
134 | Ce logiciel joue le rôle de « client » |
||
135 | |||
136 | Cloner les dépôts : |
||
137 | <pre> |
||
138 | $ git clone https://redmine.telecom-bretagne.eu/git/softwire-initiator |
||
139 | </pre> |
||
140 | |||
141 | Installer les dépendances : |
||
142 | <pre> |
||
143 | sudo apt-get install wide-dhcpv6-client radvd lsb-base debhelper dh-systemd |
||
144 | </pre> |
||
145 | |||
146 | Construire le paquet : |
||
147 | <pre> |
||
148 | $ dpkg-buildpackage |
||
149 | </pre> |
||
150 | |||
151 | Installer le paquet : |
||
152 | <pre> |
||
153 | $ cd .. |
||
154 | $ sudo dpkg -i softwire-client_2.0~beta2_all.deb |
||
155 | </pre> |
||
156 | |||
157 | h2. Mise en place (setup) |
||
158 | |||
159 | h3. Concentrator |
||
160 | |||
161 | Sur la machine hébergeant le Concentrator, vérifier que le forwaring est activé : |
||
162 | <pre> |
||
163 | $ cat /etc/sysctl.conf | grep net.ipv6.conf.all.forwarding |
||
164 | net.ipv6.conf.all.forwarding=1 |
||
165 | </pre> |
||
166 | |||
167 | De même pour IPv4. |
||
168 | |||
169 | Configurer Softwire, en mettant à jour son fichier de configuration : |
||
170 | <pre> |
||
171 | $ vim /etc/softwire/softwire-concentrator.conf |
||
172 | </pre> |