Projet

Général

Profil

Tâche #35005

Scénario #34941: [EOLE 2.9] Impossibilité d'instancier DC2 si un service podman est installé sur le DC1 avant instance

BIND : support des passerelles qui n'ont pas de support des cookies DNS

Ajouté par Laurent Gourvenec il y a plus d'un an. Mis à jour il y a environ un an.

Statut:
Fermé
Priorité:
Normal
Assigné à:
Début:
23/11/2022
Echéance:
% réalisé:

100%

Temps estimé:
0.00 h
Restant à faire (heures):
0.0

Historique

#1 Mis à jour par Laurent Gourvenec il y a plus d'un an

Lorsqu'on redémarre le service 'named' sur un DC1 il est possible de faire des requêtes DNS pendant un certain temps (de l'ordre de la minute).
Après ce délai il n'est plus possible de faire des requêtes DNS.
En réalité on ne peut plus faire de requête dès qu'on retrouve l'erreur suivante dans les logs :

nov. 15 14:36:40 dc1.domseth.ac-test.fr named[34315]: missing expected cookie from 192.168.0.1#53

Si on ajoute l'option send-cookie no; dans le fichier /etc/bind/named.conf.options, l'erreur n’apparaît plus et les requêtes sont tout le temps possible.
Si on remplace dnsmasq par un serveur bind sur la passerelle, il n'y a plus d'erreur non plus (sans modifier la configuration bind).
Le problème c'est que la gestion des cookies DNS n'est pas implémentée sur dnsmasq.

root@dc1:~# dig dev-eole.ac-dijon.fr | grep COOKIE
; COOKIE: 11cf8ac7386e412f0100000063739825f8992fd68cc27155 (good)
root@dc1:~# dig @192.168.0.1 dev-eole.ac-dijon.fr | grep COOKIE
root@dc1:~#

Informations complétementaires sur les cookies DNS : https://kb.isc.org/docs/aa-01387

Nous voyons deux solutions :

- désactiver la gestion des cookies dans la configuration de bind. Cela semble être une mauvaise idée de baisser la sécurité d'environnement avec des serveurs DNS gérant les cookies DNS ;
- proposer une options pour pouvoir désactiver les cookies DNS : * les cookies DNS sont activés par défaut * un diagnose qui vérifie si les cookies sont supportés par la passerelle (quelque chose comme

for dns in $(CreoleGet adresse_ip_dns); do
   dig @$dns +cookie $(CreoleGet test_distant_domaine) | grep -q "; COOKIE: " || echo "pas de support des cookies DNS pour $dns";
done

) * laisser le nouveau comportement même en cas de migration.

#2 Mis à jour par Daniel Dehennin il y a plus d'un an

Dans la documentation, il est noté que s’il n’y a pas de cookie, il y a un fallback TCP.

Le soucis semble venir de ce fallback qui ne fonctionne pas à travers la gateway:

root@gateway90:~# dig +tcp @192.168.232.2 dev-eole.ac-dijon.fr
;; Connection to 192.168.232.2#53(192.168.232.2) for dev-eole.ac-dijon.fr failed: timed out.

#3 Mis à jour par Daniel Dehennin il y a plus d'un an

  • Statut changé de Nouveau à En cours
  • Assigné à mis à Daniel Dehennin
  • Début mis à 23/11/2022

Le problème semble se situer sur les machines virtuelle OpenNebula, je vais devoir inspecter toute la pile réseau.

#4 Mis à jour par Daniel Dehennin il y a plus d'un an

J’ai ouvert un ticket auprès des équipes du rectorat.

#5 Mis à jour par Daniel Dehennin il y a plus d'un an

  • Statut changé de En cours à Résolu
  • % réalisé changé de 0 à 100

Jean-Philippe a corrigé une règle de parfeu qui n’autorisait que le DNS en UDP, il est désormais ouvert aussi en TCP.

#6 Mis à jour par Laurent Gourvenec il y a plus d'un an

  • Statut changé de Résolu à Fermé
  • Restant à faire (heures) mis à 0.0

Sur la maquette qui était en erreur il y 20 jours, je peux maintenant faire des requêtes DNS sans soucis.

#7 Mis à jour par Joël Cuissinat il y a environ un an

  • Bloque Scénario #34941: [EOLE 2.9] Impossibilité d'instancier DC2 si un service podman est installé sur le DC1 avant instance supprimé

#8 Mis à jour par Joël Cuissinat il y a environ un an

  • Temps estimé mis à 0.00 h
  • Tâche parente mis à #34941

Formats disponibles : Atom PDF