web-dev-qa-db-fra.com

Est-il possible que deux noms d'hôtes partagent la même adresse IP?

Quelqu'un peut-il expliquer s'il est possible que deux noms d'hôtes partagent la même adresse IP?

Et qu'en est-il si un nom d'hôte représente plusieurs adresses IP, est-ce également possible? Pourquoi?

35
jean

L'attribution de plusieurs adresses IP à un nom d'hôte est également possible:

rr.example.com.        A      192.0.2.12
rr.example.com.        A      192.0.2.23
rr.example.com.        A      192.0.2.34
rr.example.com.        A      192.0.2.45

Lorsque vous interrogez un serveur DNS pour rr.example.com vous récupérerez une liste d'adresses IP. Vous pouvez alors choisir de vous connecter à l'un d'eux. Si la première tentative de connexion est activement refusée, essayez la suivante.

La plupart des navigateurs suivront ce flux, tant que les points de terminaison refusent activement la connectivité TCP. En cas d'expiration d'un point de terminaison, la ressource sera traitée comme inaccessible même si toutes les IP n'ont pas été essayées

Étant donné que la plupart des applications (navigateurs inclus) ne sont souvent intéressées que par 1 point de terminaison IP à la fois et choisissent simplement la première réponse disponible, vous risquez de fausser la charge entre les serveurs cibles afin que le premier serveur reçoive tout le trafic tandis que les autres soient inactifs. .

Pour contourner cela, la plupart des serveurs DNS proposent ce que l'on appelle une configuration Round Robin, ce qui fait que le serveur alterne l'ordre dans lequel les enregistrements également correspondants sont renvoyés. Avant que les équilibreurs de charge ne soient monnaie courante, c'était un moyen efficace d'équilibrer la charge et de mettre en œuvre quelque peu la tolérance aux pannes sur les systèmes réseau.

45
Mathias R. Jessen

Oui, il est possible que plusieurs noms d'hôtes utilisent la même adresse IP, la meilleure pratique consiste à utiliser un enregistrement CNAME pour pointer vers l'enregistrement A

bar.example.com.        CNAME  foo.example.com.
foo.example.com.        A      192.0.2.23

Prenez note de tous les arrêts complets.

Avoir un nom d'hôte pour représenter plusieurs adresses IP est un peu plus compliqué. Si nous parlons d'enregistrements MX, cette solution existe déjà dans DNS en utilisant des numéros de priorité, si vous voulez qu'il représente plusieurs enregistrements A, il vaut mieux utiliser un équilibreur de charge, HAProxy par exemple.

35
Sirch

En plus de changer CNAME comme d'autres réponses le suggèrent, vous devez également gérer la logique de votre serveur d'hébergement. J'utilise Apache et je l'ai configuré comme:

<VirtualHost 1.2.3.4:80>
    ServerName  www.abc.com
    ServerAlias abc.com
    ...
</VirtualHost>

<VirtualHost 1.2.3.4:80>
    ServerName  www.xyz.com
    ServerAlias xyz.com
    ...
</VirtualHost>

Je suis sûr que d'autres logiciels de serveur http ont des choses similaires.

6
Yandong Liu

Il convient également de noter qu'en IPv6, vous pouvez attribuer la même IP à deux hôtes ou plus et le réseau effectuera l'équilibrage de charge et le basculement pour vous (si l'un n'est pas accessible, essayez l'autre). Les deux sont considérés comme un seul point de terminaison logique et aucun DNS n'est impliqué.

Cette fonctionnalité est connue sous le nom de Anycast .

2
scravy

Vous devez être clair sur ce que vous entendez par deux noms d'hôtes. Si vous voulez dire deux boîtes physiques avec la même adresse IP, la réponse est généralement non. Un cas où vous le feriez serait que si serverA et serverB fonctionnent comme un cluster actif-passif, alors chaque serveur aurait deux adresses par pièce. L'une serait une adresse IP dédiée à ce serveur et la deuxième adresse IP serait celle qui était partagée entre les serveurs, mais seul le serveur actif écoutera cette adresse partagée. Le serveur passif ne commence à écouter l'adresse partagée que lorsque le serveur actif tombe en panne.

2
Keith Wolters

IP multiples pour un même domaine:

  • Oui, c'est possible et très courant: si un serveur (avec ip A) tombe en panne, vous pouvez vous connecter à la prochaine IP du registre DNS et accéder à un autre serveur (avec ip B) pour obtenir le service.

Plusieurs domaines pour une même IP:

Vous devez répondre à la question suivante: tous les domaines fournissent-ils le même service?

  • Si oui: c'est aussi une configuration très courante: beaucoup d'entreprises achètent beaucoup de domaine avec un domaine supérieur de pays différent: xxx.com, xxx.net, xxx.org, etc. Et toutes pointent vers le même service, c'est-à-dire , à la même liste d'adresses IP.
  • Si non: c'est possible mais pas courant et non recommandé. Certaines sociétés d'hébergement qui n'autorisent que le service HTTP utilisent NAT/Proxy pour épargner IP. Mais bien sûr, cela signifie un proxy qui "comprend" HTTP pour identifier le service de destination.
1
Adrian Maire

De nombreux serveurs de télécommunications (comme HSS et PCRF) utilisent le transport SCTP et ces serveurs ont donc plusieurs adresses IP. Ces adresses sont utilisées pour le multi-hébergement (que SCTP prend en charge) fournissant la connexion avec redondance et basculement.

0
Nissar Ali