summaryrefslogtreecommitdiff
path: root/usr/src/man/man4/dhcptab.4
blob: 7a41db021b0fdc654bb0ce3427a4dfbaeb4bedfb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
'\" te
.\"  Copyright (c) 2002,  Sun Microsystems, Inc.  All Rights Reserved.
.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License").  You may not use this file except in compliance with the License.
.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.  See the License for the specific language governing permissions and limitations under the License.
.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE.  If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
.TH dhcptab 4 "15 Mar 2002" "SunOS 5.11" "File Formats"
.SH NAME
dhcptab \- DHCP configuration parameter table
.SH DESCRIPTION
.sp
.LP
The \fBdhcptab\fR configuration table allows network administrators to organize
groups of configuration parameters as macro definitions, which can then be
referenced in the definition of other useful macros. These macros are then used
by the \fBDHCP\fR server to return their values to \fBDHCP\fR and \fBBOOTP\fR
clients.
.sp
.LP
The preferred method of managing the \fBdhcptab\fR is through the  use of the
\fBdhcpmgr\fR(1M) or \fBdhtadm\fR(1M) utility. The description of \fBdhcptab\fR
entries included in this manual page is intended for informational purposes
only, and should not be used to manually edit entries.
.sp
.LP
You can view the contents of the \fBdhcptab\fR using the DHCP manager's tabs
for Macros and Options, or using the \fBdhtadm -P\fR command.
.SS "Syntax of dhcptab Entries"
.sp
.LP
The format of a \fBdhcptab\fR table depends on the data store used to maintain
it. However, any \fBdhcptab\fR must contain the following fields in each
record:
.sp
.ne 2
.mk
.na
\fB\fBName\fR\fR
.ad
.RS 9n
.rt  
This field identifies the macro or symbol record and is used as a search key
into the \fBdhcptab\fR table. The name of a macro or symbol must consist of
\fBASCII\fR characters, with the length limited to 128 characters. Names can
include spaces, except at the end of the name. The name is not case-sensitive.
.RE

.sp
.ne 2
.mk
.na
\fB\fBType\fR\fR
.ad
.RS 9n
.rt  
This field specifies the type of record and is used as a search key into the
\fBdhcptab\fR. Currently, there are only two legal values for \fBType\fR:
.sp
.ne 2
.mk
.na
\fB\fBm\fR\fR
.ad
.RS 5n
.rt  
This record is a \fBDHCP\fR macro definition.
.RE

.sp
.ne 2
.mk
.na
\fB\fBs\fR\fR
.ad
.RS 5n
.rt  
This record is a \fBDHCP\fR symbol definition. It is used to define vendor and
site-specific options.
.RE

.RE

.sp
.ne 2
.mk
.na
\fB\fBValue\fR\fR
.ad
.RS 9n
.rt  
This field contains the value for the specified type of record. For the \fBm\fR
type, the value will consist of a series of symbol=value pairs, separated by
the colon (\fB:\fR) character. For the \fBs\fR type, the value will consist of
a series of fields, separated by a comma (\fB,\fR), which define a symbol's
characteristics. Once defined, a symbol can be used in macro definitions.
.RE

.SS "Symbol Characteristics"
.sp
.LP
The Value field of a symbols definition contain the following fields describing
the characteristics of a symbol:
.sp
.ne 2
.mk
.na
\fB\fBContext\fR\fR
.ad
.RS 15n
.rt  
This field defines the context in which the symbol definition is to be used. It
can have one of the following values:
.sp
.ne 2
.mk
.na
\fB\fBSite\fR\fR
.ad
.RS 27n
.rt  
This symbol defines a site-specific option, codes 128-254.
.RE

.sp
.ne 2
.mk
.na
\fB\fBVendor=Client Class ...\fR\fR
.ad
.RS 27n
.rt  
This symbol defines a vendor-specific option, codes 1-254. The Vendor context
takes \fBASCII\fR string arguments which identify the client class that this
vendor option is associated with. Multiple client class names can be specified,
separated by white space. Only those clients whose client class matches one of
these values will see this option. For Sun machines, the Vendor client class
matches the value returned by the command \fBuname -i\fR on the client, with
periods replacing commas.
.RE

.RE

.sp
.ne 2
.mk
.na
\fB\fBCode\fR\fR
.ad
.RS 15n
.rt  
This field specifies the option code number associated with this symbol. Valid
values are 128-254 for site-specific options, and 1-254 for vendor-specific
options.
.RE

