Je suis Charlie

Autres trucs

Accueil

Seulement les RFC

Seulement les fiches de lecture

Ève

Le nom de domaine du Tchad en panne pendant deux mois

Première rédaction de cet article le 15 juin 2011
Dernière mise à jour le 27 février 2012


Il est fréquent qu'un des deux ou trois cents TLD actuellement présents ait des problèmes techniques. La très forte résilience du DNS fait que, la plupart du temps, on ne s'en aperçoit pas. Mais il y a des limites à tout et, depuis au moins le 23 mai, et jusqu'au 20 juillet, .TD, TLD du Tchad a été intégralement en panne.

Le problème a été publié par Steinar Haug sur la liste dns-operations. .TD a deux serveurs de noms, tous les deux répondaient SERVFAIL, le code de réponse DNS qui indique que le serveur a un problème :


# Merci à Gilles Massen, Mathieu Arnold et Kim Minh Kaplan pour l'aide
# avec le code. Plus un script shell est court, plus on reçoit de
# suggestions d'amélioration.
% for ns in $(dig +noall +auth @f.root-servers.net td. | tr -s \\t | cut -f 5); do 
    echo "Testing $ns" 
    dig @$ns SOA td. 
done
Testing bow.intnet.td
...
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 58428
...

Testing bow.rain.fr
...
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 28968
...

Aucun nom en .TD ne peut donc être trouvé (voir à la fin de cet article pour un bémol). On note que ce n'est pas une panne matérielle, la machine bow.intnet.td, apparemment située à N'Djaména, d'après les temps de réponse, est joignable et répond (mais incorrectement ; interrogez-la sur un autre domaine comme intnet.td et vous aurez une réponse correcte).

Il faut noter que le TLD .TD est négligé depuis de nombreuses années. Cela fait longtemps que bow.rain.fr ne répond plus correctement. Le TLD ne tenait donc plus qu'à une seule machine, qui a lâché à son tour.

Le 20 juillet, la machine incorrecte a été reconfigurée et répond dorénavant correctement :


Testing bow.intnet.td.
...
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 52886
;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 2
...
;; ANSWER SECTION:
td.                     4838400 IN      SOA     bow.intnet.td. yaser.intnet.td. 2011072001 28800 7200 4838400 4838400

;; AUTHORITY SECTION:
td.                     86400   IN      NS      proof.rain.fr.
td.                     86400   IN      NS      bow.intnet.td.

;; ADDITIONAL SECTION:
bow.intnet.td.          86400   IN      A       193.251.147.253

;; Query time: 533 msec
;; SERVER: 193.251.147.253#53(193.251.147.253)
;; WHEN: Thu Jul 21 08:59:07 2011
;; MSG SIZE  rcvd: 141

Le second serveur annoncé, proof.rain.fr, refusait encore de répondre aux requêtes pour .TD :


;; ->>HEADER<<- opcode: QUERY, status: REFUSED, id: 59819

Notez que la racine, elle, annonce un autre serveur, et qui marche, bow.rain.fr. Le 20 février 2012, .td a été reconfiguré avec trois serveurs, dont un à l'AFNIC, et qui marchent tous :

% dig +nssearch td
SOA ns1.nic.td. cctldchad.gmail.com. 2012022312 10800 3600 4838400 3600 from server 2001:660:3006:1::1:1 in 2 ms.
SOA ns1.nic.td. cctldchad.gmail.com. 2012022312 10800 3600 4838400 3600 from server 192.134.0.49 in 2 ms.
SOA ns1.nic.td. cctldchad.gmail.com. 2012022312 10800 3600 4838400 3600 from server 193.251.147.237 in 593 ms.
SOA ns1.nic.td. cctldchad.gmail.com. 2012022312 10800 3600 4838400 3600 from server 85.31.71.189 in 887 ms.

En septembre 2012, le TLD .td est retombé en panne complète... Le niveau de sérieux et de responsabilité ne semble pas avoir augmenté.

De nombreuses personnes ont tenté de joindre les administrateurs du TLD à la Société des télécommunications du Tchad (SOTEL), l'opérateur historique, récemment privatisé. Les adresses de courrier en .TD ne marchent évidemment plus, les numéros de fax et de téléphone dans la base IANA sont souvent incorrects (résultat de la négligence du TLD). Par des contacts personnels, des relais, des adresses @gmail.com ou @yahoo.fr sont utilisées. Pas moyen de trouver quelqu'un qui veuille et puisse agir.

