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

35

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

Et si un nom d’hôte représente plus d’une adresse IP, est-ce également possible? Pourquoi?

jean
la source
18
Vous voulez un exemple du monde réel où cela se produit? Cinglez serverfault.comet superuser.comregardez l'adresse IP qui est renvoyée pour les deux.
Scott Chamberlain
1
Tous les noms d'hôtes partagent déjà l'adresse 127.0.0.1, en quelque sorte ...
jlliagre

Réponses:

45

L'attribution de plusieurs adresses IP à un seul 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, rr.example.comvous obtenez une liste d'adresses IP. Vous pouvez ensuite choisir de vous connecter à l'un d'entre 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 ordinateurs d'extrémité refusent activement la connectivité TCP. En cas d'expiration du point de terminaison, la ressource sera considérée comme inaccessible même si toutes les adresses IP n'ont pas été essayées.

Etant donné que la plupart des applications (navigateurs inclus) ne s'intéressent souvent qu'à un point de terminaison IP à la fois et ne choisissent que 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 risquent d'être inactifs. .

Pour contourner ce problème, la plupart des serveurs DNS offrent ce qu’on appelle une configuration à la ronde, ce qui oblige le serveur à alterner l’ordre dans lequel les enregistrements identiques sont renvoyés. Avant que les équilibreurs de charge ne deviennent monnaie courante, c'était un moyen efficace d'équilibrer la charge et de mettre en place une certaine tolérance aux pannes sur les systèmes de réseau.

Mathias R. Jessen
la source
7
La question ne demande-t-elle pas l'inverse?
Mowwwalker
2
Il y a deux questions. @Sirch a déjà bien couvert la première partie
Mathias R. Jessen le
Oh, je vois, j'ai sauté la description. Merci pour la réponse btw!
Mowwwalker
1
Est-ce que les navigateurs / piles de réseau essaient généralement la première adresse reçue? Ou vont-ils essayer un hasard? Serait-il judicieux de rendre aléatoire l'ordre dans lequel les adresses IP sont renvoyées par votre serveur DNS pour tenter d'équilibrer la charge?
Tom Marthenal
Dépend de l'implémentation spécifique du client. La plupart des serveurs vont randomiser l'ordre des adresses IP retournées (c'est le comportement appelé "round-robin"). Des questions intéressantes en fait, je pense que je vais développer un peu la réponse
Mathias R. Jessen le
35

Oui, il est possible que plusieurs noms d'hôte utilisent la même adresse IP. La meilleure pratique consiste à utiliser un enregistrement CNAME pour pointer sur 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 le système DNS en utilisant des numéros de priorité. Si vous voulez qu’elle représente plusieurs enregistrements A, il est préférable d’utiliser un équilibreur de charge, HAProxy par exemple.

Sirch
la source
6
Il convient de noter, et j'ai vu sur Internet réel, des chaînes de CNAME qui ont cassé les résolveurs de noms. Parce qu'un CNAME peut pointer vers un autre CNAME. Même les boucles CNAME sont possibles.
PP.
2
RFC 1912 2.4 ietf.org/rfc/rfc1912.txt
dmourati le
Il est également intéressant de noter que les Aenregistrements contenant la même adresse IP peuvent apparaître dans différentes zones, par exemple, x.foo.com. A 1.2.3.4et y.bar.com. A 1.2.3.4.
Blrfl
Cette réponse oublie de parler des Aenregistrements génériques , qui conduisent également à plusieurs noms d'hôte sur la même adresse IP.
Izzy
Hey Sirch, quel est le problème avec les arrêts complets?
JonoRR
6

En plus de changer CNAME comme d'autres réponses suggérées, vous devez également gérer la logique sur 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.

Yandong Liu
la source
2

Vous devez définir clairement ce que vous entendez par deux noms d’hôte. Si vous voulez parler de deux boîtes physiques avec la même adresse IP, la réponse est généralement non. Par exemple, si serverA et serverB fonctionnent comme un cluster actif-passif, chaque serveur doit avoir deux adresses par pièce. L'une serait une adresse IP dédiée à ce serveur et la deuxième une adresse partagée par 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.

Keith Wolters
la source
2

Il est également intéressant de noter que dans IPv6, vous pouvez attribuer la même adresse IP à deux hôtes ou plus et le réseau procédera à l'équilibrage de la charge et au basculement (pour vous, si l'un n'est pas accessible, essayez l'autre). Les deux sont considérés comme un seul point d'extrémité logique et aucun DNS n'est impliqué.

Cette fonctionnalité est appelée Anycast .

effronté
la source
1

Adresse IP multiple 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 adresse IP du registre DNS et accéder à un autre serveur (avec ip B) pour obtenir le service.

Plusieurs domaines pour une même adresse 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 domaines avec différents pays: xxx.com, xxx.net, xxx.org, etc. Et toutes désignent le même service, c’est-à-dire , à la même liste de IP.
  • Si non: C'est possible mais pas commun et pas recommandé. Certaines sociétés d'hébergement qui n'autorisent que les services HTTP utilisent NAT / Proxy pour épargner IP. Mais bien sûr, cela signifie un proxy qui "comprend" HTTP pour identifier le service de destination.
Adrian Maire
la source
0

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

Nissar Ali
la source