Le protocole DHCP (Dynamic Host Configuration Protocol) permet aux systèmes hôtes d'un réseau TCP/IP d'être configurés automatiquement pour le réseau lors de leur initialisation. Le DHCP utilise un mécanisme client/serveur. Les serveurs stockent et gèrent les informations de configuration des clients et les fournissent à leur demande. Ces informations comprennent l'adresse IP du client ainsi que des informations sur les services réseau accessibles au client.
L'un des avantages majeurs du DHCP est sa capacité de gérer les affectations d'adresses IP par leasing. Cette fonction permet de récupérer les adresses IP non-utilisées et de les ré-attribuer à d'autres clients. Cela permet à un site d'utiliser un pool d'adresses IP plus petit que celui qui serait nécessaire si tous les clients possédaient une adresse permanente.
Vous pouvez utiliser le DHCP pour installer l'environnement d'exploitation Solaris sur certains systèmes clients de votre réseau. Seuls les systèmes Sun Enterprise Ultra et x86 remplissant les conditions matérielles requises pour exécuter l'environnement d'exploitation Solaris peuvent utiliser cette fonction.
La liste des tâches suivante présente les tâches de haut niveau à effectuer pour permettre aux clients d'obtenir les paramètres d'installation à l'aide du DHCP.
Tableau 7–3 Liste des tâches : préconfiguration des informations de configuration du système avec le service DHCP
Tâche |
Description |
Instructions |
---|---|---|
Définir un serveur d'installation. |
Définissez un serveur Solaris afin qu'il prenne en charge les clients devant installer l'environnement d'exploitation Solaris à partir du réseau. | |
Définir les systèmes clients pour l'installation de Solaris sur le réseau à l'aide du DHCP. |
Utilisez add_install_client -d pour ajouter la prise en charge de l'installation réseau DHCP pour une catégorie de client (un certain type de machine, par exemple) ou pour un ID client particulier. |
Si vous utilisez le DVD Solaris : Ajout de systèmes à installer à partir du réseau à l'aide d'une image DVD Si vous utilisez le CD Solaris : Ajout de systèmes à installer à partir du réseau à l'aide d'une image CD |
Préparer votre réseau à utiliser le service DHCP. |
Déterminez la configuration de votre serveur DHCP. |
“Planning for DHCP Service (Task)” in System Administration Guide: IP Services |
Configurer le serveur DHCP. |
Pour configurer votre serveur DHCP, utilisez le gestionnaire DHCP. |
“Configuring DHCP Service (Task)” in System Administration Guide: IP Services |
Créer des options DHCP pour les paramètres d'installation et des macros incluant les options. |
Utilisez le gestionnaire DHCP ou dhtadm pour créer de nouvelles options Fournisseur, ainsi que des macros pouvant être utilisées par le serveur DHCP pour transmettre les informations d'installation aux clients. |
Création d'options DHCP et de macros pour les paramètres d'installation de Solaris |
Lorsque vous ajoutez des clients à l'aide du script add_install_client -d sur le serveur d'installation, le script affiche les informations de configuration DHCP sur une sortie standard. Ces informations peuvent être utilisées lors de la création des options et macros nécessaires à la transmission des informations d'installation réseau aux clients.
Pour installer des clients DHCP à partir du réseau, vous devez créer des options de catégorie Fournisseur pour transmettre les informations nécessaires à l'installation de l'environnement d'exploitation Solaris. Le Tableau 7–4 montre les options que vous devez créer et les propriétés requises pour leur création.
Vous pouvez personnaliser les macros de votre service DHCP pour exécuter les types d'installation suivants :
Installations pour une classe spécifique : vous pouvez demander au service DHCP d'effectuer une installation réseau pour tous les clients d'une classe spécifique. Par exemple, vous pouvez définir une macro DHCP exécutant la même installation sur tous les systèmes Sun Blade du réseau. Utilisez le résultat de la commande add_install_client -d pour définir une installation pour une classe spécifique.
Installations pour un client spécifique : vous pouvez demander au service DHCP d'effectuer une installation réseau pour un client ayant une adresse ethernet spécifique. Vous pouvez par exemple définir une macro DHCP exécutant une installation spécifique pour le client ayant l'adresse ethernet 00:07:e9:04:4a:bf. Utilisez le résultat de la commande add_install_client -d -e ethernet_address pour définir une installation spécifique pour un client.
Pour de plus amples informations sur la définition des clients à installer sur le réseau, reportez-vous aux procédures indiquées ci-après.
Pour les installations utilisant des médias DVD, consultez la rubrique Ajout de systèmes à installer à partir du réseau à l'aide d'une image DVD.
Pour les installations utilisant des médias CD, consultez la rubrique Ajout de systèmes à installer à partir du réseau à l'aide d'une image CD.
Les classes client fournisseur répertoriées dans ce tableau déterminent les classes client pouvant utiliser l'option. Les classes client fournisseur répertoriées ci-dessous ne sont que des exemples. Vous devez définir des classes client indiquant les clients actuels de votre réseau à installer à partir de celui-ci. Reportez-vous à la rubrique “Working With DHCP Options (Task Map)” in System Administration Guide: IP Services pour de plus amples informations concernant la définition de la classe client fournisseur d'un client.
Pour des informations détaillées sur les options DHCP, reportez-vous à la rubrique “DHCP Option Information” in System Administration Guide: IP Services.
Tableau 7–4 Valeurs pour la création des options de catégorie fournisseur pour des clients Solaris
Nom |
Code |
Type de données |
Granularité |
Maximum |
Classes client fournisseur * |
Description |
---|---|---|---|---|---|---|
Les options de la catégorie fournisseur ci-dessous sont nécessaires pour permettre au serveur DHCP de prendre en charge les clients de l'installation Solaris. Elles sont utilisées dans les scripts de démarrage des clients Solaris. |
||||||
SrootIP4 |
2 |
Adresse IP |
1 |
1 |
SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc |
Adresse IP du serveur racine |
SrootNM |
3 |
Texte ASCII |
1 |
0 |
SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc |
Nom d'hôte du serveur racine |
SrootPTH |
4 |
Texte ASCII |
1 |
0 |
SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc |
Chemin d'accès au répertoire racine du client sur le serveur racine |
SinstIP4 |
10 |
Adresse IP |
1 |
1 |
SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc |
Adresse IP du serveur d'installation JumpStart |
SinstNM |
11 |
Texte ASCII |
1 |
0 |
SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc |
Nom d'hôte du serveur d'installation |
SinstPTH |
12 |
Texte ASCII |
1 |
0 |
SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc |
Chemin d'accès à l'image d'installation sur le serveur d'installation |
Les options suivantes peuvent être utilisées par les scripts de démarrage du client, mais ne sont pas requises par ceux-ci. |
||||||
SrootOpt |
1 |
Texte ASCII |
1 |
0 |
SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc |
Options de montage NFS pour le système de fichiers racine du client |
SbootFIL |
7 |
Texte ASCII |
1 |
0 |
SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc |
Chemin d'accès au fichier d'initialisation du client |
SbootRS |
9 |
NOMBRE |
2 |
1 |
SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc |
Taille de lecture NFS utilisée par le programme d'initialisation autonome lors du chargement du noyau |
SsysidCF |
13 |
Texte ASCII |
1 |
0 |
SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc |
Chemin d'accès au fichier sysidcfg, au format serveur:/chemin |
SjumpsCF |
14 |
Texte ASCII |
1 |
0 |
SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc |
Chemin d'accès au fichier de configuration JumpStart, au format serveur:/chemin |
16 |
Texte ASCII |
1 |
0 |
SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc |
Chemin d'accès au fichier d'initialisation autonome ou chemin d'accès au fichier d'initialisation via connexion WAN. Pour le fichier d'initialisation autonome, utilisez le format suivant : tftp://inetboot.sun4u Pour le fichier d'initialisation via connexion WAN, le format est le suivant : http://host.domain/path-to-file Cette option peut être utilisée pour annuler les paramètres BootFile et siaddr afin de récupérer un fichier d'initialisation autonome. Protocoles pris en charge : tftp (inetboot), http (wanboot). Par exemple, utilisez le format suivant : tftp://inetboot.sun4u |
|
17 |
Texte ASCII |
1 |
0 |
SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc |
Adresse IP et numéro de port du serveur proxy utilisés par votre réseau. Cette option n'est nécessaire que lorsqu'un client effectue une initialisation via connexion WAN, et que le réseau local utilise un serveur proxy. Par exemple, utilisez le format suivant : 198.162.10.5:8080 |
|
Actuellement, les options suivantes ne sont pas utilisées par les scripts de démarrage des clients Solaris. Vous ne pouvez les utiliser que si vous éditez les scripts de démarrage. |
||||||
SswapIP4 |
5 |
Adresse IP |
1 |
0 |
SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc |
Adresse IP du serveur swap |
SswapPTH |
6 |
Texte ASCII |
1 |
0 |
SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc |
Chemin d'accès au fichier swap du client sur le serveur swap |
Stz |
8 |
Texte ASCII |
1 |
0 |
SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc |
Fuseau horaire du client |
Sterm |
15 |
Texte ASCII |
1 |
0 |
SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc |
Type de terminal |
Une fois les options créées, vous pouvez créer les macros les incluant. Le tableau présenté ci-dessous répertorie des modèles de macros que vous pouvez créer afin de prendre en charge l'installation Solaris des clients.
Tableau 7–5 Modèles de macros pour la prise en charge des clients de l'installation réseau
Nom de la macro |
Contient ces options et macros |
---|---|
Solaris |
SrootIP4, SrootNM, SinstIP4, SinstNM |
sparc |
SrootPTH, SinstPTH |
sun4u |
Macros Solaris et sparc |
i86pc |
Macro Solaris , SrootPTH, SinstPTH, SbootFIL |
SUNW.i86pc |
Macro i86pc |
SUNW.Sun-Blade-1000 |
Macro sun4u, SbootFIL |
SUNW.Sun-Fire-880 |
Macro sun4u, SbootFIL |
Macros d'adresse réseau xxx.xxx.xxx.xxx |
L'option BootSrvA peut s'ajouter aux macros d'adresse réseau existantes. La valeur de BootSrvA doit indiquer le serveur tftboot. |
Les noms des macros répertoriées dans le tableau précédent correspondent aux classes client fournisseur des clients devant effectuer l'installation à partir du réseau. Ces noms sont des exemples de clients que vous pourriez avoir sur votre réseau. Reportez-vous à la rubrique “Working With DHCP Options (Task Map)” in System Administration Guide: IP Services pour consulter des informations sur la définition de la classe client fournisseur d'un client.
Vous pouvez créer ces options et macros à l'aide des méthodes suivantes :
Écrivez un script créant les options et macros à l'aide de la commande dhtadm. Reportez-vous à la rubrique Écriture d'un script utilisant dhtadm pour créer des options et macros pour obtenir des informations concernant la rédaction de scripts créant ces options et macros.
Créez les options et macros dans le gestionnaire DHCP. Reportez-vous à la rubrique Utilisation du gestionnaire DHCP pour créer des options et macros d'installation pour consulter les instructions sur la procédure de création des options et macros dans le gestionnaire DHCP.
Vous pouvez créer un script Korn shell en adaptant l'exemple de l'Exemple 7–13 afin de créer toutes les options répertoriées dans le Tableau 7–4 ainsi que certaines macros utiles. Assurez-vous de corriger toutes les adresses IP et les valeurs contenues entre les guillemets, les noms des serveurs, ainsi que les chemins de votre réseau. Vous devez également éditer la clé Vendor= pour indiquer la classe de clients que vous possédez. Utilisez les informations affichées par add_install_client -d pour obtenir les données requises pour adapter le script.
# Load the Solaris vendor specific options. We'll start out supporting # the Sun-Blade-1000, Sun-Fire-880, and i86 platforms. Changing -A to -M would replace # the current values, rather than add them. dhtadm -A -s SrootOpt -d \ 'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,1,ASCII,1,0' dhtadm -A -s SrootIP4 -d \ 'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,2,IP,1,1' dhtadm -A -s SrootNM -d \ 'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,3,ASCII,1,0' dhtadm -A -s SrootPTH -d \ 'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,4,ASCII,1,0' dhtadm -A -s SswapIP4 -d \ 'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,5,IP,1,0' dhtadm -A -s SswapPTH -d \ 'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,6,ASCII,1,0' dhtadm -A -s SbootFIL -d \ 'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,7,ASCII,1,0' dhtadm -A -s Stz -d \ 'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,8,ASCII,1,0' dhtadm -A -s SbootRS -d \ 'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,9,NUMBER,2,1' dhtadm -A -s SinstIP4 -d \ 'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,10,IP,1,1' dhtadm -A -s SinstNM -d \ 'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,11,ASCII,1,0' dhtadm -A -s SinstPTH -d \ 'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,12,ASCII,1,0' dhtadm -A -s SsysidCF -d \ 'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,13,ASCII,1,0' dhtadm -A -s SjumpsCF -d \ 'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,14,ASCII,1,0' dhtadm -A -s Sterm -d \ 'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,15,ASCII,1,0' dhtadm -A -s SbootURI -d \ 'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,16,ASCII,1,0' dhtadm -A -s SHTTPproxy -d \ 'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,17,ASCII,1,0' # Load some useful Macro definitions. # Define all Solaris-generic options under this macro named Solaris. dhtadm -A -m Solaris -d \ ':SrootIP4=10.21.0.2:SrootNM="blue2":SinstIP4=10.21.0.2:SinstNM="red5":' # Define all sparc-platform specific options under this macro named sparc. dhtadm -A -m sparc -d \ ':SrootPTH="/export/sparc/root":SinstPTH="/export/sparc/install":' # Define all sun4u architecture-specific options under this macro named sun4u. # (Includes Solaris and sparc macros.) dhtadm -A -m sun4u -d ':Include=Solaris:Include=sparc:' # Solaris on IA32-platform-specific parameters are under this macro named i86pc. dhtadm -A -m i86pc -d \ ':Include=Solaris:SrootPTH="/export/i86pc/root":SinstPTH="/export/i86pc/install"\ :SbootFIL="/platform/i86pc/kernel/unix":' # Solaris on IA32 machines are identified by the "SUNW.i86pc" class. All # clients identifying themselves as members of this class will see these # parameters in the macro called SUNW.i86pc, which includes the i86pc macro. dhtadm -A -m SUNW.i86pc -d ':Include=i86pc:' # Sun-Blade-1000 platforms identify themselves as part of the # "SUNW.Sun-Blade-1000" class. # All clients identifying themselves as members of this class # will see these parameters. dhtadm -A -m SUNW.Sun-Blade-1000 -d \ ':SbootFIL="/platform/sun4u/kernel/sparcv9/unix":\ Include=sun4u:' # Sun-Fire-880 platforms identify themselves as part of the "SUNW.Sun-Fire-880" class. # All clients identifying themselves as members of this class will see these parameters. dhtadm -A -m SUNW.Sun-Fire-880 -d \ ':SbootFIL="/platform/sun4u/kernel/sparcv9/unix":Include=sun4u:' # Add our boot server IP to each of the network macros for our topology served by our # DHCP server. Our boot server happens to be the same machine running our DHCP server. dhtadm -M -m 10.20.64.64 -e BootSrvA=10.21.0.2 dhtadm -M -m 10.20.64.0 -e BootSrvA=10.21.0.2 dhtadm -M -m 10.20.64.128 -e BootSrvA=10.21.0.2 dhtadm -M -m 10.21.0.0 -e BootSrvA=10.21.0.2 dhtadm -M -m 10.22.0.0 -e BootSrvA=10.21.0.2 # Make sure we return host names to our clients. dhtadm -M -m DHCP-servername -e Hostname=_NULL_VALUE_ # The client with this MAC address is a diskless client. Override the root settings # which at the network scope setup for Install with our client's root directory. dhtadm -A -m 0800201AC25E -d \ ':SrootIP4=10.23.128.2:SrootNM="orange-svr-2":SrootPTH="/export/root/10.23.128.12":' |
Exécutez dhtadm en mode batch en prenant le rôle de superutilisateur. Spécifiez le nom du script pour ajouter les options et macros à votre dhcptab. Par exemple, si votre script se nomme netinstalloptions, entrez la commande suivante :
# dhtadm -B netinstalloptions |
Les clients ayant des classes client fournisseur répertoriées dans la chaîne Vendor= peuvent désormais utiliser le DHCP pour s'installer via le réseau.
Pour de plus amples informations sur l'utilisation de la commande dhtadm, reportez-vous à dhtadm(1M). Pour de plus amples informations sur le fichier dhcptab, reportez-vous à dhcptab(4).
Vous pouvez utiliser le gestionnaire DHCP pour créer les options répertoriées dans le Tableau 7–4 et les macros répertoriées dans le Tableau 7–5.
Cette procédure suppose que vous ayez déjà configuré votre serveur DHCP. Si ce n'est pas le cas, reportez-vous à la rubrique “Planning for DHCP Service (Task)” in System Administration Guide: IP Services.
Prenez le rôle de superutilisateur sur le système serveur DHCP.
Démarrez le gestionnaire DHCP.
# /usr/sadm/admin/bin/dhcpmgr & |
La fenêtre du gestionnaire DHCP s'affiche.
Sélectionnez l'onglet Options dans le gestionnaire DHCP.
Sélectionnez Create dans le menu Edit.
La boîte de dialogue Create Option s'ouvre.
Entrez le nom de la première option, puis entrez les valeurs correspondantes.
Utilisez le Tableau 7–4 pour vérifier les noms et valeurs des options que vous devez créer. Vous remarquerez que les classes client fournisseur ne sont que des suggestions de valeurs. Vous devez créer des classes pour indiquer les types de clients actuels ayant besoin d'obtenir les paramètres d'installation Solaris auprès du service DHCP. Reportez-vous à la rubrique “Working With DHCP Options (Task Map)” in System Administration Guide: IP Services pour de plus amples informations concernant la définition de la classe client fournisseur d'un client.
Cliquez sur OK une fois les valeurs entrées.
Dans l'onglet Options, sélectionnez l'option que vous venez de créer.
Sélectionnez Duplicate dans le menu Edit.
La boîte de dialogue Duplicate Option s'ouvre.
Entrez le nom d'une autre option, puis modifiez les autres valeurs de façon appropriée.
Les valeurs des code, type de données, granularité et maximum sont les plus susceptibles de requérir des modifications. Reportez-vous au Tableau 7–4 pour les valeurs.
Répétez les étapes de l'Étape 7 à l'Étape 9 jusqu'à ce que vous ayez créé toutes les options.
Vous pouvez à présent créer les macros afin de transmettre les options aux clients de l'installation réseau, comme décrit dans la procédure suivante.
vous n'avez pas besoin d'ajouter ces options au fichier /etc/dhcp/inittab d'un client Solaris car elles figurent déjà dans ce fichier.
Cette procédure suppose que vous ayez déjà configuré votre serveur DHCP. Si ce n'est pas le cas, reportez-vous à la rubrique “Planning for DHCP Service (Task)” in System Administration Guide: IP Services.
Sélectionnez l'onglet Macros dans le gestionnaire DHCP.
Sélectionnez Create dans le menu Edit.
La boîte de dialogue Create Macro s'ouvre.
Entrez le nom de la macro.
Consultez le Tableau 7–5 pour obtenir les noms de macros que vous pouvez utiliser.
Cliquez sur le bouton Select.
La boîte de dialogue Select Option s'ouvre.
Sélectionnez Vendor dans la liste Category.
Les options Vendor créées sont répertoriées.
Sélectionnez une option que vous souhaitez ajouter à la macro et cliquez sur OK.
Entrez une valeur pour l'option.
Reportez-vous au Tableau 7–4 pour le type de données de l'option et référez-vous aux informations de add_install_client -d.
Répétez les étapes de l'Étape 6 à l'Étape 7 pour chaque option que vous souhaitez inclure.
Pour inclure une nouvelle macro, entrez Include comme nom de l'option et entrez le nom de la macro comme valeur de l'option.
Cliquez sur OK quand la macro est terminée.