Projet

Général

Profil

LIR » Historique » Version 334

youpi, 17/09/2020 14:42

1 328
# LIR
2
3 330 sacha
4
## Activité de LIR Aquilenet
5 329 sacha
6 331 sacha
Pour tous les contrats faire signer le document https://atelier.aquilenet.fr/attachments/download/582/Aquilenet_LIR-Stolon-Convention-20180927.odt
7 329 sacha
8 332 youpi
### Ajouter un admin sur les objets RIPE
9
10
Il suffit d'ajouter un champ auth sur 
11
https://apps.db.ripe.net/db-web-ui/#/lookup?source=ripe&key=fr-aquilenet-1-mnt&type=mntner
12
13 329 sacha
### Fourniture d'un ASN
14
15
16
---
17
18 328
https://lirportal.ripe.net/  
19
https://www.ripe.net/manage-ips-and-asns  
20
https://apps.db.ripe.net/db-web-ui/#
21
22
    whois -i mnt-by fr-aquilenet-1-mnt
23
    
24
    # Préféré, car retour d'erreur immédiat:
25
    gpg --clearsign updates.txt (will produce updates.txt.asA c)
26
    curl --data-urlencode DATA@updates.txt.asc http://syncupdates.db.ripe.net
27
    
28
    # Sinon, par mail:
29
    gpg --clearsign updates.txt (will produce updates.txt.asc)
30
    mail -s 'Bulk inetnum update' auto-dbm@ripe.net < updates.txt.asc
31
    # ou alors juste coller dans un mail qu'on signe normalement
32
33
## blabla
34
35
Kazar ferme ses portes, on doit donc trouver un autre LIR. Dans les associatifs, il y a
36
37
  - Gitoyen, qui est LIR pour pas mal d'autres assos de la fédé
38
  - Tetaneutral, qui prône pour la création de nouveaux LIRs
39
  - Web4all, qui n'a pas répondu à nos demandes.
40
41
On a demandé sur la liste membres@ffdn, certaines assos pourraient être intéressées:
42
43
  - Ilico
44
  - AIL-Network (mais plus maintenant: sont en train de se constituer LIR avec CARBODEBIT et WIFI SAINT JULIEN)
45
  - SamesWireless
46
  - tetaneutral peut prendre des parts s'il y a besoin
47
48
Par ailleurs, il y a des discussions en cours au RIPE sur la diminution du préfixe attribué aux LIR, on passerait d'un /22 à un /24:
49
50
https://www.ripe.net/ripe/mail/archives/address-policy-wg/2017-September/012087.html
51
52
On a finalement décidé de devenir LIR
53
54
## Déroulement chronologique
55
56
  - 31/10/17 Demande envoyée, NCC\#2017106202
57
  - 02/11/17 Demande de précisions sur le nom de l'association de la part du RIPE
58
  - 06/11/17 Confirmation enregistrement approuvé ticket 11430
59
  - 13/11/17 Demande du RIPE de confirmation qu'on n'a pas de numéro de TVA
60
  - 14/11/17 Réception de la facture (invoice). **Note:** Malheureusement il y a un délai de 48h pour pouvoir activer un bénéficiaire étranger chez le crédit coop :/ Il aurait fallu demander le numéro de compte plus tôt pour éviter d'attendre.
61
  - 15/11/17 Réception de contrat "RIPE NCC Standard Service Agreement"
62
  - 16/11/17 Règlement invoice
63
  - 17/11/17 Envoi contrat signé via le DHL prépayé.
64
  - 20/11/17 Confirmation par le RIPE du règlement de l'invoice
