Archives de septembre, 2014

Introduction

Sous Windows Server 2008 R2, on distingue deux options permettant d’avoir une infrastructure DHCP hautement disponible :

> Mise en place d’un Cluster DHCP : Le serveur DHCP principal accompagné d’un serveur DHCP supplémentaire sont placés dans un Cluster. Le deuxième serveur DHCP du Cluster prend le relais quand le serveur DHCP principal est indisponible. Cette option nécessite un espace de stockage partagé unique, qui, représente un point d’échec et donc nécessite une redondance (en matière de stockage) pour une continuité de service en cas de problème.

> Configuration d’une Etendue DHCP Fractionnée : Cette option nécessite aussi deux serveurs DHCP, ceux ci sont indépendants et partagent la même configuration de l’étendue DHCP (Plage d’adresse IP, IP réservées ..etc). La règle 80/20 ou 70/30 ou encore 60/40 pour équilibrer la charge entre les deux serveurs DHCP est utilisée. En effet, 70% des adresses IP de l’étendue sont distribuées par défaut par le premier serveur DHCP, en cas de problème, le deuxième serveur DHCP peut distribuer jusqu’à 30% des adresses IP de l’étendue. L’étendue DHCP fractionnée peut ne pas fournir de continuité de service DHCP dans certains scénarios où l’étendue est déjà utilisée par l’espace d’adressage, ce qui est fréquent avec IPv4.
Depuis Windows Server 2012, Microsoft a simplifiée les options de redondance du service DHCP, en effet, l’IT peut mettre en place une infrastructure DHCP HA sans devoir relever les défis que représentent les options abordées précédemment.

En effet, l’option de basculement du serveur DHCP sous Windows Server 2012 /2012 R2 permet à un maximum de deux serveurs DHCP de distribuer les adresses IP ainsi que les options de l’étendue aux clients DHCP en continu, deux modes de configuration sont possibles :

Mode « Serveur de secours » : les deux serveurs DHCP répliquent les informations de bail entre eux, en accordant à l’un des serveurs la responsabilité de servir des clients sur tout le sous-réseau en cas d’indisponibilité de l’autre serveur.

Mode « Équilibrage de charge » :  les deux serveurs entretiennent une relation de basculement et distribuent simultanément les adresses IP et les options d’étendue aux clients, ils équilibrent la charge et se partagent les demandes DHCP envoyées par les clients DHCP

Scénario de déploiement

Je vous présente à travers cet article toutes les étapes de mise en place et configuration d’une infrastructure DHCP hautement disponible sous Windows Server 2012 R2, pour ce faire, nous allons travailler sur un scénario un peu particulier pour simuler un réseau d’entreprise ou souvent le serveur DHCP est installé sur un serveur existant faisant office de DC, FS, DNS ou autre.

Note: éviter de dédier une VM ou un serveur physique au service DHCP avant d’étudier la charge prévue pour celui ci (nombre de clients DHCP, fréquence d’utilisation 7/7, 7h par jour ..Etc). En effet, selon la taille de l’entreprise (TPE/PME/Grand compte) et aussi de la taille de son infrastructure système (nombre de serveur, nombre de poste de travail) un serveur DHCP peut être installé un serveur existant ou sur un serveur dédié. Dans l’exemple suivant, pour éviter d’illustrer une maquette avec deux serveurs DHCP type DHPC01 et DHCP02 ou encore DHCPHA01 et DHCPHA02, je vais tout simplement installer le premier serveur DHCP sur un DC (contrôleur de domaine) existant et déployer un deuxième serveur pour le basculement DHCP, celui ci sera un Windows Server Core 2012 R2 (option d’installation minimale) nécessitant moins de ressources (Espace disque, RAM, CPU) pour économiser les ressources de mon hyperviseur. Ayez ce reflex aussi 🙂 !

 

Informations LAB

