Projet

Général

Profil

LIR » Historique » Version 328

sacha, 28/09/2018 00:11

1 328
# LIR
2
3
https://lirportal.ripe.net/  
4
https://www.ripe.net/manage-ips-and-asns  
5
https://apps.db.ripe.net/db-web-ui/#
6
7
    whois -i mnt-by fr-aquilenet-1-mnt
8
    
9
    # Préféré, car retour d'erreur immédiat:
10
    gpg --clearsign updates.txt (will produce updates.txt.asA c)
11
    curl --data-urlencode DATA@updates.txt.asc http://syncupdates.db.ripe.net
12
    
13
    # Sinon, par mail:
14
    gpg --clearsign updates.txt (will produce updates.txt.asc)
15
    mail -s 'Bulk inetnum update' auto-dbm@ripe.net < updates.txt.asc
16
    # ou alors juste coller dans un mail qu'on signe normalement
17
18
## blabla
19
20
Kazar ferme ses portes, on doit donc trouver un autre LIR. Dans les associatifs, il y a
21
22
  - Gitoyen, qui est LIR pour pas mal d'autres assos de la fédé
23
  - Tetaneutral, qui prône pour la création de nouveaux LIRs
24
  - Web4all, qui n'a pas répondu à nos demandes.
25
26
On a demandé sur la liste membres@ffdn, certaines assos pourraient être intéressées:
27
28
  - Ilico
29
  - AIL-Network (mais plus maintenant: sont en train de se constituer LIR avec CARBODEBIT et WIFI SAINT JULIEN)
30
  - SamesWireless
31
  - tetaneutral peut prendre des parts s'il y a besoin
32
33
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:
34
35
https://www.ripe.net/ripe/mail/archives/address-policy-wg/2017-September/012087.html
36
37
On a finalement décidé de devenir LIR
38
39
## Déroulement chronologique
40
41
  - 31/10/17 Demande envoyée, NCC\#2017106202
42
  - 02/11/17 Demande de précisions sur le nom de l'association de la part du RIPE
43
  - 06/11/17 Confirmation enregistrement approuvé ticket 11430
44
  - 13/11/17 Demande du RIPE de confirmation qu'on n'a pas de numéro de TVA
45
  - 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.
46
  - 15/11/17 Réception de contrat "RIPE NCC Standard Service Agreement"
47
  - 16/11/17 Règlement invoice
48
  - 17/11/17 Envoi contrat signé via le DHL prépayé.
49
  - 20/11/17 Confirmation par le RIPE du règlement de l'invoice
50
  - 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)
51
  - 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
52
  - 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)"
53
  - 23/11/17 Création des objets inetnum et inet6num pour notre usage actuel (2 /24 et un /32)
54
  - 23/11/17 Création des objets route et route6 pour déclarer notre routage par notre AS
55
  - 23/11/17 Création des objets domain pour configurer le RDNS
56
57
  - DONE: obtenir d'Anteor qu'il
58
59
* Passe AS198985 sur notre mnt (fr-aquilenet-1-mnt)  
60
61
* Passe la person Alexandre Borrut AB25125-RIPE sur notre mnt (fr-aquilenet-1-mnt)  
62
* 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
63
64
* 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
65
66
## Objets RIPE
67
68
Liste de nos objets:
69
70
    whois -i mnt-by fr-aquilenet-1-mnt
71
72
  - LIR [ORG-AA1915-RIPE](https://apps.db.ripe.net/db-web-ui/#/lookup?source=ripe&key=ORG-AA1915-RIPE&type=organisation)
73
  - mnter [fr-aquilenet-1-mnt](https://apps.db.ripe.net/db-web-ui/#/lookup?source=ripe&key=fr-aquilenet-1-mnt&type=mntner)
74
  - role [AR43951-RIPE](https://apps.db.ripe.net/db-web-ui/#/lookup?source=ripe&key=AR43951-RIPE&type=role)
75
  - role [AC35116-RIPE](https://apps.db.ripe.net/db-web-ui/#/lookup?source=ripe&key=AC35116-RIPE&type=role)
76
  - person Aquilenet Contact [AC35087-RIPE](https://apps.db.ripe.net/db-web-ui/#/lookup?source=ripe&key=AC35087-RIPE&type=person)
77
  - person Alexandre Borrut [AB25125-RIPE](https://apps.db.ripe.net/db-web-ui/#/lookup?source=ripe&key=AB25125-RIPE&type=person)
78
  - person Samuel Thibault [ST11379-RIPE](https://apps.db.ripe.net/db-web-ui/#/lookup?source=ripe&key=ST11379-RIPE&type=person)
79
  - key-cert [PGPKEY-7D069EE6](https://apps.db.ripe.net/db-web-ui/#/webupdates/display/RIPE/key-cert/PGPKEY-7D069EE6)
80
  - aut-num [AS198985](https://apps.db.ripe.net/db-web-ui/#/lookup?source=ripe&key=AS198985&type=aut-num)
81
  - 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)
82
  - 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)
83
  - 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)
84
  - 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)
85
  - 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)
86
  - inet6num [2a0c:e300::/29](https://apps.db.ripe.net/db-web-ui/#/lookup?source=ripe&key=2a0c:e300::%2F29&type=inet6num)
87
  - inet6num [2a0c:e300::/32](https://apps.db.ripe.net/db-web-ui/#/lookup?source=ripe&key=2a0c:e300::%2F32&type=inet6num)
88
  - route [185.233.100.0/22](https://apps.db.ripe.net/db-web-ui/#/webupdates/display/RIPE/route/185.233.100.0%252F22AS198985)
89
  - route6 [2a0c:e300::/29](https://apps.db.ripe.net/db-web-ui/#/webupdates/display/RIPE/route6/2a0c%253Ae300%253A%253A%252F29AS198985)
90
  - 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)
91
  - 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)
92
  - 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)
93
  - 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)
94
  - 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)
95
  - 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)
96
  - 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)
97
  - 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)