.sp
.ne 2
.mk
.na
\fB\fBType\fR\fR
.ad
.RS 15n
.rt  
This field defines the type of data expected as a value for this symbol, and is
not case-sensitive. Legal values are:
.sp
.ne 2
.mk
.na
\fB\fBASCII\fR\fR
.ad
.RS 11n
.rt  
\fBNVT ASCII\fR text. Value is enclosed in double-quotes (\fB"\fR). Granularity
setting has no effect on symbols of this type, since \fBASCII\fR strings have a
natural granularity of one (1).
.RE

.sp
.ne 2
.mk
.na
\fB\fBBOOLEAN\fR\fR
.ad
.RS 11n
.rt  
No value is associated with this data type. Presence of symbols of this type
denote boolean \fBTRUE,\fR whereas absence denotes \fBFALSE.\fR Granularity and
Miximum values have no meaning for symbols of this type.
.RE

.sp
.ne 2
.mk
.na
\fB\fBIP\fR\fR
.ad
.RS 11n
.rt  
Dotted decimal form of an Internet address. Multi-IP address granularity is
supported.
.RE

.sp
.ne 2
.mk
.na
\fB\fBNUMBER\fR\fR
.ad
.RS 11n
.rt  
An unsigned number with a supported granularity of \fB1\fR, \fB2\fR, \fB4\fR,
and \fB8\fR octets.
.sp
Valid \fBNUMBER\fR types are: \fBUNUMBER8\fR, \fBSNUMBER8\fR, \fBUNUMBER16\fR,
\fBSNUMBER16\fR, \fBUNUMBER32\fR, \fBSNUMBER32\fR, \fBUNUMBER64\fR, and
\fBSNUMBER64\fR. See \fBdhcp_inittab\fR(4) for details.
.RE

.sp
.ne 2
.mk
.na
\fB\fBOCTET\fR\fR
.ad
.RS 11n
.rt  
Uninterpreted \fBASCII\fR representation of binary data. The client identifier
is one example of an \fBOCTET\fR string. Valid characters are \fB0\fR-\fB9\fR,
\fBa\fR-\fBf\fR, \fBA\fR-\fBF\fR. One \fBASCII\fR character represents one
nibble (4 bits), thus two \fBASCII\fR characters are needed to represent an 8
bit quantity. The granularity setting has no effect on symbols of this type,
since \fBOCTET\fR strings have a natural granularity of one (\fB1\fR).
.sp
For example, to encode a sequence of bytes with decimal values \fB77\fR,
\fB82\fR, \fB5\fR, \fB240\fR, \fB14\fR, the option value would be encoded as
\fB4d5205f00e\fR. A macro which supplies a value for option code \fB78\fR,
\fBSLP_DA\fR, with a \fB0\fR Mandatory byte and Directory Agents at
\fB192.168.1.5\fR and \fB192.168.0.133\fR  would appear in the \fBdhcptab\fR
as:
.sp
.in +2
.nf
slpparams 
Macro 
:SLP_DA=00c0a80105c0a80085:
.fi
.in -2

.RE

.RE

.sp
.ne 2
.mk
.na
\fB\fBGranularity\fR\fR
.ad
.RS 15n
.rt  
This value specifies how many objects of \fBType\fR define a single
\fBinstance\fR of the symbol value. For example, the static route option is
defined to be a variable list of routes. Each route consists of two \fBIP\fR
addresses, so the \fBType\fR is defined to be \fBIP\fR, and the data's
granularity is defined to be \fB2\fR \fBIP\fR addresses. The granularity field
affects the \fBIP\fR and \fBNUMBER\fR data types.
.RE

.sp
.ne 2
.mk
.na
\fB\fBMaximum\fR\fR
.ad
.RS 15n
.rt  
This value specifies the maximum items of \fBGranularity\fR which are
permissible in a definition using this symbol. For example, there can only be
one \fBIP\fR address specified for a subnet mask, so the  \fBMaximum\fR number
of items in this case is one (\fB1\fR). A  \fBMaximum\fR value of zero
(\fB0\fR) means that a variable number of items is permitted.
.RE

.sp
.LP
The following example defines a site-specific option (symbol) called
\fBMystatRt\fR, of code \fB130\fR, type \fBIP,\fR and granularity \fB2\fR, and
a \fBMaximum\fR of \fB0\fR. This definition corresponds to the internal
definition of the static route option (\fBStaticRt\fR).
.sp
.in +2
.nf
MystatRt s Site,130,IP,2,0
.fi
.in -2

.sp
.LP
The following example demonstrates how a SLP Service Scope symbol
(\fBSLP_SS\fR) with a scope value of \fBhappy\fR and mandatory byte set to
\fB0\fR is encoded. The first octet of the option is the Mandatory octet, which
is set either to \fB0\fR or \fB1\fR. In this example, it is set to \fB0
(00)\fR. The balance of the value is the hexidecimal ASCII code numbers
representing the name \fBhappy\fR, that is, \fB6861707079\fR.
.sp
.in +2
.nf
SLP_SS=006861707079
.fi
.in -2

.SS "Macro Definitions"
.sp
.LP
The following example illustrates a macro defined using the \fBMystatRt\fR site
option symbol just defined:
.sp
.in +2
.nf
10netnis m :MystatRt=3.0.0.0 10.0.0.30:
.fi
.in -2

.sp
.LP
Macros can be specified in the \fBMacro\fR field in \fBDHCP\fR network tables
(see \fBdhcp_network\fR(4)), which will bind particular macro definitions to
specific \fBIP addresses.\fR
.sp
.LP
Up to four macro definitions are consulted by the \fBDHCP\fR server to
determine the options that are returned to the requesting client.
.sp
.LP
These macros are processed in the following order:
.sp
.ne 2
.mk
.na
\fB\fBClient Class\fR\fR
.ad
.RS 21n
.rt  
A macro named using the \fBASCII\fR representation of the client class (e.g.
\fBSUNW.Ultra-30\fR) is searched for in the \fBdhcptab\fR. If found, its
symbol/value pairs will be selected for delivery to the client. This mechanism
permits the network administrator to select configuration parameters to be
returned to all clients of the same class.
.RE

.sp
.ne 2
.mk
.na
\fB\fBNetwork\fR\fR
.ad
.RS 21n
.rt  
A macro named by the dotted Internet form of the network address of the
client's network (for example, \fB10.0.0.0\fR) is searched for in the
\fBdhcptab\fR. If found, its symbol/value pairs will be combined with those of
the \fBClient Class\fR macro. If a symbol exists in both macros, then the
\fBNetwork\fR macro value overrides the value defined in the \fBClient Class\fR
macro. This mechanism permits the network administrator to select configuration
parameters to be returned to all clients on the same network.
.RE

.sp
.ne 2
.mk
.na
\fB\fBIP Address\fR\fR
.ad
.RS 21n
.rt  
This macro may be named anything, but must be specified in the \fBDHCP\fR
network table for the IP address record assigned to the requesting client. If
this macro is found in the \fBdhcptab\fR, then its symbol/value pairs will be
combined with those of the \fBClient Class\fR macro and the \fBNetwork\fR
macro. This mechanism permits the network administrator to select configuration
parameters to be returned to clients using a particular \fBIP\fR address. It
can also be used to deliver a macro defined to include "server-specific"
information by including this macro definition in all \fBDHCP\fR network table
entries owned by a specific server.
.RE

.sp
.ne 2
.mk
.na
\fB\fBClient Identifier\fR\fR
.ad
.RS 21n
.rt  
A macro named by the \fBASCII\fR representation of the client's unique
identifier as shown in the \fBDHCP\fR network table (see
\fBdhcp_network\fR(4)). If found, its symbol/value pairs are combined to the
sum of the \fBClient Class\fR, \fBNetwork\fR, and \fBIP Address\fR macros. Any
symbol collisions are replaced with those specified in the client identifier
macro. The client mechanism permits the network administrator to select
configuration parameters to be returned to a particular client, regardless of
what network that client is connected to.
.RE

.sp
.LP
Refer to \fISystem Administration Guide: IP Services\fR for more information
about macro processing.
.sp
.LP
Refer to the \fBdhcp_inittab\fR(4) man page for more information about symbols
used in Solaris DHCP.
.SH SEE ALSO
.sp
.LP
\fBdhcpmgr\fR(1M), \fBdhtadm\fR(1M), \fBin.dhcpd\fR(1M), \fBdhcp_inittab\fR(4),
\fBdhcp_network\fR(4), \fBdhcp\fR(5)
.sp
.LP
\fISystem Administration Guide: IP Services\fR
.sp
.LP
Alexander, S., and R. Droms, \fIDHCP Options and BOOTP Vendor Extensions\fR,
RFC 2132, Silicon Graphics, Inc., Bucknell University, March 1997.
.sp
.LP
Droms, R., \fIInteroperation Between DHCP and BOOTP\fR, RFC 1534, Bucknell
University, October 1993.
.sp
.LP
Droms, R., \fIDynamic Host Configuration Protocol\fR, RFC 2131, Bucknell
University, March 1997.
.sp
.LP
Wimer, W., \fIClarifications and Extensions for the Bootstrap Protocol\fR, RFC
1542, Carnegie Mellon University, October 1993.