README reduit au role du projet et au demarrage rapide. docs/architecture.md (schemas Mermaid), docs/setup.md, docs/usage.md (154 cibles en 13 familles), docs/README.md (index). Documents ranges en conception/, exploitation/, hebergement/, projet/ ; 598 chemins suivis. QUICKSTART.md, SOLUTION.md, architecture-set-ops.md et la carte fondus puis retires. Preuves : P48 lit l'index et conception/mecanismes.md ; les gardes parcourent docs/ sous- dossiers compris (_documents) ; usage.md suit le Makefile dans les deux sens. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
32 lines
1.4 KiB
Django/Jinja
32 lines
1.4 KiB
Django/Jinja
#!/bin/bash
|
|
# GENERE par Set-OPS (role serveur_resolveur). Ne pas editer a la main.
|
|
#
|
|
# SONDE « resolution » — il resout la zone interne ET l'Internet
|
|
#
|
|
# Contrat : docs/conception/supervision-conception.md (API des greffons Nagios) — une ligne, 0/1/2.
|
|
# Mise en defaut PAR PARAMETRE : `serveur_resolveur_sonde_nom_interne` / `_nom_public` (noms inexistants).
|
|
set -uo pipefail
|
|
|
|
INTERNE={{ serveur_resolveur_sonde_nom_interne }}
|
|
PUBLIC={{ serveur_resolveur_sonde_nom_public }}
|
|
DELAI={{ serveur_resolveur_sonde_delai }}
|
|
|
|
# ON INTERROGE LA LOOPBACK, PAS `getent`. `getent` passerait par le plancher
|
|
# /etc/hosts et rendrait une reponse alors que le resolveur est mort — un vert sur un
|
|
# service eteint. On demande donc au demon lui-meme.
|
|
r1=$(dig +short +time=${DELAI} +tries=1 @127.0.0.1 "${INTERNE}" 2>/dev/null | head -1)
|
|
r2=$(dig +short +time=${DELAI} +tries=1 @127.0.0.1 "${PUBLIC}" 2>/dev/null | head -1)
|
|
|
|
if [[ -z "${r1}" && -z "${r2}" ]]; then
|
|
echo "Le resolveur ne repond ni pour ${INTERNE} ni pour ${PUBLIC} — il est muet."
|
|
exit 2
|
|
fi
|
|
if [[ -z "${r1}" ]]; then
|
|
echo "Zone interne MUETTE (${INTERNE}) — l'ecosysteme ne se resout plus lui-meme ; l'Internet repond (${PUBLIC} -> ${r2})."
|
|
exit 2
|
|
fi
|
|
if [[ -z "${r2}" ]]; then
|
|
echo "Recursion MUETTE (${PUBLIC}) — la zone interne repond (${INTERNE} -> ${r1}), mais rien du dehors."
|
|
exit 2
|
|
fi
|
|
echo "Resolution : ${INTERNE} -> ${r1}, ${PUBLIC} -> ${r2}."
|