Beryl::CLI::DnsSetup
Helpers OVH compute pour le nommage d'un serveur dédié : détection des
IPs (IPv4/IPv6) à partir du service_name, dérivation du bloc /64 pour
le reverse, et renommage du displayName côté panel.
Le FORWARD DNS (A/AAAA + refresh) ne vit plus ici : il passe par
l'abstraction multi-provider Beryl::DnsProvider (OVH, Gandi…) — voir
Beryl::CLI::DnsApply. Ce module ne garde que ce qui est spécifique au
compute OVH (lecture serveur + reverse au niveau bloc + rename).
Class methods
Récupère les infos nécessaires (IPs) pour construire un Plan
cohérent. Utilise client.dedicated_servers.info
et client.dedicated_servers.ips du shard ovh-api 0.3.0.
À partir d'un bloc CIDR IPv6 (ex. "2001:41d0:2:6e01::/64"), déduit l'adresse usable habituelle chez OVH : base + "::1". Vaut pour tout bloc jusqu'au /64 : les ADV récents reçoivent un /56 ("…:6600::/56"), dont l'adresse « :: » est le réseau (anycast routeur), jamais le serveur.
Déduit le bloc /64 (préfixe réseau) d'une adresse IPv6. OVH gère le
reverse au niveau du BLOC : pour une IPv6 l'API attend
POST /ip/{bloc /64}/reverse avec l'adresse précise dans ipReverse,
PAS l'adresse /128 dans le path (sinon 404 « This service does not
exist » — le /128 n'est pas un service IP, seul le /64 routé l'est).
En IPv4 le souci ne se pose pas : bloc == adresse (/32).
Le /64 est exactement le réseau de n'importe quelle adresse du bloc
(les 64 premiers bits), donc le dériver de l'adresse est exact — pas
une devinette. Ex. 2001:41d0:306:2b67::1 → 2001:41d0:306:2b67::/64.
Bloc IPv6 du serveur selon specifications/network (routing.ipv6.ip,
le /56 ou /64 ; PAS .network, le /48 agrégé de la baie), forme
canonique + longueur de préfixe ; nil si absent.