ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/dhcpping/dhcping.8
Revision: 1.1
Committed: Mon Jul 26 00:46:09 2004 UTC (19 years, 10 months ago) by root
Branch: MAIN
CVS Tags: HEAD
Log Message:
*** empty log message ***

File Contents

# User Rev Content
1 root 1.1 .rn '' }`
2     ''' $RCSfile$$Revision$$Date$
3     '''
4     ''' $Log$
5     '''
6     .de Sh
7     .br
8     .if t .Sp
9     .ne 5
10     .PP
11     \fB\\$1\fR
12     .PP
13     ..
14     .de Sp
15     .if t .sp .5v
16     .if n .sp
17     ..
18     .de Ip
19     .br
20     .ie \\n(.$>=3 .ne \\$3
21     .el .ne 3
22     .IP "\\$1" \\$2
23     ..
24     .de Vb
25     .ft CW
26     .nf
27     .ne \\$1
28     ..
29     .de Ve
30     .ft R
31    
32     .fi
33     ..
34     '''
35     '''
36     ''' Set up \*(-- to give an unbreakable dash;
37     ''' string Tr holds user defined translation string.
38     ''' Bell System Logo is used as a dummy character.
39     '''
40     .tr \(*W-|\(bv\*(Tr
41     .ie n \{\
42     .ds -- \(*W-
43     .ds PI pi
44     .if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
45     .if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
46     .ds L" ""
47     .ds R" ""
48     ''' \*(M", \*(S", \*(N" and \*(T" are the equivalent of
49     ''' \*(L" and \*(R", except that they are used on ".xx" lines,
50     ''' such as .IP and .SH, which do another additional levels of
51     ''' double-quote interpretation
52     .ds M" """
53     .ds S" """
54     .ds N" """""
55     .ds T" """""
56     .ds L' '
57     .ds R' '
58     .ds M' '
59     .ds S' '
60     .ds N' '
61     .ds T' '
62     'br\}
63     .el\{\
64     .ds -- \(em\|
65     .tr \*(Tr
66     .ds L" ``
67     .ds R" ''
68     .ds M" ``
69     .ds S" ''
70     .ds N" ``
71     .ds T" ''
72     .ds L' `
73     .ds R' '
74     .ds M' `
75     .ds S' '
76     .ds N' `
77     .ds T' '
78     .ds PI \(*p
79     'br\}
80     .\" If the F register is turned on, we'll generate
81     .\" index entries out stderr for the following things:
82     .\" TH Title
83     .\" SH Header
84     .\" Sh Subsection
85     .\" Ip Item
86     .\" X<> Xref (embedded
87     .\" Of course, you have to process the output yourself
88     .\" in some meaninful fashion.
89     .if \nF \{
90     .de IX
91     .tm Index:\\$1\t\\n%\t"\\$2"
92     ..
93     .nr % 0
94     .rr F
95     .\}
96     .TH dhcping 8 "Januari 27, 2002" "Januari 27, 2002" "General Commands Manual"
97     .UC
98     .if n .hy 0
99     .if n .na
100     .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
101     .de CQ \" put $1 in typewriter font
102     .ft CW
103     'if n "\c
104     'if t \\&\\$1\c
105     'if n \\&\\$1\c
106     'if n \&"
107     \\&\\$2 \\$3 \\$4 \\$5 \\$6 \\$7
108     '.ft R
109     ..
110     .\" @(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2
111     . \" AM - accent mark definitions
112     .bd B 3
113     . \" fudge factors for nroff and troff
114     .if n \{\
115     . ds #H 0
116     . ds #V .8m
117     . ds #F .3m
118     . ds #[ \f1
119     . ds #] \fP
120     .\}
121     .if t \{\
122     . ds #H ((1u-(\\\\n(.fu%2u))*.13m)
123     . ds #V .6m
124     . ds #F 0
125     . ds #[ \&
126     . ds #] \&
127     .\}
128     . \" simple accents for nroff and troff
129     .if n \{\
130     . ds ' \&
131     . ds ` \&
132     . ds ^ \&
133     . ds , \&
134     . ds ~ ~
135     . ds ? ?
136     . ds ! !
137     . ds /
138     . ds q
139     .\}
140     .if t \{\
141     . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
142     . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
143     . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
144     . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
145     . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
146     . ds ? \s-2c\h'-\w'c'u*7/10'\u\h'\*(#H'\zi\d\s+2\h'\w'c'u*8/10'
147     . ds ! \s-2\(or\s+2\h'-\w'\(or'u'\v'-.8m'.\v'.8m'
148     . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
149     . ds q o\h'-\w'o'u*8/10'\s-4\v'.4m'\z\(*i\v'-.4m'\s+4\h'\w'o'u*8/10'
150     .\}
151     . \" troff and (daisy-wheel) nroff accents
152     .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
153     .ds 8 \h'\*(#H'\(*b\h'-\*(#H'
154     .ds v \\k:\h'-(\\n(.wu*9/10-\*(#H)'\v'-\*(#V'\*(#[\s-4v\s0\v'\*(#V'\h'|\\n:u'\*(#]
155     .ds _ \\k:\h'-(\\n(.wu*9/10-\*(#H+(\*(#F*2/3))'\v'-.4m'\z\(hy\v'.4m'\h'|\\n:u'
156     .ds . \\k:\h'-(\\n(.wu*8/10)'\v'\*(#V*4/10'\z.\v'-\*(#V*4/10'\h'|\\n:u'
157     .ds 3 \*(#[\v'.2m'\s-2\&3\s0\v'-.2m'\*(#]
158     .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
159     .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
160     .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
161     .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
162     .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
163     .ds ae a\h'-(\w'a'u*4/10)'e
164     .ds Ae A\h'-(\w'A'u*4/10)'E
165     .ds oe o\h'-(\w'o'u*4/10)'e
166     .ds Oe O\h'-(\w'O'u*4/10)'E
167     . \" corrections for vroff
168     .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
169     .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
170     . \" for low resolution devices (crt and lpr)
171     .if \n(.H>23 .if \n(.V>19 \
172     \{\
173     . ds : e
174     . ds 8 ss
175     . ds v \h'-1'\o'\(aa\(ga'
176     . ds _ \h'-1'^
177     . ds . \h'-1'.
178     . ds 3 3
179     . ds o a
180     . ds d- d\h'-1'\(ga
181     . ds D- D\h'-1'\(hy
182     . ds th \o'bp'
183     . ds Th \o'LP'
184     . ds ae ae
185     . ds Ae AE
186     . ds oe oe
187     . ds Oe OE
188     .\}
189     .rm #[ #] #H #V #F C
190     .SH "NAME"
191     \fBdhcping\fR \- send a DHCP request to DHCP server to see if it's up and running
192     .SH "SYNOPSIS"
193     \fBdhcping\fR
194     [\fB\-v\fR] [\fB\-q\fR] [\fB\-i\fR] [\fB\-r\fR]
195     \fB\-t\fR \fImaxwait\fR
196     \fB\-c\fR \fIclient-IP\-address\fR
197     \fB\-s\fR \fIserver-IP\-address\fR
198     \fB\-h\fR \fIclient-hardware-address\fR
199     [\fB\-g\fR \fIgateway-IP\-address\fR]
200     .SH "DESCRIPTION"
201     This command allows the system administrator to check if a remote
202     DHCP server is still functioning.
203     .PP
204     Options are:
205     .Ip "\fB\-v\fR" 5
206     Verbose, print some information.
207     .Ip "\fB\-i\fR" 5
208     Use \s-1DHCPINFORM\s0 packets.
209     .Ip "\fB\-r\fR" 5
210     Use \s-1DHCPREQUEST\s0 packets (default behaviour).
211     .Ip "\fB\-q\fR" 5
212     Quiet, print nothing on the screen.
213     .Ip "\fB\-t\fR \fImaxwait\fR" 5
214     Maximum time to wait for an answer from the server in seconds.
215     Default is 3 seconds.
216     .Ip "\fB\-c\fR \fIclient-\s-1IP\s0\-address\fR" 5
217     Request this \s-1IP\s0 address. Note that this is also the \s-1IP\s0 address the
218     answer will be sent to.
219     .Ip "\fB\-s\fR \fIserver-\s-1IP\s0\-address\fR" 5
220     Send the \s-1DHCP\s0 packet to this \s-1IP\s0 address.
221     .Ip "\fB\-h\fR \fIclient-hardware-address\fR" 5
222     Use this hardware-address in the \s-1DHCP\s0 request. It can be up to
223     sixteen octets seperated by colons (i.e. 01:02:03:04)
224     .Ip "\fB\-g\fR \fIgateway-\s-1IP\s0\-address\fR" 5
225     Use this \s-1IP\s0 address for the gateway \s-1IP\s0 address in the \s-1DHCP\s0 packet.
226     This option is currently broken.
227     .SH "RETURN VALUES"
228     If everything goes okay, it returns 0. If there went something
229     wrong, it returns 1.
230     .SH "SETUP"
231     This program should be installed setuid root or ran by root only.
232     See SECURITY for more information.
233     .PP
234     On your DHCP server, add these lines to the dhcpd.conf:
235     .PP
236     .Vb 4
237     \& host <your monitoring host FQDN> {
238     \& hardware ethernet <your monitor host mac address>;
239     \& fixed-address <your monitoring host IP address>;
240     \& }
241     .Ve
242     Then try it:
243     .PP
244     $ dhcping \-c \fIyour monitoring host IP address\fR \e
245     \-s \fIyour DHCP server IP address\fR \e
246     \-h \fIyour monitor host mac address\fR
247     .PP
248     It will either respond with \*(L"no answer\*(R" or \*(L"Got answer from: \fIyour
249     DHCP server IP address\fR\*(R"
250     .PP
251     The DHCP server logfile will give:
252     DHCPREQUEST\ for\ 192.168.1.1\ from\ 00:20:18:56:29:8f\ via\ ed0
253     DHCPACK\ on\ 192.168.1.1\ to\ 00:20:18:56:29:8f\ via\ ed0
254     DHCPRELEASE\ of\ 192.168.1.1\ from\ 00:20:18:56:29:8f\ via\ ed0\ (found)
255     .PP
256     Running in DHCPINFORM mode with \fB\-i\fR:
257     .PP
258     If you see \*(L"DHCPINFORM from 192.168.1.1 via xl0: not authoritative
259     for subnet 192.168.1.0\*(R", you should add the authoritative statement
260     to the subnet, See dhcpd.\fIconf\fR\|(5) for details.
261     .PP
262     When running in very verbose mode, \fBdhcping\fR tries to dump all
263     data of the send and received DHCP packets. It will first dump the
264     packet in hex-format, then decodes the header and finally the
265     options.
266     .SH "HOW IT WORKS"
267     The client either sends a DHCPREQUEST or DHCPINFORM packet to the
268     server and waits for an answer. Then, if a DHCPREQUEST was send,
269     it will send a DHCPRELEASE back to the server.
270     .SH "SECURITY"
271     This program is installed setuid root as it requires the privileges
272     to bind itself to port 68 (bootpc). Root privileges are dropped as
273     soon as the program has bound itself to that port.
274     .SH "BUGS"
275     Currently (this may, or may not, change in the future) the ISC DHCP
276     daemon does not write leases with a fixed IP address in the
277     dhcpd.leases file.
278     .PP
279     DHCPINFORM packets can only be used on subnets the server is authori-
280     tative for. If the monitoring script runs on a subnet the server
281     isn't authoritative for, it should use the DHCPREQUEST packets. I
282     also experienced some problems with ISC DHCPD v2 servers, but that
283     is also in the README of it.
284     .PP
285     The \fB\-V\fR option is still working, but shouldn't be used for
286     debugging of the packets. Better use \fIdhcpdump\fR\|(8) for that, which
287     is available on my website. I wanted to remove it, but decided only
288     to do it from the documentation, not from the code. Maybe I'll need
289     it one day for debugging.
290     .SH "AUTHOR"
291     Edwin Groothuis, edwin@mavetju.org (http://www.mavetju.org)
292     .SH "SEE ALSO"
293     \fIdhcpd\fR\|(8), \fIdhclient\fR\|(8), dhcpd.\fIconf\fR\|(5), \fIdhcpdump\fR\|(8)
294    
295     .rn }` ''
296     .IX Title "dhcping 8"
297     .IX Name "B<dhcping> - send a DHCP request to DHCP server to see if it's up and running"
298    
299     .IX Header "NAME"
300    
301     .IX Header "SYNOPSIS"
302    
303     .IX Header "DESCRIPTION"
304    
305     .IX Item "\fB\-v\fR"
306    
307     .IX Item "\fB\-i\fR"
308    
309     .IX Item "\fB\-r\fR"
310    
311     .IX Item "\fB\-q\fR"
312    
313     .IX Item "\fB\-t\fR \fImaxwait\fR"
314    
315     .IX Item "\fB\-c\fR \fIclient-\s-1IP\s0\-address\fR"
316    
317     .IX Item "\fB\-s\fR \fIserver-\s-1IP\s0\-address\fR"
318    
319     .IX Item "\fB\-h\fR \fIclient-hardware-address\fR"
320    
321     .IX Item "\fB\-g\fR \fIgateway-\s-1IP\s0\-address\fR"
322    
323     .IX Header "RETURN VALUES"
324    
325     .IX Header "SETUP"
326    
327     .IX Header "HOW IT WORKS"
328    
329     .IX Header "SECURITY"
330    
331     .IX Header "BUGS"
332    
333     .IX Header "AUTHOR"
334    
335     .IX Header "SEE ALSO"
336