web-dev-qa-db-fra.com

Sous-domaine de sous-domaine? Comment est-ce possible?

J'ai vu un sous-domaine d'un sous-domaine: meta.unix.stackexchange.com
Comment est-ce possible?

Parce que dans les fournisseurs d’hébergement/dns, je ne peux configurer que des sous-domaines, et non des sous-domaines de sous-domaines, c.-à-d.: subdomain.example.com, etc ...

Si j'achète un nom de domaine ou même un sous-domaine gratuit no-ip.org, i.e .: example.no-ip.org pourrai-je configurer avec bind9 sous Ubuntu, par exemple, ce schéma: subsubdomain.example.no-ip.org

4
DiogoSaraiva

C'est possible exactement de la même manière que unix.stackexchange.com lui-même est possible. DNS n'impose aucune hiérarchie spécifique, comme "subdomain - domain - toplevel", vous pouvez ajouter autant d'étiquettes que nécessaire et des délégations à n'importe quel niveau.

(Prenons par exemple "www.theregister.co.uk". Est-ce que "il existe" un domaine ou un sous-domaine? Les deux. )

En d'autres termes, les administrateurs viennent d'ajouter "meta.unix.stackexchange.com" à leur logiciel de gestion DNS.

  • Par exemple, dans un fichier de zone BIND, cela pourrait ressembler à ceci:

    ...
    unix.stackexchange.com.      A 198.252.206.140
    meta.unix.stackexchange.com. A 198.252.206.140
    ...
    

    (Cela vous permet de voir que tous les niveaux sont fonctionnellement équivalents.)

  • Ou comme ceci:

    $Origin stackexchange.com.
    ...
    unix      A 198.252.206.140
    meta.unix A 198.252.206.140
    ...
    

Il est donc possible que votre panneau de configuration DNS permette également de saisir "meta.unix" en tant que nom de sous-domaine. Si ce n'est pas le cas, c'est une limite totalement artificielle décidée par votre hôte. Le serveur DNS lui-même autorise 127 "niveaux" au total (chaque étiquette individuelle jusqu'à 63 octets). , le nom complet jusqu’à 253 octets).

Par exemple, No-IP peut avoir une telle limite pour des raisons marketing/commerciales (vous obliger à acheter un domaine réel au lieu de créer librement des sous-domaines à partir du domaine partagé. les uns.)


Pour des raisons similaires, vous ne pourrez utiliser bind9 (ou nsd, djbdns ...) avec un domaine acheté, pas avec un sous-domaine sans adresse IP.

  • Techniquement, No-IP pourrait déléguer un sous-domaine à votre propre serveur bind9. Il suffit simplement d'ajouter des enregistrements de type NS, comme vous ajoutez A/AAAA /. CNAME ceux:

    foobar.no-ip.org.  NS ns1.fakeisp.com.
    foobar.no-ip.org.  NS ns2.fakeisp.com.
    

    (Remarque: Oui, NS enregistrements n'acceptent que les noms, pas les adresses IP. Pour cette raison, si vous hébergez vous-même le domaine sur vos propres serveurs DNS, vous aurez besoin d'un "enregistrement collé":

    quux.no-ip.org.    NS ns.quux.no-ip.org.
    ns.quux.no-ip.org. A  172.16.42.42
    

    Mais c'est un sujet pour un autre post.)

  • Mais dans la pratique, ils ne le feront pas, pour des raisons commerciales - ils vendront des noms de domaine, après tout.

6
grawity

J'ai vu un sous-domaine d'un sous-domaine: meta.unix.stackexchange.com

C'est normal, un nom de domaine pleinement qualifié (FQDN) peut comporter un grand nombre d'éléments. Le protocole DNS et la plupart (probablement la totalité) des implémentations de serveur DNS vous permettent de déléguer des sous-domaines à une profondeur arbitraire. Je pense que jusqu'à ce que vous atteigniez la limite stricte de 255 caractères sur la longueur d'un nom de domaine complet. chaque élément ne doit pas comporter plus de 63 caractères.

Par exemple, DNS laisserait un administrateur excentrique créer

www.tablet-layout.windows.95.us.deleted.meta.unix.stackexchange.com

Et toujours avoir "A" records aux niveaux intermédiaires.

Comment est-ce possible?

Lors de la gestion du niveau supérieur d'un service DNS d'entreprise, la création de sous-domaines consistait à déléguer des sous-domaines, souvent à d'autres serveurs, mais parfois au même serveur de noms, tout en maintenant les données de sous-domaine séparées dans des fichiers de zone distincts. Cela utilisait BIND.

Je n'aurais jamais rêvé d'utiliser un point dans un nom de noeud.

The following syntax will result in fewer problems with many applications 
that use domain names (e.g., mail, TELNET).

<domain> ::= <subdomain> | " "

<subdomain> ::= <label> | <subdomain> "." <label>

<label> ::= <letter> [ [ <ldh-str> ] <let-Dig> ]

<ldh-str> ::= <let-Dig-hyp> | <let-Dig-hyp> <ldh-str>

<let-Dig-hyp> ::= <let-Dig> | "-"

<let-Dig> ::= <letter> | <digit>

<letter> ::= any one of the 52 alphabetic characters A through Z 
             in upper case and a through z in lower case

<digit> ::= any one of the ten digits 0 through 9

Notez que cela ne fournit pas de points dans les étiquettes. Les logiciels qui supportent cela créent probablement effectivement des sous-domaines sous le capot.


  1. ENREGISTREMENT DES ESPACES DE NOMS DE DOMAINE ET DES RESSOURCES

3.1. Espace de nom, spécifications et terminologie

L'espace de nom de domaine est une arborescence. Chaque nœud et feuille de l’arbre correspond à un ensemble de ressources (qui peut être vide). Le système de domaine ne fait aucune distinction entre les utilisations des nœuds intérieurs et des feuilles , et ce mémo utilise le terme "nœud" pour désigner les deux.

Chaque nœud a une étiquette d'une longueur de zéro à 63 octets. Les nœuds Brother peuvent ne pas avoir la même étiquette, bien que la même étiquette puisse être utilisée pour les nœuds qui ne sont pas frères. Une étiquette est réservée, c’est l’étiquette nulle (c’est-à-dire de longueur nulle) utilisée pour la racine.

Voir

3
RedGrittyBrick