65
  - 21/11/17 Création de [ORG-AA1915-RIPE](https://apps.db.ripe.net/search/lookup.html?source=ripe&key=ORG-AA1915-RIPE&type=organisation) , [Aquilenet Contact](https://apps.db.ripe.net/search/lookup.html?source=ripe&key=AC35087-RIPE&type=person) , [Abuse-C Role](https://apps.db.ripe.net/search/lookup.html?source=ripe&key=AR43951-RIPE&type=role) , [fr-aquilenet-1-mnt](https://apps.db.ripe.net/search/lookup.html?source=ripe&key=fr-aquilenet-1-mnt&type=mntner)
66
  - 21/11/17 Requête du /22 : Your IPv4 allocation request is created successfully , Ticket 18000 , requête du /29: Your IPv6 allocation request is created successfully, Ticket 18003
67
  - 23/11/17 "Today, the RIPE NCC allocated the following IPv4 prefix: 185.233.100.0/22 to AQUILENET (fr.aquilenet)" , "Today, the RIPE NCC allocated the following IPv6 prefix: 2a0c:e300::/29 to AQUILENET (fr.aquilenet)"
68
  - 23/11/17 Création des objets inetnum et inet6num pour notre usage actuel (2 /24 et un /32)
69
  - 23/11/17 Création des objets route et route6 pour déclarer notre routage par notre AS
70
  - 23/11/17 Création des objets domain pour configurer le RDNS
71
72
  - DONE: obtenir d'Anteor qu'il
73
74
* Passe AS198985 sur notre mnt (fr-aquilenet-1-mnt)  
75
76
* Passe la person Alexandre Borrut AB25125-RIPE sur notre mnt (fr-aquilenet-1-mnt)  
77
* Transfère AS198985 à notre LIR ORG-AA1915-RIPE, procédure https://my.ripe.net/#/update-registry/provide-details?onBehalfOfEndUser=false\&updateRegistryRequestType=transfer , https://www.ripe.net/manage-ips-and-asns/resource-transfers-and-mergers/required-documents-for-registry-updates https://www.ripe.net/manage-ips-and-asns/resource-transfers-and-mergers/transfers/transfer-agreement-template
78
79
* Didier clapier dit que ça serait plutôt https://www.ripe.net/manage-ips-and-asns/resource-management/number-resources/independent-resources/information-on-independent-resources-for-end-users
80
81
## Objets RIPE
82
83
Liste de nos objets:
84
85
    whois -i mnt-by fr-aquilenet-1-mnt
86
87
  - LIR [ORG-AA1915-RIPE](https://apps.db.ripe.net/db-web-ui/#/lookup?source=ripe&key=ORG-AA1915-RIPE&type=organisation)
88
  - mnter [fr-aquilenet-1-mnt](https://apps.db.ripe.net/db-web-ui/#/lookup?source=ripe&key=fr-aquilenet-1-mnt&type=mntner)
89
  - role [AR43951-RIPE](https://apps.db.ripe.net/db-web-ui/#/lookup?source=ripe&key=AR43951-RIPE&type=role)
90
  - role [AC35116-RIPE](https://apps.db.ripe.net/db-web-ui/#/lookup?source=ripe&key=AC35116-RIPE&type=role)
91
  - person Aquilenet Contact [AC35087-RIPE](https://apps.db.ripe.net/db-web-ui/#/lookup?source=ripe&key=AC35087-RIPE&type=person)
92
  - person Alexandre Borrut [AB25125-RIPE](https://apps.db.ripe.net/db-web-ui/#/lookup?source=ripe&key=AB25125-RIPE&type=person)
93
  - person Samuel Thibault [ST11379-RIPE](https://apps.db.ripe.net/db-web-ui/#/lookup?source=ripe&key=ST11379-RIPE&type=person)
94
  - key-cert [PGPKEY-7D069EE6](https://apps.db.ripe.net/db-web-ui/#/webupdates/display/RIPE/key-cert/PGPKEY-7D069EE6)
95
  - aut-num [AS198985](https://apps.db.ripe.net/db-web-ui/#/lookup?source=ripe&key=AS198985&type=aut-num)
96 333 youpi
97 334 youpi
inetnums
98
99 328
  - inetnum [185.233.100.0/22](https://apps.db.ripe.net/db-web-ui/#/lookup?source=ripe&key=185.233.100.0%20-%20185.233.103.255&type=inetnum)
100
  - inetnum [185.233.100.0/23](https://apps.db.ripe.net/db-web-ui/#/lookup?source=ripe&key=185.233.100.0%20-%20185.233.101.255&type=inetnum)
101
  - inetnum [185.233.100.0/24](https://apps.db.ripe.net/db-web-ui/#/myresources/detail/inetnum/185.233.100.0%2520-%2520185.233.100.255)
102
  - inetnum [185.233.101.0/24](https://apps.db.ripe.net/db-web-ui/#/myresources/detail/inetnum/185.233.101.0%2520-%2520185.233.101.255)
103
  - inetnum [185.233.102.0/26](https://apps.db.ripe.net/db-web-ui/#/myresources/detail/inetnum/185.233.102.0%2520-%2520185.233.102.63)
104 333 youpi
  - inetnum [185.1.3.0/24](https://apps.db.ripe.net/db-web-ui/lookup?source=ripe&key=185.1.3.0%20-%20185.1.3.255&type=inetnum)
105 328
  - inet6num [2a0c:e300::/29](https://apps.db.ripe.net/db-web-ui/#/lookup?source=ripe&key=2a0c:e300::%2F29&type=inet6num)
106 333 youpi
  - inet6num [2a0c:e300::/32](https://apps.db.ripe.net/db2001:67c:408::/48-web-ui/#/lookup?source=ripe&key=2a0c:e300::%2F32&type=inet6num)
107
  - inet6num [2001:67c:408::/48](https://apps.db.ripe.net/db-web-ui/lookup?source=ripe&key=2001:67c:408::%2F48&type=inet6num)
108
109 334 youpi
routes
110
111 328
  - route [185.233.100.0/22](https://apps.db.ripe.net/db-web-ui/#/webupdates/display/RIPE/route/185.233.100.0%252F22AS198985)
112
  - route6 [2a0c:e300::/29](https://apps.db.ripe.net/db-web-ui/#/webupdates/display/RIPE/route6/2a0c%253Ae300%253A%253A%252F29AS198985)
113 334 youpi
114
RDNS
115 333 youpi
116 328
  - domain [100.233.185.in-addr.arpa](https://apps.db.ripe.net/db-web-ui/#/lookup?source=ripe&key=100.233.185.in-addr.arpa&type=domain)
117
  - domain [101.233.185.in-addr.arpa](https://apps.db.ripe.net/db-web-ui/#/lookup?source=ripe&key=101.233.185.in-addr.arpa&type=domain)
118
  - domain [102.233.185.in-addr.arpa](https://apps.db.ripe.net/db-web-ui/#/lookup?source=ripe&key=102.233.185.in-addr.arpa&type=domain)
119
  - domain [103.233.185.in-addr.arpa](https://apps.db.ripe.net/db-web-ui/#/lookup?source=ripe&key=103.233.185.in-addr.arpa&type=domain)
120
  - domain [0.0.3.e.c.0.a.2.ip6.arpa](https://apps.db.ripe.net/db-web-ui/#/lookup?source=ripe&key=0.0.3.e.c.0.a.2.ip6.arpa&type=domain)
121
  - domain [1.0.3.e.c.0.a.2.ip6.arpa](https://apps.db.ripe.net/db-web-ui/#/lookup?source=ripe&key=1.0.3.e.c.0.a.2.ip6.arpa&type=domain)
122
  - domain [2.0.3.e.c.0.a.2.ip6.arpa](https://apps.db.ripe.net/db-web-ui/#/lookup?source=ripe&key=2.0.3.e.c.0.a.2.ip6.arpa&type=domain)
123
  - domain [3.0.3.e.c.0.a.2.ip6.arpa](https://apps.db.ripe.net/db-web-ui/#/lookup?source=ripe&key=3.0.3.e.c.0.a.2.ip6.arpa&type=domain)
124
  - domain [4.0.3.e.c.0.a.2.ip6.arpa](https://apps.db.ripe.net/db-web-ui/#/lookup?source=ripe&key=4.0.3.e.c.0.a.2.ip6.arpa&type=domain)
125
  - domain [5.0.3.e.c.0.a.2.ip6.arpa](https://apps.db.ripe.net/db-web-ui/#/lookup?source=ripe&key=5.0.3.e.c.0.a.2.ip6.arpa&type=domain)
126
  - domain [6.0.3.e.c.0.a.2.ip6.arpa](https://apps.db.ripe.net/db-web-ui/#/lookup?source=ripe&key=6.0.3.e.c.0.a.2.ip6.arpa&type=domain)
127
  - domain [7.0.3.e.c.0.a.2.ip6.arpa](https://apps.db.ripe.net/db-web-ui/#/lookup?source=ripe&key=7.0.3.e.c.0.a.2.ip6.arpa&type=domain)
128
129
Tout se passe maintenant sur https://lirportal.ripe.net https://www.ripe.net/manage-ips-and-asns https://apps.db.ripe.net/db-web-ui/#
130
131 329 sacha
---
132
---
133
134
## *vieux pour les archives: Migration de LIR & IP*
135 328
136
  - {background:lightgreen} DONE : mise à jour bgpd.conf
137
  - {background:lightgreen} DONE : mise à jour bgpd blackhole
138
  - {background:lightgreen} DONE : mise à jour bgpd nlnog =\> mail
139
  - {background:lightgreen} DONE : mise à jour firewall
140
  - {background:lightgreen} DONE : mise à jour RDNS
141
  - {background:lightgreen} DONE : mise à jour carp cerbere
142
  - {background:lightgreen} DONE : mise à jour scripts Xen
143
  - mise à jour des machines une par une... configuration /etc/network/interfaces, firewall, conf serveurs
144
  - VMs Apollon
145
      - acaqb =\> mail
146
      - {background:lightgreen} DONE : agatas-aqui-vm1 =\> mail
147
      - <span style="background:lightgreen;">DONE agatasTeT =\> mail</span>
148
      - {background:lightgreen} DONE : alcyon \[04/12/17 - 23:25\]
149
      - ~~ate~~
150
      - bayonnet =\> mail
151
      - bayonnet2 =\> mail
152
      - {background:lightgreen} DONE : cpprod
153
      - {background:lightgreen} DONE cpprod-dev
154
      - {background:lightgreen} DONE :dev-cortex =\> mail
155
      - ~~dev-iidre =\> mail~~
156
      - {background:lightgreen} DONE :dev-sacha
157
      - {background:lightgreen} DONE: dionysos
158
      - {background:lightgreen} DONE :duniter
159
      - ecce-info
160
      - {background:lightgreen} DONE :embedded-freedom =\> mail
161
      - {background:lightgreen} DONE :f1te =\> mail
162
      - {background:lightgreen} DONE : griffith =\> mail
163
      - {background:lightgreen} DONE : guilarr =\> mail
164
      - ~~guzel~~
165
      - {background:lightgreen} DONE hades (à finir en dernier pour garder les IPs DNS récursif disponibles)
166
      - {background:lightgreen} DONE :hermes
167
      - {background:lightgreen} DONE iidre
168
      - {background:lightgreen} DONE iris
169
      - {background:lightgreen} DONE janus
170
      - motv =\> mail
171
      - {background:lightgreen} DONE : natha =\> mail
172
      - {background:lightgreen} DONE neutral
173
      - {background:lightgreen} DONE nlnog =\> mail
174
      - {background:lightgreen} DONE : sanssoucis =\> mail
175
      - {background:lightgreen} DONE : tchaikovski =\> irc fx
176
      - {background:lightgreen} DONE : tdn =\> mail
177
      - ~~test~~ \<= ???
178
      - ~~triton~~
179
      - tyche
180
      - {background:lightgreen} DONE : web.openbeelab
181
  - VMs artemis
182
      - {background:lightgreen} DONE : athena (à finir en dernier pour garder la supervision)
183
      - {background:lightgreen} DONE : demeter
184
      - {background:lightgreen} DONE : eos
185
      - {background:lightgreen} DONE : gaia (à finir en dernier pour garder les IPs DNS récursif disponibles)
186
      - {background:lightgreen} DONE hera (à finir en dernier pour le ldap & such)
187
      - {background:lightgreen} DONE hestia
188
      - {background:lightgreen} DONE labx-ipmi =\> mail
189
      - {background:lightgreen} DONE persephone
190
      - ~~test~~
191
  - Elidee =\> mail+ relance 21/12
192
  - {background:lightgreen} DONE : Sayanet
193
  - ENCOURS: Zeus
194
  - Guix =\> mail (machine pas au dc en ce moment)
195
  - {background:lightgreen} DONE : Poseidon
196
  - {background:lightgreen} DONE : L@BX
197
  - {background:lightgreen} DONE : PDU 7920
198
  - PDU 7821: pas réussi à m'y connecter: mot de passe invalide...
199
  - {background:lightgreen} DONE : styx
200
  - mise à jour des VPNs: nouvelles IPs activées, on attend les confirmations des gens avant de les basculer sur la nouvelle IP
201
  - {background:lightgreen} DONE : corriger doc compta IP fixe VPN
202
  - {background:lightgreen} DONE : mise à jour dhcp
203
  - mise à jour DNS au fur et à mesure, refaire une passe complète pour vérifier.
204
  - {background:lightgreen} DONE Prévenir les abonnés qu'on a changé le DNS: ce n'est plus 141.255.128.100 / 101, mais 185.233.100.100 / 101
205
  - Finir de corriger le wiki
206
207
## Mise à jour d'une VM
208
209
Tout le réseau 141.255.128.0/24 devient 185.233.100.0/24 et 2a01:474::/32 devient 2a0c:e300::/32
210
211
Dans cet exemple, on travaille sur la VM gaia (141.255.128.2 -\> 185.233.100.2)
212
213
### Conf réseau
214
215
Pour une transition en douceur, on peut dans un premier temps juste ajouter la nouvelle IP à côté de l'ancienne. Sous Debian, on peut par exemple ajouter à /etc/network/interfaces:
216
217
    auto eth0:1
218
    iface eth0:1 inet static
219
     address 185.233.100.2
220
     #gateway 185.233.100.126
221
     netmask 255.255.255.128
222
    iface eth0:1 inet6 static
223
     address 2a0c:e300::2
224
     #gateway 2a0c:e300::126
225
     netmask 48
226
227
et lancer `ifup eth0:1` pour avoir la nouvelle IP.
228
229
Si ce n'est pas déjà fait, il faut corriger `/etc/resolv.conf`:
230
231
    nameserver 185.233.100.100
232
    nameserver 185.233.100.101
233
    nameserver 80.67.169.12
234
    nameserver 2a0c:e300::100
235
    nameserver 2a0c:e300::101
236
237
Si ce n'est pas déjà fait, il faut corriger `/etc/nagios/nrpe.d/aquilenet.cfg` le `allowed_hosts` et lancer `service nagios-nrpe-server reload`
238
239
Si ce n'est pas déjà fait, il faut corriger `/etc/hosts` pour mettre le nom de la machine elle-même sur la nouvelle IP aussi.
240
241
Si ce n'est pas déjà fait, il faut corriger l'IP dans `/etc/motd`
242
243
### Conf firewall
244
245
Il faut éventuellement corriger le firewall, typiquement corriger `/etc/iptables/rules*` et relancer `netfilter-persistent start` ou `/etc/init.d/iptables-persistent start`
246
247
### Conf service
248
249
On peut alors vérifier que les services de la VM sont accessibles avec la nouvelle IP: dans /etc/hosts sur son propre ordi, on peut mettre
250
251
    185.233.100.2 www.aquilenet.fr
252
    2a0c:e300::2 www.aquilenet.fr
253
254
et vérifier que ça fonctionne bien à la fois en v4 et v6. Ça peut ne pas fonctionner si le service est bindé explicitement sur les anciennes IP (cas de bind9 par exemple), il faut alors binder sur à la fois les anciennes et les nouvelles. En général on écoute sur toutes les IPs donc pas de souci. On peut le vérifier assez facilement avec netstat:
255
256
    netstat -Ainet -Ainet6 -anp | grep LISTEN
257
258
Si ça indique 0.0.0.0 et :: c'est que ça écoute sur toutes les IPs. Si c'est 141.255.128.x, c'est qu'il écoute explicitement sur les IPs, et il faut configurer ça. S'il y a du 127.0.0.1 ou ::1, c'est normal, c'est les services en interne seulement. Cette même commande permet de vérifier facilement que le service écoute maintenant sur les nouvelles IPs aussi :)
259
260
On peut aussi faire un gros `grep -r 141.255.128 /etc` et `grep -ri 2a01:474 /etc`
261
262
### Basculement DNS
263
264
Une fois qu'on est sûr que le service fonctionne sur la nouvelle IP, on peut basculer dans DNS: sur gaia, /etc/ns2/db.aquilenet, changer les IPv4 et v6 (chercher \[:.\]2$ par exemple), mettre à jour le serial, et lancer `service ns2 reload` . IL faut au même moment regarder l'heure: le TTL est par défaut 28800s, donc 8h, donc pendant 8h il peut y avoir des machines qui ont encore en cache l'ancien enregistrement DNS.
265
266
Bien sûr, s'il y a d'autres nom de domaines hors aquilenet.fr qui pointent sur nos IPs, il faut les mettre à jour aussi...
267
268
### Supervision shinken
269
270
Sans attendre, sur athena, dans /etc/shinken/hosts/aquilenet/aquilenet.cfg, corriger l'adresse, et faire un `service shinken reload`
271
272
### Fin conf réseau
273
274
Noter dans la liste des VMs ci-dessus la date et heure de basculement DNS
275
276
8h après le basculement DNS, le TTL est expiré, personne n'est plus censé utiliser l'ancienne IP, on peut alors la supprimer, en virant la section eth0 et en renommant eth0:1 en eth0 et en décommentant les lignes gateway et un ptit reboot est utile pour être sûr que ça fonctionne vraiment au poil.
277
278
## VPN
279
280
Tout le réseau 141.255.130.0/24 devient 185.233.101.0/24 et 2a01:474::/32 devient 2a0c:e300::/32
281
282
Pour ceux qui ont des IPs fixes, on préfère éviter de leur changer la configuration de manière impromptue. On a donc pour l'instant mis (par exemple pour le VPN 42):
283
284
    ifconfig-push 141.255.130.42 255.255.255.0
285
    push route-gateway 141.255.130.254
286
    iroute 185.233.101.42
287
    ifconfig-ipv6-push 2a01:474:4:42:: 2a01:474:4:80::1
288
    iroute-ipv6 2a01:474:4:42::/64
289
    iroute-ipv6 2a0c:e300:4:42::/64
290
291
Ce qui permet de faire fonctionner à la fois l'ancienne et la nouvelle IP, même si c'est encore l'ancienne qui est configurée automatiquement par openvpn côté client (on est obligé de forcer le route-gateway car malgré le ifconfig-push cet idiot d'openvpn utilise pour route-gateway l'IP du serveur dans 185.233.101.0/24...). L'abonné peut utiliser de son côté
292
293
    ip addr add dev tun0 185.233.100.42
294
295
pour activer à la main la nouvelle IP, puis vérifier que l'on peut effectivement accéder à son serveur avec la nouvelle IP. Une fois confirmé, on peut basculer sur la nouvelle IP:
296
297
    ifconfig-push 185.233.101.42 255.255.255.0
298
    iroute 141.255.130.42
299
    ifconfig-ipv6-push 2a0c:e300:4:42:: 2a0c:e300:4:80::1
300
    iroute-ipv6 2a01:474:4:42::/64
301
    iroute-ipv6 2a0c:e300:4:42::/64
302
303
i.e. on bascule ifconfig-push, on enlève push route-gateway, on bascule iroute, et on bascule ifconfig-ipv6-push. On ne touche pas à iroute-ipv6: on garde les deux routes pour l'instant.
304
305
Et une fois que l'adhérent n'utilise plus l'ancienne IP (parce que le TTLS DNS de ses noms de domaine est expiré par exemple), on peut virer l'ancienne IP:
306
307
    ifconfig-push 185.233.101.42 255.255.255.0
308
    ifconfig-ipv6-push 2a0c:e300:4:42:: 2a0c:e300:4:80::1
309
    iroute-ipv6 2a0c:e300:4:42::/64
310
311
i.e. on enlève les iroute et iroute-ipv6 vers les anciennes IPs