J'insiste que le problème n'est pas technique : la machine répond donc la liaison Internet fonctionne. Ce n'est pas non plus un manque de compétences techniques, sur Internet, on trouve plein de gens compétents qui peuvent aider gratuitement (comme sur la liste dns-operations citée plus haut). Non, c'est un problème organisationnel, de négligence et d'irresponsabilité. Personne ne considère que c'est son problème, et que c'est à lui de réparer.

Ce n'est pas non plus un problème dû à la pauvreté. Certes, le Tchad est un pays très pauvre (il y a du pétrole mais l'argent ne va pas aux projets utiles). Mais des pays aussi pauvres comme Haïti ont réussi à monter une infrastructure DNS robuste. Ne pas avoir de serveurs DNS secondaires un peu partout est inexcusable puisque de nombreuses organisations proposent un service d'hébergement gratuit aux TLD (citons, parmi plusieurs autres, PCH, l'AFNIC, l'ISC, etc).

Une petite note technique pointue pour conclure. Dans certains cas, les noms en .TD marchent toujours (cela dépend du comportement exact de votre résolveur DNS). En effet, vous pouvez voir que la machine bow.intnet.td/193.251.147.253 répond toujours pour les sous-domaines de .TD :


% dig @193.251.147.253 ANY sotel.td
...
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 42424
...
;; ANSWER SECTION:
sotel.td.		86400	IN	SOA	bow.intnet.td. yaser.intnet.td. 2009022801 21600 3600 604800 86400
sotel.td.		86400	IN	NS	bow.intnet.td.
sotel.td.		86400	IN	NS	bow.rain.fr.
sotel.td.		86400	IN	MX	10 mail.intnet.td.

En effet, le même serveur de noms a été configuré pour faire autorité pour le TLD et pour les sous-domaines. Mauvaise pratique mais que l'on voit parfois. .TD a été retiré de cette machine mais les sous-domaines sont restés. Comme, dans le protocole DNS, le résolveur envoie la question complète (par exemple www.sotel.td) aux serveurs faisant autorité, dans certains cas, cela peut encore marcher. L'échec est par contre complet lorque le nom n'existe pas, car aucun serveur faisant autorité n'est trouvé et on doit alors patienter jusqu'à l'expiration du délai de garde.

Enfin, comme souvent avec les opérateurs de télécommunication historiques qui se sont approprié le TLD (un cas courant en Afrique francophone), le serveur du TLD est mis comme serveur des sous-domaines, même s'il ne donne pas les réponses correctes. Regardez youtube.td :

% dig @193.251.147.253 NS youtube.td
...
;; ANSWER SECTION:
youtube.td.		86400	IN	NS	bow.intnet.td.
youtube.td.		86400	IN	NS	ns1.google.com.
youtube.td.		86400	IN	NS	ns2.google.com.

Outre les serveurs de Google, propriétaire de YouTube, on retrouve bow.intnet.td. Or, celui-ci ment. Demandons à un serveur de Google l'adresse IP de www.youtube.td :

% dig @ns1.google.com A www.youtube.td
...
;; ANSWER SECTION:
www.youtube.td.		86400	IN	CNAME	youtube-ui.l.google.com.
youtube-ui.l.google.com. 300	IN	A	209.85.146.93
youtube-ui.l.google.com. 300	IN	A	209.85.146.91
youtube-ui.l.google.com. 300	IN	A	209.85.146.190
youtube-ui.l.google.com. 300	IN	A	209.85.146.136

On obtient des adresses chez Google. Mais posons la même question au serveur de la SOTEL :

% dig @193.251.147.253 A www.youtube.td
...
;; ANSWER SECTION:
www.youtube.td.		86400	IN	A	210.32.239.216
www.youtube.td.		86400	IN	A	10.34.239.216

Il nous répond par des adresses IP situées en Chine, pour l'une, et appartenant à une plage privée, pour l'autre...

À noter qu'un problème similaire a frappé le Gabon fin 2011.

Merci à Alain Thivillon pour ses bonnes remarques.

Version PDF de cette page (mais vous pouvez aussi imprimer depuis votre navigateur, il y a une feuille de style prévue pour cela)

Source XML de cette page (cette page est distribuée sous les termes de la licence GFDL)