DNS, DNS, DNS !!!

On ne le dira jamais assez : la règle d’or, quand on installe Mac OS X Server, est d’avoir un service DNS fonctionnel sur le réseau. Un petit rappel : le DNS (Domain Name System) est utilisé pour faire la correspondance entre une adresse IP et le nom d’une machine ou d’un service sur le réseau. C’est ce qui vous permet par exemple, lorsque vous tapez www.apple.com, d’atterrir sur le serveur d’Apple, dont l’adresse IP est 17.254.0.91. Tout cela grâce à un serveur DNS, situé quelque part entre votre ordinateur et le serveur recherché. Le DNS est donc l’annuaire des services réseau par excellence et une des clés de voute d’Internet.

Cependant, si Mac OS X arrive encore à fonctionner correctement même sans serveur DNS sur le réseau, la mise en place d’un DNS bien configuré devient incontournable quand on installe Mac OS X Server. La règle d’or est ici : Tout poste sur lequel est installé Mac OS X Server doit être capable de faire une requête sur sa propre adresse IP et d’obtenir les informations DNS en forward (recherche d’une adresse IP à partir d’un nom de domaine) et en reverse (recherche d’un nom de domaine à partir d’une adresse IP. Si vous souhaitez mettre en place un serveur maître Open Directory, la question ne se pose même pas : si vous n’avez pas de DNS bien configuré pour votre serveur, le service fonctionnera mal, et Kerberos ne se lancera pas.

Mac OS X Server 10.4.6 et suivant ont rajouté une règle supplémentaire : le nom d’hôte du serveur (hostname) doit être identique au nom DNS du serveur. Quand vous tapez la commande hostname sur votre serveur, celui-ci doit vous renvoyer un nom correspondant à son entrée DNS dans le serveur. De plus, avant la 10.4.6, il était d’usage de renseigner le hostname dans le fichier /etc/hostconfig en remplaçant la ligne HOSTNAME=-AUTOMATIC- par HOSTNAME=serveur.exemple.com. Or, depuis la 10.4.6, il ne faut pas agir ainsi : il est indispensable de laisser la ligne HOSTNAME=-AUTOMATIC- telle quelle. Sans cela, votre serveur affichera de nombreux messages d’erreur dans la Console. Tous ces changements sont renseignés en français dans les articles 303495 et 303697, de plus en français : aucune excuse pour ne pas les lire donc !

Maintenant, une recommandation : lorsque vous entrez votre serveur, créez une entrée sous forme d’alias pour chaque service qui sera exploité sur votre serveur. Ainsi, vous avez créé serveur.exemple.com : très bien, mais dans ce cas, si vous activez le service web, ajoutez www.exemple.com qui pointera vers serveur.exemple.com. Vous activez le service ftp ? Ajoutez ftp.exemple.com et dites à vos utilisateurs de pointer dessus. Ne leur dites même pas qu’il s’agit de la même machine. Cette approche a au moins deux mérites :
1) Si un service monte en charge et que vous décidez de rajouter une nouvelle machine pour gérer ce service, vous n’avez pas besoin de vous prendre la tête pour la configuration : il suffit de faire pointer l’alias vers la nouvelle machine (que vous aurez évidemment pris soin de référencer au préalable dans le DNS) ;
2) certains services distinguent l’adresse DNS utilisée pour se connecter vers le serveur afin de donner accès à des ressources particulières. Ainsi, le service web peut donner accès à des sites différents selon que l’on utilise un nom de domaine ou un autre pour se connecter. Pratique pour héberger plusieurs sites distincts en interne sur le même serveur… Et là encore, si vous souhaitez un jour faire migrer un de ces sites sur une autre plate-forme, ce sera bien plus simple qu’avec l’adresse IP intégrée.

Pour plus de renseignements sur l’art de bien configurer le DNS, je vous renvoie à l’excellent travail de traduction d’un article de l’exceeeellent site AFP548 effectué par les soins du non moins exceeeellent Laurent Pertois en personne sur mosx.net il y a quelques temps de ça.

Et bien évidemment, si vous avez peur de faire vous-même la configuration DNS de votre serveur, vous pouvez toujours demander à un consultant de le faire pour vous. Cela a l’air de rien, mais un serveur DNS bien configuré en interne peut considérablement assouplir l’accès à vos serveurs, améliorer les performances du réseau (grâce à un cache DNS) et facilitera l’accroissement de votre architecture informatique, si votre activité venait à s’intensifier (et c’est tout le mal que je vous souhaite !).

8 comments

  1. Franck dit :

    Voilà un billet qui tombe à pic ! J’ai justement un DNS à configurer en ce moment ;-)

  2. […] vous souvenez à quel point je suis pénible à rappeler tous les trois articles que le service DNS est indispensable à la bonne configuration de Mac OS X Server […]

  3. […] avoir installé Mac OS X Server sur un Mac et vérifié vos DNS, vous allez peut-être vous poser LA grande question universelle : faut-il utiliser le service […]

  4. levesque dit :

    Salut, j’ai une question. J’ai un intranet sur mon réseau ou plusieurs applications tournent. Le problème est le suivant. J’ai une application web en java dont la page de démarrage est dans un contexte java. Le dossier de départ est par exemple distri. Pour le moment, pour se connecter à cette appli, l’utilisateur doit se connecter via un navigateur web en tapant l’adresse Ip du serveur ou est hébergé l’appli + le dossier de départ. par exemple : 192.168.1.225/distri. J’ai paramétré un DNs sous mac OS 10.4.11 qui fonctionne très bien, mais je n’arrive pas à configurer le DNs pour que l’utilisateur n’est qu’à taper distri pour arriver à l’application. Aurais tu une idée? Merci

  5. GG dit :

    Le plus simple est de configurer Apache pour créer un site pointant sur le dossier distri et de lui donner le nom DNS que tu veux, par exemple distri.gete.net.

    Si côté client tu spécifies que le domaine de recherche est gete.net, tes utilisateurs n’auront qu’à taper « http://distri », et zou, sur le bon dossier !

  6. jpaul dit :

    Bonjour,

    nous mettons en place un max os x serveur. Comment changer le nom de domaine de l’installation sans avoir à refaire toute l’install ?

    D’avance merci

  7. arrangeurs dit :

    juste un petit mot pou rvous dire que votre blog est rès agréable !

  8. […] et DNS sont fondamentaux au bon fonctionnement du serveur (je vous l’ai déjà expliqué ici et là dans une belle fiche pratique), il y a un point sur lequel je vais sensiblement différer : […]