Un DC faisant aussi office de serveur DHCP | Hostname : SRV2012R2
Un WServer Core 2012 R2 faisant office de deuxième serveur DHCP pour le basculement DHCP | Hostname : DHCPHA
Un poste de travail (client DHCP) exécutant Windows 8.1 Enterprise | Hostname : LABCLTW81

DHCP HA – Déploiement

Sur SRV2012R2

Nous allons dans un premier temps ajouter et configurer le service DHCP sur le premier serveur « DC > SRV2012R2 »:

1) Lancez Windows PowerShell en tant qu’Administrateur et saisissez : Add-WindowsFeature DHCP -IncludeManagementTools

L’ajout /installation du rôle DHCP démarre

2) Une fois installé, le message suivant apparaît:

3) Depuis la fenêtre ouverte de Windows PS, saisissez start cmd.exe et ensuite sc query dhcpserver depuis l’invite de commande

Le statut du service DHCP Server doit être « RUNNING » comme illustré dans l’image ci-après:

4) Depuis l’interface UI, une nouvelle application apparaît, il s’agit tout simplement de la console de gestion (snap-in) du DHCP Server. Cliquez dessus:

5) Une fois ouverte, la console de gestion DHCP indique deux flèches basses rouges sur les deux noeuds IPv4 & IPv6, il s’agit tout simplement d’un problème d’autorisation du serveur DHCP au niveau de l’Active Directory, il suffit de faire un clic droit sur le nom du serveur et sélectionner « Autoriser » pour rendre le serveur DHCP opérationnel.

Astuce : l’outil Netsh.exe avec le contexte « dhcp » peut être utilisé pour effectuer cette action, voir ligne de commande suivante :

Le serveur DHCP est désormais autorisé, la commande suivante le confirme:

Astuce : si vous souhaitez cette fois ci interdire le serveur DHCP, il suffit de remplacer le paramètre « Add » par « Delete » > Netsh dhcp delete server Hostname_DHCPServer IP_DHCPServer

L’étape suivante consiste à créer une étendue DHCP (e.i pour le département Marketing) dans laquelle on va spécifier une plage d’adresse IP et des options DHCP à distribuer aux clients DHCP du réseau.

=> Les informations suivantes seront utilisées :

Nom de l’étendue           : DepartMarketing 
ID Réseau                        : 10.20.30.0
Masque de sous réseau  :  255.255.255.0

6) Depuis l’invite de commande (cmd.exe), saisissez la commande suivante pour créer l’étendue « DepartMarketing »

Netsh dhcp server add scope 10.20.30.0 255.255.255.0 « DepartMarketing »

7) Saisissez la commande suivante pour ajouter la plage d’adresse IP « 10.20.30.150 -> 10.20.30.200 »

Netsh dhcp server scope 10.20.30.0 add iprange 10.20.30.150 10.20.30.200

8) Nous allons spécifier les options d’étendue suivantes :

DNS Server : 10.20.30.100

IP Passerelle : 10.20.30.1

Nom du domaine : vLAB.LAN

Constatez l’ajout des options d’étendue configurées précédemment

Afin de simplifier la démonstration du basculement DHCP, nous allons modifier la durée de bail qui est par défaut de 8 jours (691,200 secondes) à 3 minutes (180 secondes)

9) Depuis l’invite de commande (cmd.exe), saisissez :

Netsh dhcp server set optionvalue 051 DWORD 180

Sur DHCPHA

J’ai juste déployé Windows Server 2012 R2 en mode « Core » et nous allons procéder à sa configuration, merci de suivre les instructions suivantes :

1) Depuis l’invite de commande, saisissez la commande suivante pour changer le hostname du serveur qui est par défaut « WIN-XXXXXXXXX ». et le redémarrer après 5 secondes.

Netdom renamecomputer localhost /NewName:DHCPHA /Reboot:5

2) Après le redémarrage du serveur, ouvrez une session Windows sur le serveur et constatez le changement du hostname:

3) Saisissez la commande suivante pour connaitre le nom de la carte réseau que nous allons configurer par la suite:

Netsh Interface show interface

