在 Oracle Solaris : DHCP 服务中,宏是指网络配置选项以及您为这些选项指定的值的集合。创建宏是为了组合要传送到特定的客户机或客户机类型的选项。例如,专用于特定子网中所有客户机的宏可能包含子网掩码、路由器 IP 地址、广播地址、NIS+ 域和租用时间的选项/值对。
当 DHCP 服务器处理宏时,它将宏中定义的网络选项及值放在 DHCP 消息中传送给客户机。对于特定类型的客户机,服务器会自动处理一些宏。
要让服务器自动处理宏,宏的名称必须符合下表中所示的类别之一。
表 12–3 自动处理的 DHCP 宏类别
仅当以下条件之一成立时,才能处理其名称未使用表 12–3 中列出的任何类别的宏:
宏映射到 IP 地址。
宏包含在另一个自动处理的宏中。
宏包含在另一个映射到 IP 地址的宏中。
当配置服务器时,在缺省情况下会创建一个名称与服务器名称相匹配的宏。系统不会为任何客户机自动处理该服务器宏,因为没有使用可引发自动处理的任一名称类型对该客户机进行命名。以后在服务器上创建 IP 地址时,便会将这些 IP 地址映射为在缺省情况下使用该服务器宏。
当 DHCP 客户机请求 DHCP 服务时,DHCP 服务器会确定与客户机相匹配的宏。服务器处理这些宏,并使用宏类别来确定处理的顺序。会首先处理最常见的类别,最后处理最特殊的类别。宏的处理顺序如下:
客户机类宏-最常见的类别
网络地址宏-比客户机类稍特殊
映射到 IP 地址的宏-比网络地址宏稍特殊
客户机 ID 宏-最特殊的类别,与某台客户机有关
包含在其他宏中的宏会作为容器宏的一部分来进行处理。
如果多个宏中包含同一选项,则会使用最特殊类别的宏中的该选项的值,因为它是最后处理的。例如,如果网络地址宏包含值为 24 小时的租用时间选项,而客户机 ID 宏包含值为 8 小时的租用时间选项,则客户机收到的租用时间为 8 小时。
为宏中所有选项指定的值的总长度不得超过 255 个字节,包括选项代码和长度信息。此限制由 DHCP 协议指定。
最可能受此限制影响的是那些用于将路径传送到 Oracle Solaris : 安装服务器上的文件的宏。一般情况下,应该能够传送所需的最小量的供应商信息。在需要输入路径名的选项中,应该使用简短的路径名。如果创建指向长路径的符号链接,则可以传送更简短的链接名。