module

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

build_plan(client : OvhApi::Client, service_name : String, short_name : String, zone : String) : Plan

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.

Source
derive_ipv6_address(base : String, cidr : String) : String

À 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.

Source
ipv6_block_64(address : String) : String

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.

Source
routed_ipv6_block(client : OvhApi::Client, service_name : String) : String | Nil

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.

Source

Nested types