Dans un service DHCP &ProductBase, une macro représente un ensemble d'options de configuration du réseau auxquelles vous avez assigné des valeurs. L'intérêt des macros est de regrouper les options à transmettre à des clients spécifiques ou à certains types de client. Une macro destinée à tous les clients d'un sous-réseau donné pourrait contenir, par exemple, les couples option/valeur correspondant au masque de sous-réseau, à l'adresse IP du routeur, à l'adresse de diffusion, au domaine NIS+ et à la durée du bail.
Lorsque le serveur DHCP traite une macro, il place les options et les valeurs de réseau définies dans la macro à l'intérieur d'un message DHCP adressé au client. Le serveur exécute automatiquement certaines macros pour les clients d'un certain type.
Pour pouvoir être traitée automatiquement, la macro doit respecter les conventions de dénomination propres aux catégories présentées dans le tableau suivant.
Tableau 12–3 Catégories de macros DHCP autorisant un traitement automatique
Une macro portant un nom n'appartenant à aucune des catégories indiquées dans le Tableau 12–3 peut être traitée uniquement si l'une des conditions suivantes est vérifiée :
La macro est mappée à une adresse IP.
La macro est imbriquée dans une autre macro traitée automatiquement.
La macro est imbriquée dans une autre macro mappée à une adresse IP.
Lorsque vous configurez un serveur, une macro dont le nom correspond au nom du serveur est créée par défaut. Cette macro de serveur ne s'exécute pas automatiquement, quel que soit le client auquel elle s'applique, dans la mesure où elle ne possède aucun des types de nom autorisant un traitement automatique. Lorsque vous définissez par la suite de nouvelles adresses IP sur le serveur, celles-ci sont mappées dans le but d'utiliser la macro de serveur par défaut.
Lorsqu'un client DHCP demande des services DHCP, le serveur DHCP identifie les macros répondant à la requête du client. Il traite les macros, en se servant des catégories de macros pour déterminer leur ordre d'exécution. Il s'occupe d'abord de la catégorie la plus générale et traite la catégorie la plus spécifique en dernier. Les macros sont traitées dans l'ordre suivant :
Macros de la classe de client – Catégorie la plus générale
Macros d'adresse réseau – Plus spécifiques que les macros de la classe de client
Macros mappées aux adresses IP – Plus spécifiques que les macros d'adresse réseau
Macros d'ID de client – Catégorie la plus spécifique, se rapportant à un seul client
Une macro imbriquée dans une autre macro est traitée pendant l'exécution de cette dernière.
Si la même option figure dans plusieurs macros, la valeur de cette option dans la macro correspondant à la catégorie la plus spécifique est prise en compte, car c'est elle qui est traitée en dernier. Si une macro d'adresse réseau contient, par exemple, la valeur 24 heures pour l'option de durée de bail et qu'une macro d'ID de client indique une durée de bail équivalente à 8 heures, le client reçoit la valeur 8 heures.
La somme totale des valeurs attribuées à l'ensemble des options dans une macro ne doit pas dépasser 255 octets, y compris les codes d'option et les informations de longueur. Cette limite est dictée par le protocole DHCP.
Les macros qui sont les plus concernées par cette limite sont celles utilisées pour transmettre des chemins aux fichiers des serveurs d'installation Oracle Solaris. En règle générale, vous devez fournir le minimum d'informations nécessaires concernant le fournisseur. Pour les options nécessitant des chemins d'accès, vous devez utiliser des noms courts. Si vous créez des liens symboliques vers des chemins d'accès longs, vous pouvez communiquer les noms de liens les plus courts.