DNS

De WikiBR
Révision datée du 11 mai 2005 à 23:02 par Fruneau (discussion | contributions) (DNS des élèves)
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)

La DNS est gérée par le xNetServer hébergé actuellement sur heol. Les autres machines sont des esclaves. Les DNS sont simplement dupliquées toutes les 5 minutes si le sérial a été incrémenté.

DNS Principale

Elle est géré par un bind patché mysql (USE flag bind-mysql sous gentoo). La DNS est gérée par la base xnet.

La DNS proprement dite est dans la table DNS alors que la DNS inverse est dans la table reverse_DNS. Pour chaque domaine on a :

zone "$domain$" {

       type master; 
       database "mysql $dbname$ $tablename$ localhost $dbuser$ $dbpasswd$";
       allow-transfer { 129.104.201.51; 129.104.201.52; 129.104.201.54;};
       also-notify { 129.104.201.51; 129.104.201.52; 129.104.201.54; };
       notify explicit;

};

avec domain égal à :

  • pour la DNS :
    • eleves.polytechnique.fr (DNS principale des élèves)
    • frankiz.eleves.polytechnique.fr
  • pour le reverse DNS :
    • xxx.104.129.in-addr.arpa avec xxx =
      • 201 : bâtiment binets, batiment des langues
      • 203, 204 : BEM
      • 205 - 208 : Foch
      • 209 - 212 : Fayolle
      • 214 : PEM
      • 215 - 218 : Joffre
      • 219 - 222 : Maunouri
      • 223 : Bat 411
      • 224 - 229 : Nouveaux caserts

DNS du domaine windows

Le domaine windows gère sa propre DNS, celle-ci est dupliqué sur la DNS principale par la config :

zone "windows.eleves.polytechnique.fr" {

       type forward;
       forward first;
       forwarders { 129.104.201.61; };

};

DNS Secondaires

3 serveurs hébergent des DNS secondaires. Ces DNS sont synchronisées par le script /root/bin/reload_dns.all qui doit être lancé par un cron toutes les 5 minutes pour avoir les DNS les plus synchronisées possible.

Chacun des domaines décrit si dessus est chargé par une entrée de la forme suivant dans /etc/bind/named.conf :

zone "$domain$" {

       type slave;
       masters {129.104.201.53; };
       file "db.$domain$";

};

En cas de modification de la DNS

Toutes les modifications de la DNS doivent être faite sur la DNS principale en priorité.

Pour ajouter une entrée dans la base DNS :

  • mysql> insert into DNS (name, ttl, rdtype, rdata) values ('$nom$.eleves.polytechnique.fr', 3200, 'A', '$ip$');
  • mysql> insert into reverse_DNS (name, ttl, rdtype, rdata) values ('$ip_inversée$.in-addr.arp', 3200, 'PTR', '$nom$.eleves.polytechnique.fr');
  • mysql> insert into clients (username, lastip, status) values ('$nom$', '$ip$', 1);
  • Changer son pseudo sur qRezix

Pour ajouter un alias à la DNS :

  • mysql> insert into DNS (name, ttl, rdtype, rdata) values ('$nom$.eleves.polytechnique.fr', 3200, 'Cname', '$dest$.eleves.polytechnique.fr');
  • mysql> insert into clients (username, lastip, status) values ('$nom$', '$ip$', 1);
  • Changer son pseudo sur qRezix

Pour rajouter un sous-domaine

  • mysql> insert into reverse_DNS (name, ttl, rdtype, rdata) values ('xxx.104.129.in-addr-arpa', 3200, 'NS', 'eleves.polytechnique.fr');
  • mysql> insert into reverse_DNS (name, ttl, rdtype, rdata) values ('xxx.104.129.in-addr-arpa', 3200, 'SOA', 'eleves.polytechnique.fr root.eleves.polytechnique.fr $serial$ 86400 3600 864000 3600');
  • Rajouter le domaine aux confs de tous les serveurs (utiliser la cvs config-etc)
  • Rajouter le domaine dans reload_dns.all
  • Changer de pseudo sur qRezix