0f33b636af
requesting client, the address 0.0.0.0 is used (#184484).
332 lines
13 KiB
Diff
332 lines
13 KiB
Diff
diff -up dhcp-3.0.6/dhcpctl/dhcpctl.3.manpages dhcp-3.0.6/dhcpctl/dhcpctl.3
|
|
--- dhcp-3.0.6/dhcpctl/dhcpctl.3.manpages 2004-09-24 17:08:38.000000000 -0400
|
|
+++ dhcp-3.0.6/dhcpctl/dhcpctl.3 2007-09-26 15:22:12.000000000 -0400
|
|
@@ -43,7 +43,7 @@
|
|
.\"
|
|
.\"
|
|
.Sh SYNOPSIS
|
|
-.Fd #include <dhcpctl/dhcpctl.h>
|
|
+.Fd #include <dhcpctl.h>
|
|
.Ft dhcpctl_status
|
|
.Fo dhcpctl_initialize
|
|
.Fa void
|
|
@@ -426,7 +426,7 @@ that most error checking has been ommitt
|
|
#include <netinet/in.h>
|
|
|
|
#include <isc/result.h>
|
|
-#include <dhcpctl/dhcpctl.h>
|
|
+#include <dhcpctl.h>
|
|
|
|
int main (int argc, char **argv) {
|
|
dhcpctl_data_string ipaddrstring = NULL;
|
|
diff -up dhcp-3.0.6/server/dhcpd.conf.5.manpages dhcp-3.0.6/server/dhcpd.conf.5
|
|
--- dhcp-3.0.6/server/dhcpd.conf.5.manpages 2007-05-01 16:42:56.000000000 -0400
|
|
+++ dhcp-3.0.6/server/dhcpd.conf.5 2007-09-26 15:24:18.000000000 -0400
|
|
@@ -531,9 +531,9 @@ primary server might look like this:
|
|
failover peer "foo" {
|
|
primary;
|
|
address anthrax.rc.vix.com;
|
|
- port 519;
|
|
+ port 647;
|
|
peer address trantor.rc.vix.com;
|
|
- peer port 520;
|
|
+ peer port 847;
|
|
max-response-delay 60;
|
|
max-unacked-updates 10;
|
|
mclt 3600;
|
|
@@ -592,9 +592,7 @@ statement
|
|
.B port \fIport-number\fR\fB;\fR
|
|
.PP
|
|
The \fBport\fR statement declares the TCP port on which the server
|
|
-should listen for connections from its failover peer. This statement
|
|
-may not currently be omitted, because the failover protocol does not
|
|
-yet have a reserved TCP port number.
|
|
+should listen for connections from its failover peer.
|
|
.RE
|
|
.PP
|
|
The
|
|
@@ -606,10 +604,8 @@ statement
|
|
.PP
|
|
The \fBpeer port\fR statement declares the TCP port to which the
|
|
server should connect to reach its failover peer for failover
|
|
-messages. This statement may not be omitted because the failover
|
|
-protocol does not yet have a reserved TCP port number. The port
|
|
-number declared in the \fBpeer port\fR statement may be the same as
|
|
-the port number declared in the \fBport\fR statement.
|
|
+messages. The port number declared in the \fBpeer port\fR statement
|
|
+may be the same as the port number declared in the \fBport\fR statement.
|
|
.RE
|
|
.PP
|
|
The
|
|
@@ -1133,7 +1129,7 @@ the zone containing PTR records - for IS
|
|
.PP
|
|
.nf
|
|
key DHCP_UPDATER {
|
|
- algorithm HMAC-MD5.SIG-ALG.REG.INT;
|
|
+ algorithm hmac-md5;
|
|
secret pRP5FapFoJ95JEL06sv4PQ==;
|
|
};
|
|
|
|
@@ -1156,7 +1152,7 @@ dhcpd.conf file:
|
|
.PP
|
|
.nf
|
|
key DHCP_UPDATER {
|
|
- algorithm HMAC-MD5.SIG-ALG.REG.INT;
|
|
+ algorithm hmac-md5;
|
|
secret pRP5FapFoJ95JEL06sv4PQ==;
|
|
};
|
|
|
|
@@ -2114,7 +2110,8 @@ statement
|
|
The \fInext-server\fR statement is used to specify the host address of
|
|
the server from which the initial boot file (specified in the
|
|
\fIfilename\fR statement) is to be loaded. \fIServer-name\fR should
|
|
-be a numeric IP address or a domain name.
|
|
+be a numeric IP address or a domain name. If no \fInext-server\fR statement
|
|
+applies to a given client, the address 0.0.0.0 is used.
|
|
.RE
|
|
.PP
|
|
The
|
|
diff -up dhcp-3.0.6/common/dhcp-options.5.manpages dhcp-3.0.6/common/dhcp-options.5
|
|
--- dhcp-3.0.6/common/dhcp-options.5.manpages 2006-04-26 11:12:43.000000000 -0400
|
|
+++ dhcp-3.0.6/common/dhcp-options.5 2007-09-26 15:22:12.000000000 -0400
|
|
@@ -834,6 +834,24 @@ classless IP routing - it does not inclu
|
|
classless IP routing is now the most widely deployed routing standard,
|
|
this option is virtually useless, and is not implemented by any of the
|
|
popular DHCP clients, for example the Microsoft DHCP client.
|
|
+.PP
|
|
+NOTE to Red Hat dhclient users:
|
|
+.br
|
|
+The RedHat dhclient-script interprets trailing 0 octets of the target
|
|
+as indicating the subnet class of the route - so for this
|
|
+static-routes value:
|
|
+.br
|
|
+ option static-routes 172.0.0.0 172.16.2.254,
|
|
+.br
|
|
+ 192.168.0.0 192.168.2.254;
|
|
+.br
|
|
+the Red Hat dhclient-script will create routes:
|
|
+.br
|
|
+ 172/8 via 172.16.2.254 dev $interface
|
|
+.br
|
|
+ 192.168/16 via 192.168.2.254 dev $interface
|
|
+.br
|
|
+which slightly increases the usefulness of the static-routes option.
|
|
.RE
|
|
.PP
|
|
.nf
|
|
diff -up dhcp-3.0.6/client/dhclient-script.8.manpages dhcp-3.0.6/client/dhclient-script.8
|
|
--- dhcp-3.0.6/client/dhclient-script.8.manpages 2005-09-28 15:17:08.000000000 -0400
|
|
+++ dhcp-3.0.6/client/dhclient-script.8 2007-09-26 15:22:12.000000000 -0400
|
|
@@ -47,7 +47,7 @@ customizations are needed, they should b
|
|
exit hooks provided (see HOOKS for details). These hooks will allow the
|
|
user to override the default behaviour of the client in creating a
|
|
.B /etc/resolv.conf
|
|
-file.
|
|
+file, and to handle DHCP options not handled by default.
|
|
.PP
|
|
No standard client script exists for some operating systems, even though
|
|
the actual client may work, so a pioneering user may well need to create
|
|
@@ -91,6 +91,27 @@ present. The
|
|
.B ETCDIR/dhclient-exit-hooks
|
|
script can modify the valid of exit_status to change the exit status
|
|
of dhclient-script.
|
|
+.PP
|
|
+Immediately after dhclient brings an interface UP with a new IP address,
|
|
+subnet mask, and routes, in the REBOOT/BOUND states, it will check for the
|
|
+existence of an executable
|
|
+.B ETCDIR/dhclient-up-hooks
|
|
+script, and source it if found. This script can handle DHCP options in
|
|
+the environment that are not handled by default. A per-interface.
|
|
+.B ETCDIR/dhclient-${IF}-up-hooks
|
|
+script will override the generic script and be sourced when interface
|
|
+$IF has been brought up.
|
|
+.PP
|
|
+Immediately before dhclient brings an interface DOWN, removing its IP
|
|
+address, subnet mask, and routes, in the STOP/RELEASE states, it will
|
|
+check for the existence of an executable
|
|
+.B ETCDIR/dhclient-down-hooks
|
|
+script, and source it if found. This script can handle DHCP options in
|
|
+the environment that are not handled by default. A per-interface
|
|
+.B ETCDIR/dhclient-${IF}-down-hooks
|
|
+script will override the generic script and be sourced when interface
|
|
+$IF is about to be brought down.
|
|
+
|
|
.SH OPERATION
|
|
When dhclient needs to invoke the client configuration script, it
|
|
defines a set of variables in the environment, and then invokes
|
|
diff -up dhcp-3.0.6/client/dhclient.conf.5.manpages dhcp-3.0.6/client/dhclient.conf.5
|
|
--- dhcp-3.0.6/client/dhclient.conf.5.manpages 2007-05-01 16:42:55.000000000 -0400
|
|
+++ dhcp-3.0.6/client/dhclient.conf.5 2007-09-26 15:22:12.000000000 -0400
|
|
@@ -185,7 +185,8 @@ responding to the client send the client
|
|
options. Only the option names should be specified in the request
|
|
statement - not option parameters. By default, the DHCP server
|
|
requests the subnet-mask, broadcast-address, time-offset, routers,
|
|
-domain-name, domain-name-servers and host-name options.
|
|
+domain-name, domain-name-servers, host-name, nis-domain, nis-servers,
|
|
+and ntp-servers options.
|
|
.PP
|
|
In some cases, it may be desirable to send no parameter request list
|
|
at all. To do this, simply write the request statement but specify
|
|
@@ -581,6 +582,18 @@ database and will record the media type
|
|
Whenever the client tries to renew the lease, it will use that same
|
|
media type. The lease must expire before the client will go back to
|
|
cycling through media types.
|
|
+.PP
|
|
+ \fBbootp-broadcast-always;\fR
|
|
+.PP
|
|
+The
|
|
+.B bootp-broadcast-always
|
|
+statement instructs dhclient to always set the bootp broadcast flag in
|
|
+request packets, so that servers will always broadcast replies.
|
|
+This is equivalent to supplying the dhclient -B argument, and has
|
|
+the same effect as specifying 'always-broadcast' in the server's dhcpd.conf.
|
|
+This option is provided as a Red Hat extension to enable dhclient to work
|
|
+on IBM zSeries z/OS Linux guests.
|
|
+.PP
|
|
.SH SAMPLE
|
|
The following configuration file is used on a laptop running NetBSD
|
|
1.3. The laptop has an IP alias of 192.5.5.213, and has one
|
|
diff -up dhcp-3.0.6/client/dhclient.8.manpages dhcp-3.0.6/client/dhclient.8
|
|
--- dhcp-3.0.6/client/dhclient.8.manpages 2007-05-01 16:42:55.000000000 -0400
|
|
+++ dhcp-3.0.6/client/dhclient.8 2007-09-26 15:22:12.000000000 -0400
|
|
@@ -82,6 +82,28 @@ relay
|
|
.B -w
|
|
]
|
|
[
|
|
+.B -I
|
|
+.I dhcp-client-identifier
|
|
+]
|
|
+[
|
|
+.B -H
|
|
+.I host-name
|
|
+.R |
|
|
+.B -F fqdn.fqdn
|
|
+]
|
|
+[
|
|
+.B -V
|
|
+.I vendor-class-identifier
|
|
+]
|
|
+[
|
|
+.B -R
|
|
+.I request option list
|
|
+]
|
|
+[
|
|
+.B -T
|
|
+.I timeout
|
|
+]
|
|
+[
|
|
.I if0
|
|
[
|
|
.I ...ifN
|
|
@@ -265,6 +287,110 @@ than waiting until it has acquired an IP
|
|
supplying the
|
|
.B -nw
|
|
flag.
|
|
+.PP
|
|
+The -I <id> argument allows you to specify the dhcp-client-identifier string,
|
|
+<id>, to be sent to the dhcp server on the command line. It is equivalent to
|
|
+the top level dhclient.conf statement:
|
|
+.br
|
|
+ \fBsend dhcp-client-identifier "<id>";\fR
|
|
+.br
|
|
+The -I <id> command line option will override any top level dhclient.conf
|
|
+ 'send dhcp-client-identifier' statement, but more specific per-interface
|
|
+ 'interface "X" { send dhcp-client-identifier...; }' statements in dhclient.conf
|
|
+will override the -I <id> command line option for interface "X".
|
|
+This option is provided as a Red Hat extension to enable dhclient to work
|
|
+on IBM zSeries z/OS Linux guests.
|
|
+.PP
|
|
+The -B option instructs dhclient to set the bootp broadcast flag in request
|
|
+packets, so that servers will always broadcast replies. This is equivalent
|
|
+to specifying the 'bootp-broadcast-always' option in dhclient.conf, and has
|
|
+the same effect as specifying 'always-broadcast' in the server's dhcpd.conf.
|
|
+This option is provided as a Red Hat extension to enable dhclient to work
|
|
+on IBM zSeries z/OS Linux guests.
|
|
+.PP
|
|
+The -H <host-name> option allows you to specify the DHCP host-name option
|
|
+to send to the server on the dhclient command line. It is equivalent to the
|
|
+top level dhclient.conf statement:
|
|
+.br
|
|
+\f send host-name "<host-name>";\fR
|
|
+.br
|
|
+The -H <host-name> option will override any top level dhclient.conf
|
|
+ 'send host-name' statement, but more specific per-interface
|
|
+ 'interface "X" { send host-name...;' statements in dhclient.conf
|
|
+will override the -H <host-name> command line option for interface "X".
|
|
+The host-name option only specifies the client's host name prefix, to which
|
|
+the server will append the 'ddns-domainname' or 'domain-name' options, if any,
|
|
+to derive the fully qualified domain name of the client host.
|
|
+The -H <host-name> option cannot be used with the -F <fqdn.fqdn> option.
|
|
+Only one -H <host-name> option may be specified.
|
|
+The -H <host-name> option is provided as a Red Hat extension to simplify
|
|
+configuration of clients of DHCP servers that require the host-name option
|
|
+to be sent (eg. some modern cable modems), and for dynamic DNS updates (DDNS).
|
|
+.PP
|
|
+The -F <fqdn.fqdn> option allows you to specify the DHCP fqdn.fqdn option
|
|
+to send to the server on the dhclient command line. It is equivalent to the
|
|
+top level dhclient.conf statement:
|
|
+.br
|
|
+\f send fqdn.fqdn "<domain-name>";\fR
|
|
+.br
|
|
+The -F <fqdn.fqdn> option will override any top level dhclient.conf
|
|
+ 'send fqdn.fqdn' statement, but more specific per-interface
|
|
+ 'interface "X" { send fqdn.fqdn...;' statements in dhclient.conf
|
|
+will override the -F <fqdn.fqdn> command line option for interface "X".
|
|
+This option cannot be used with the -H <host-name> option.
|
|
+The DHCP fqdn.fqdn option must specify the complete domain name of the client
|
|
+host, which the server may use for dynamic DNS updates.
|
|
+Only one -F <fqdn.fqdn> option may be specified.
|
|
+The -F <fqdn.fqdn> option is provided as a Red Hat extension to simplify
|
|
+configuration of DDNS.
|
|
+.PP
|
|
+The -T <timeout> option allows you to specify the time after which
|
|
+the dhclient will decide that no DHCP servers can be contacted when
|
|
+no responses have been received. It is equivalent to the
|
|
+.br
|
|
+\f timeout <integer>;\fR
|
|
+.br
|
|
+dhclient.conf statement, and will override any such statements in dhclient.conf.
|
|
+.br
|
|
+This option is provided as a Red Hat extension.
|
|
+.PP
|
|
+The -V <vendor-class-identifier> option allows you to specify the DHCP
|
|
+vendor-class-identifier option to send to the server on the dhclient command
|
|
+line. It is equivalent to the top level dhclient.conf statement:
|
|
+.br
|
|
+\f send vendor-class-identifier "<vendor-class-identifier>";\fR
|
|
+.br
|
|
+The -V <vendor-class-identifier> option will override any top level
|
|
+dhclient.conf
|
|
+ 'send vendor-class-identifier' statement, but more specific per-interface
|
|
+ 'interface "X" { send vendor-class-identifier...;' statements in dhclient.conf
|
|
+will override the -V <vendor-class-identifier> command line option for
|
|
+interface "X".
|
|
+The -V <vendor-class-identifier> option is provided as a Red Hat extension to
|
|
+simplify configuration of clients of DHCP servers that require the
|
|
+vendor-class-identifier option to be sent.
|
|
+.PP
|
|
+The -R <request option list> option allows you to specify the list of options
|
|
+the client is to request from the server on the dhclient command line.
|
|
+The option list must be a single string, consisting of option names separated
|
|
+by at least one comma and optional space characters. The default option list
|
|
+is:
|
|
+.br
|
|
+ subnet-mask, broadcast-address, time-offset, routers,
|
|
+.br
|
|
+ domain-name, domain-name-servers, host-name, nis-domain,
|
|
+.br
|
|
+ nis-servers, ntp-servers
|
|
+.br
|
|
+You can specify a different list of options to request with the -R <option list>
|
|
+argument. This is equivalent to the dhclient.conf statement:
|
|
+.br
|
|
+\f request <option list> ;\fR
|
|
+.br
|
|
+The -R argument is provided as a Red Hat extension to ISC dhclient to
|
|
+facilitate requesting a list of options from the server different to the
|
|
+default.
|
|
+.PP
|
|
.SH CONFIGURATION
|
|
The syntax of the dhclient.conf(5) file is discussed separately.
|
|
.SH OMAPI
|