4) Dans l’exemple suivant, le nom de l’interface réseau est « Ethernet0 », donc j’utilise les commandes ci-après pour configurer :

L’IP statique                                        : 10.20.30.101)
Masque de sous-réseau                     : 255.255.255.0 (/24)
IP du routeur (Passerelle par défaut)  : 10.20.30.1
DNS Server (IP du DC)                        : 10.20.30.100

Netsh Interface IPv4 set address name= »Ethernet0″ source=static address=10.20.30.101 mask=255.255.255.0 gateway=10.20.30.1 
Netsh Interface IPv4 add dnsserver name= »Ethernet0″ address=10.20.30.100 index=1

5) Saisissez IPConfig /all pour s’assurer que l’interface réseau a bien été configurée :

6) Maintenance que la NIC est configurée et l’IP du DNS Server (DC) est spécifiée, nous allons joindre le serveur DHCPHA au domaine ‘vLAB.LAN’, pour ce faire, utilisez la commande suivante:

Netdom join localhost /Domain:VLAB.LAN /UserD:Administrateur /PasswordD:* /Reboot:5

Note : PasswordD:* nous évitera de saisir le mot de passe en clair.

Vous êtes invité à saisir le mot de passe de l’admin du domaine, une fois spécifié & validé, le serveur redémarrera au bout de 5 secondes.

7) Après le redémarrage, ouvrez une session Windows en utilisant un compte utilisateur du Domaine ayant des privilèges Admin et saisissez:

Powershell Add-WindowsFeature DHCP -IncludeManagementTools

8) Saisissez sc query dhcpserver et vérifiez que le service DHCP server est en cours d’exécution (status : RUNNING)

9) Saisissez la commande suivante pour autoriser le serveur DHCP (cette fois exécuté sur le serveur Core DHCPHA) au niveau de l’AD:

Netsh dhcp add server DHCPHA.vLAB.LAN 10.20.30.101


Maintenant qu’on a créé une étendue DHCP, configuré les options de l’étendue et configuré un deuxième serveur DHCP sur le réseau, nous allons voir comment configurer une relation de basculement et le mode de basculement entre les deux serveurs DHCP partenaires (SRV2012R2 & DHCPHA).

DHCP HA – Configuration

Avant de créer la relation de basculement entre les deux serveurs DHCP et d’aller plus dans la démonstration, j’aimerais d’abord s’assurer que le poste client Windows 8.1 arrive bien à obtenir sa configuration TCP/IP depuis le serveur (pour l’instant) principal SRV2012R2. Donc depuis le poste de travail, je vais tout simplement vérifier que la NIC est configurée en mode « obtenir une adresse IP automatiquement »:

Ouvrez l’invite de commande et saisissez ipconfig /release pour libérer la configuration DHCP actuelle ensuite ipconfig /renew pour renouveler la configuration DHCP client. Le poste de travail est censé récupérer sa configuration TCP/IP depuis le serveur SRV2012R2 (son IP 10.20.30.100):

Maintenant qu’on est sure que le fonctionnement Client /Serveur DHCP est OK, nous allons procéder à la configuration du basculement DHCP entre les deux serveurs, pour ce faire, suivez les instructions suivantes:

1) Depuis le serveur SRV2012R2, ouvrez la console de gestion DHCP (dhpcmgmt.msc)

2) Faites un click droit sur DHCP et sélectionnez « Ajouter un serveur »

3) Cochez « Ce serveur DHCP autorisé » et sélectionnez votre serveur dans la liste, dans notre exemple, il s’agit du serveur DHCPHA, cliquez ensuite sur OK

4) Une fois ajouté, le deuxième serveur (WServer Core : DHCPHA) apparaît bien dans la liste (volet gauche)

5) Pour créer la relation de basculement entre les deux serveurs, faites un click droit sur l’étendue créée précédemment (qui est normalement sur le premier serveur), ensuite sélectionnez « Configurer un basculement »