98
  - 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)
99
  - 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)
100
  - 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)
101
  - 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)
102
103
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/#
104
105
## vieux pour les archives: Migration de LIR & IP
106
107
  - {background:lightgreen} DONE : mise à jour bgpd.conf
108
  - {background:lightgreen} DONE : mise à jour bgpd blackhole
109
  - {background:lightgreen} DONE : mise à jour bgpd nlnog =\> mail
110
  - {background:lightgreen} DONE : mise à jour firewall
111
  - {background:lightgreen} DONE : mise à jour RDNS
112
  - {background:lightgreen} DONE : mise à jour carp cerbere
113
  - {background:lightgreen} DONE : mise à jour scripts Xen
114
  - mise à jour des machines une par une... configuration /etc/network/interfaces, firewall, conf serveurs
115
  - VMs Apollon
116
      - acaqb =\> mail
117
      - {background:lightgreen} DONE : agatas-aqui-vm1 =\> mail
118
      - <span style="background:lightgreen;">DONE agatasTeT =\> mail</span>
119
      - {background:lightgreen} DONE : alcyon \[04/12/17 - 23:25\]
120
      - ~~ate~~
121
      - bayonnet =\> mail
122
      - bayonnet2 =\> mail
123
      - {background:lightgreen} DONE : cpprod
124
      - {background:lightgreen} DONE cpprod-dev
125
      - {background:lightgreen} DONE :dev-cortex =\> mail
126
      - ~~dev-iidre =\> mail~~
127
      - {background:lightgreen} DONE :dev-sacha
128
      - {background:lightgreen} DONE: dionysos
129
      - {background:lightgreen} DONE :duniter
130
      - ecce-info
131
      - {background:lightgreen} DONE :embedded-freedom =\> mail
132
      - {background:lightgreen} DONE :f1te =\> mail
133
      - {background:lightgreen} DONE : griffith =\> mail
134
      - {background:lightgreen} DONE : guilarr =\> mail
135
      - ~~guzel~~
136
      - {background:lightgreen} DONE hades (à finir en dernier pour garder les IPs DNS récursif disponibles)
137
      - {background:lightgreen} DONE :hermes
138
      - {background:lightgreen} DONE iidre
139
      - {background:lightgreen} DONE iris
140
      - {background:lightgreen} DONE janus
141
      - motv =\> mail
142
      - {background:lightgreen} DONE : natha =\> mail
143
      - {background:lightgreen} DONE neutral
144
      - {background:lightgreen} DONE nlnog =\> mail
145
      - {background:lightgreen} DONE : sanssoucis =\> mail
146
      - {background:lightgreen} DONE : tchaikovski =\> irc fx
147
      - {background:lightgreen} DONE : tdn =\> mail
148
      - ~~test~~ \<= ???
149
      - ~~triton~~
150
      - tyche
151
      - {background:lightgreen} DONE : web.openbeelab
152
  - VMs artemis
153
      - {background:lightgreen} DONE : athena (à finir en dernier pour garder la supervision)
154
      - {background:lightgreen} DONE : demeter
155
      - {background:lightgreen} DONE : eos
156
      - {background:lightgreen} DONE : gaia (à finir en dernier pour garder les IPs DNS récursif disponibles)
157
      - {background:lightgreen} DONE hera (à finir en dernier pour le ldap & such)
158
      - {background:lightgreen} DONE hestia
159
      - {background:lightgreen} DONE labx-ipmi =\> mail
