web-dev-qa-db-fra.com

Pourquoi les navigateurs n'utilisent-ils pas les enregistrements SRV?

Pourquoi les navigateurs n'utilisent-ils pas les enregistrements SRV?

Cela semble être un travail minimal et cela rendra la mise en œuvre côté serveur de sites Web fiables beaucoup plus simple.

Par exemple, vous pouvez spécifier des niveaux, tels que www.example.com se résout en 1.2.3.4 et 2.3.4.5, et seulement si aucun d'entre eux n'est disponible, essayez 4.5.6.7.

Les enregistrements SRV existent depuis des années ...

Y a-t-il quelque chose qui me manque ici?

38
fadedbee

Jonathan de Boyne Pollard fournit ce qui suit Réponse fréquemment donnée .

Vous êtes venu sur cette page parce que vous avez dit quelque chose de semblable à ce qui suit:

La prise en charge des enregistrements SRV n'a même pas encore fait partie des navigateurs Web, sans parler des clients de protocoles moins courants.

Ceci est la réponse fréquemment donnée à de telles déclarations.

10
richardw

Le RFC pour les enregistrements SRV spécifie qu'il ne peut pas être utilisé par des protocoles préexistants qui ne spécifiaient pas déjà l'utilisation des enregistrements SRV dans leurs spécifications. C'est à dire. aucun SRV dans la spécification HTTP - les navigateurs sont, selon la norme SRV, interdits de l'utiliser.

Cela n'interdit cependant pas à une nouvelle norme HTTP 1.2 de spécifier l'utilisation des enregistrements SRV. Cependant, Mark Andrews proposé ceci en avril 2007 au groupe de travail HTTP de l'IETF, mais n'a reçu aucune réponse.

22
Teddy

Il y a eu deux efforts pour introduire cela que je sache:

  1. draft-andrews-http-srv (2002)

  2. draft-jennings-http-srv (2009)

Le paragraphe "Questions ouvertes" de ce dernier projet est éclairant:

The big open issue seems to be if one should just update the HTTP
scheme to do this SRV lookup and not create a new scheme.  The 00
version of this draft did that.  A new scheme makes this somewhat
unusable for general web surfing while using the old scheme results
in a very long transition times where different clients resolve URLs
in different ways.

et c'est le noeud de la question. Si votre site s'appuie sur les enregistrements SRV à trouver, il ne fonctionnera pas pour certains utilisateurs tant que chaque navigateur le prend en charge.

Prendriez-vous ce risque, sans une sorte de mécanisme de transition?

10
Alnitak

Car:

  1. Le RFC HTTP actuel ne spécifie pas de nom de service symbolique à utiliser dans les enregistrements SRV et ne spécifie pas que les enregistrements SRV doivent être utilisés (cf. RFC 2782 , Déclaration d'applicabilité).
  2. Cela peut avoir un impact négatif sur la latence dans les navigateurs et les fournisseurs de navigateurs veulent d'abord le voir normalisé pour http par l'IETF (cf. rapport de bogue de chrome )
  3. Il peut être assez complexe de l'intégrer dans les navigateurs existants (cf. rapport de bogue firefox )
  4. Les vendeurs ne veulent pas dire pourquoi (cf. rapport de bogue webkit )

La dernière version pour ajouter des enregistrements SRV à HTTP est andrews-http-srv-02 de 2014 qui inclut des considérations de sécurité et de transition. Il est plus complet que le brouillon jennings-http-srv-05 de 2009. Par exemple, il spécifie un algorithme de sécurité pour choisir le port quand il est donné dans l'URL et qu'il y a un enregistrement SRV (qui comprend également un champ portuaire) - où le projet de jennings ne se penche pas sur cette question.

6
maxschlepzig