6) L’assistant de configuration du basculement s’affiche et vous liste uniquement les étendues pouvant être configurées pour une haute disponibilité. Les étendues déjà configurées n’apparaissent pas sur la liste. Cliquez sur Suivant pour continuer

7) Cliquez sur « Ajouter un serveur » et sélectionnez le deuxième serveur DHCP (Serveur Partenaire)

8) Attribuez un nom à la relation de basculement, spécifiez un délai de transition maximal du client à 2 minutes (pour simplifier la démonstration), choisissez le mode de basculement (par défaut, c’est le mode « Équilibrage de charge » qui est choisi), choisissez le rôle du deuxième serveur DHCP (Serveur partenaire) « Active ou Veille », spécifiez une règle de distribution d’adresses IP (70/30 – 80/20 – 90/10 .. dans notre exemple, le deuxième serveur attribuera uniquement 20% des adresses IP de la plage) et enfin spécifier un Secret partagé (ça peut être un mot, une phrase, une série de numéro …). Cliquez sur Suivant pour continuer

Note : Dans cet exemple, nous allons utiliser plutôt le deuxième mode « Serveur de secours », ayant un seul poste de travail sur la maquette, je ne pourrais simuler l’utilisation du deuxième mode « Équilibrage de charge », il faut au moins quelque poste de travail et/ou serveurs pour simuler la répartition des charges sur les deux serveurs DHCP.
Mais n’hésitez pas à tester le premier mode chez vous si vous disposez d’un bac à sable avec plusieurs VMs. 

9) Un récapitulatif de la configuration du basculement DHCP entre les deux serveurs est affiché, cliquez sur Terminer pour fermer l’assistant et finaliser la configuration du basculement DHCP

10) Vérifiez que toutes les étapes de configuration sont « Réussites« , cliquez enfin sur Fermer pour fermer la boite de dialogue « Configurer un basculement »

11) Maintenant que le  basculement est configuré et que la relation de basculement et créée et configurée entre les deux serveurs DHCP, vérifiez que le deuxième serveur DHCP (dans notre cas DHCPHA) a bien récupérée la configuration du premier serveur : apparition de l’étendue 10.20.30.0 – DepartMarketing & ses options.

Nous arrivons à la dernière étape de cette démonstration et allons tester notre infrastructure DHCP qui est normalement hautement disponible grace à la configuration de basculement DHCP entre les deux serveurs DHCP, pour ce faire, nous allons arrêter le premier serveur DHCP (SRV2012R2) et voir si le deuxième (serveur DHCP en mode « Serveur de secours ») prend le relais.

12) Depuis la console de gestion DHCP, faites un clic droit sur le premier serveur DHCP (dans notre exemple « SRV2012R2 »), sélectionnez « Toutes les tâches » et cliquez sur « Arrêter »

13) Dès que le serveur principal est arrêté, ouvrez l’invite de commande (cmd.exe) depuis le poste de travail, et saisissez IPConfig /Renew

Saisissez ensuite IPConfig /All et vérifiez que le deuxième serveur de secours prend le relais et distribue désormais la configuration TCP/IP au poste de travail.
Vérifiez l’entrée « Serveur DHCP », comme illustré sur l’image ci-après:

Comme vous pouvez le constater, notre infrastructure DHCP à basculement est opérationnelle et la continuité de service DHCP est assurée.

Conclusion

Comme nous avons pu le voir à travers cet article, la mise en place d’une infrastructure DHCP hautement disponible sous Windows Server 2012 R2 est devenu un vrai jeu d’enfant, simple à mettre en place et à configurer.
En revanche, notez qu’une phase d’étude d’une architecture DHCP cible doit avoir lieu avant de se lancer dans le déploiement et la configuration. En effet, dans certains scénarios, et selon le besoin /taille de l’infrastructure système /spécifications techniques client ..Etc le mode « Equilibrage de charge » est priviligé, dans d’autres scénarios, c’est le mode « Serveur de secours » qui est choisi, ayez l’habitude d’étudier ces options, de les présenter à la DSI avant mise en place.