160
      - {background:lightgreen} DONE persephone
161
      - ~~test~~
162
  - Elidee =\> mail+ relance 21/12
163
  - {background:lightgreen} DONE : Sayanet
164
  - ENCOURS: Zeus
165
  - Guix =\> mail (machine pas au dc en ce moment)
166
  - {background:lightgreen} DONE : Poseidon
167
  - {background:lightgreen} DONE : L@BX
168
  - {background:lightgreen} DONE : PDU 7920
169
  - PDU 7821: pas réussi à m'y connecter: mot de passe invalide...
170
  - {background:lightgreen} DONE : styx
171
  - mise à jour des VPNs: nouvelles IPs activées, on attend les confirmations des gens avant de les basculer sur la nouvelle IP
172
  - {background:lightgreen} DONE : corriger doc compta IP fixe VPN
173
  - {background:lightgreen} DONE : mise à jour dhcp
174
  - mise à jour DNS au fur et à mesure, refaire une passe complète pour vérifier.
175
  - {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
176
  - Finir de corriger le wiki
177
178
## Mise à jour d'une VM
179
180
Tout le réseau 141.255.128.0/24 devient 185.233.100.0/24 et 2a01:474::/32 devient 2a0c:e300::/32
181
182
Dans cet exemple, on travaille sur la VM gaia (141.255.128.2 -\> 185.233.100.2)
183
184
### Conf réseau
185
186
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:
187
188
    auto eth0:1
189
    iface eth0:1 inet static
190
     address 185.233.100.2
191
     #gateway 185.233.100.126
192
     netmask 255.255.255.128
193
    iface eth0:1 inet6 static
194
     address 2a0c:e300::2
195
     #gateway 2a0c:e300::126
196
     netmask 48
197
198
et lancer `ifup eth0:1` pour avoir la nouvelle IP.
199
200
Si ce n'est pas déjà fait, il faut corriger `/etc/resolv.conf`:
201
202
    nameserver 185.233.100.100
203
    nameserver 185.233.100.101
204
    nameserver 80.67.169.12
205
    nameserver 2a0c:e300::100
206
    nameserver 2a0c:e300::101
207
208
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`
209
210
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.
211
212
Si ce n'est pas déjà fait, il faut corriger l'IP dans `/etc/motd`
213
214
### Conf firewall
215
216
Il faut éventuellement corriger le firewall, typiquement corriger `/etc/iptables/rules*` et relancer `netfilter-persistent start` ou `/etc/init.d/iptables-persistent start`
217
218
### Conf service
219
220
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
221
222
    185.233.100.2 www.aquilenet.fr
223
    2a0c:e300::2 www.aquilenet.fr
224
225
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:
226
227
    netstat -Ainet -Ainet6 -anp | grep LISTEN
228
229
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 :)
230
231
On peut aussi faire un gros `grep -r 141.255.128 /etc` et `grep -ri 2a01:474 /etc`
232
233
### Basculement DNS
234
235
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.
236
237
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...
238
239
### Supervision shinken
240
241
Sans attendre, sur athena, dans /etc/shinken/hosts/aquilenet/aquilenet.cfg, corriger l'adresse, et faire un `service shinken reload`
242
243
### Fin conf réseau
244
245
Noter dans la liste des VMs ci-dessus la date et heure de basculement DNS
246
247
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.
248
249
## VPN
250
251
Tout le réseau 141.255.130.0/24 devient 185.233.101.0/24 et 2a01:474::/32 devient 2a0c:e300::/32
252
253
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):
254
255
    ifconfig-push 141.255.130.42 255.255.255.0
256
    push route-gateway 141.255.130.254
257
    iroute 185.233.101.42
258
    ifconfig-ipv6-push 2a01:474:4:42:: 2a01:474:4:80::1
259
    iroute-ipv6 2a01:474:4:42::/64
260
    iroute-ipv6 2a0c:e300:4:42::/64
261
262
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é
263
264
    ip addr add dev tun0 185.233.100.42
265
266
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:
267
268
    ifconfig-push 185.233.101.42 255.255.255.0
269
    iroute 141.255.130.42
270
    ifconfig-ipv6-push 2a0c:e300:4:42:: 2a0c:e300:4:80::1
271
    iroute-ipv6 2a01:474:4:42::/64
272
    iroute-ipv6 2a0c:e300:4:42::/64
273
274
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.
275
276
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:
277
278
    ifconfig-push 185.233.101.42 255.255.255.0
279
    ifconfig-ipv6-push 2a0c:e300:4:42:: 2a0c:e300:4:80::1
280
    iroute-ipv6 2a0c:e300:4:42::/64
281
282
i.e. on enlève les iroute et iroute-ipv6 vers les anciennes IPs