Commit 4650dc25 authored by Ted Lemon's avatar Ted Lemon
Browse files

Update to reflect changes in 2.0 README

parent 6dadd610
Internet Software Consortium
Dynamic Host Configuration Protocol Distribution
Version 3, Alpha Snapshot
June 8, 1999
This is an alpha test snapshot of Version 3 of the Internet Software
Consortium DHCP Distribution. In version 3, this distribution
includes a DHCP server, a DHCP client, and a BOOTP/DHCP relay agent.
This alpha is believed to be relatively stable, but it is definitely
not something you should be running in a production environment where
stability is your highest priority.
DOCUMENTATION
Version 3, Beta 1, Patchlevel 0
July 1, 1999
README FILE
You should read this file carefully before trying to install or use
the ISC DHCP Distribution.
TABLE OF CONTENTS
1 WHERE TO FIND DOCUMENTATION
2 RELEASE STATUS
3 BUILDING THE DHCP DISTRIBUTION
4 INSTALLING THE DHCP DISTRIBUTION
5 USING THE DHCP DISTRIBUTION
5.1 LINUX
5.1.1 SO_ATTACH_FILTER UNDECLARED
5.1.2 PROTOCOL NOT CONFIGURED
5.1.3 BROADCAST
5.1.4 FIREWALL RULES
5.1.5 IP BOOTP AGENT
5.1.6 MULTIPLE INTERFACES
5.2 SCO
5.3 HP-UX
5.4 ULTRIX
5.5 FreeBSD
5.6 NeXTSTEP
5.7 SOLARIS
6 SUPPORT
6.1 HOW TO REPORT BUGS
7 KNOWN BUGS
WHERE TO FIND DOCUMENTATION
Documentation for this software includes this README file, the
RELNOTES file, and the manual pages, which are in the server, common,
......@@ -24,25 +46,37 @@ DHCP server documentation is in the dhcpd man page. Information about
the DHCP server lease database is in the dhcpd.leases man page.
Server configuration documentation is in the dhcpd.conf man page as
well as the dhcp-options man page. A sample DHCP server
configuration is in the file server/dhcpd.conf.
configuration is in the file server/dhcpd.conf. The source for the
dhcpd, dhcpd.leases and dhcpd.conf man pages is in the server/ sub-
directory in the distribution. The source for the dhcp-options.5
man page is in the common/ subdirectory.
DHCP Client documentation is in the dhclient man page. DHCP client
configuration documentation is in the dhclient.conf man page and the
dhcp-options man page. The DHCP client configuration script is
documented in the dhclient-script man page. The format of the DHCP
client lease database is documented in the dhclient.leases man page.
The source for all these man pages is in the client/ subdirectory in
the distribution. In addition, the dhcp-options man page should be
referred to for information about DHCP options.
DHCP relay agent documentation is in the dhcrelay man page.
DHCP relay agent documentation is in the dhcrelay man page, the source
for which is distributed in the relay/ subdirectory.
To read installed manual pages, use the man command. Type "man page"
where page is the name of the manual page.
where page is the name of the manual page. This will only work if
you have installed the ISC DHCP distribution using the ``make install''
command (described later).
If you want to read manual pages that aren't installed, you can type
``nroff -man page |more'' where page is the filename of the
unformatted manual page. The filename of an unformatted manual page
is the name of the manual page, followed by '.', followed by some
number - 5 for documentation about files, and 8 for documentation
about programs.
about programs. For example, to read the dhcp-options man page,
you would type ``nroff -man common/dhcp-options.5 |more'', assuming
your current working directory is the top level directory of the ISC
DHCP Distribution.
If you do not have the nroff command, you can type ``more catpage''
where catpage is the filename of the catted man page. Catted man
......@@ -55,6 +89,11 @@ system.
RELEASE STATUS
This is the first beta release of version 3.0 of the ISC DHCP
Distribution. Development of this release is approaching the point
at which it will be frozen, and no significant new features will be
added.
In this release, the server and relay agent currently work well on
NetBSD, Linux after kernel version 2.0.30, FreeBSD, BSD/OS, Ultrix,
Digital Alpha OSF/1, Solaris and SunOS 4.1.4. They run on AIX, HPUX,
......@@ -89,12 +128,12 @@ information. On Digital Unix, type ``man pfilt''.
To build the DHCP Distribution, unpack the compressed tar file using
the tar utility and the gzip command - type something like:
zcat dhcp-3.0-alpha-19990608.tar.gz |tar xvf -
zcat dhcp-3.0b1pl0.tar.gz |tar xvf -
On BSD/OS, you have to type gzcat, not zcat, and you may run into
similar problems on other operating systems.
Now, cd to the dhcp-3.0-alpha-19990608 subdirectory that you've just
Now, cd to the dhcp-3.0b1pl0 subdirectory that you've just
created and configure the source tree by typing:
./configure
......@@ -115,11 +154,15 @@ If you get errors on a system not mentioned above, you will need
to do some programming or debugging on your own to get the DHCP
Distribution working.
INSTALLING THE DHCP DISTRIBUTION
Once you have successfully gotten the DHCP Distribution to build, you
can install it by typing ``make install''. If you already have an old
version of the DHCP Distribution installed, you may want to save it
before typing ``make install''.
USING THE DHCP DISTRIBUTION
LINUX
There are three big LINUX issues: the all-ones broadcast address,
......@@ -148,27 +191,34 @@ make sure it's pointing to correct linux source directory.
LINUX: PROTOCOL NOT CONFIGURED
One additional Linux 2.1/2.2 issue: if you get the following message,
it's because your kernel doesn't have the linux packetfilter
configured:
it's because your kernel doesn't have the linux packetfilter or raw
packet socket configured:
Can't install packet filter program: Protocol not available
exiting.
Set CONFIG_PACKET=y and CONFIG_FILTER=y in your kernel configuration
If this happens, you need to edit your linux kernel .config file, set
CONFIG_FILTER=y, and rebuild your kernel. If the preceding sentence
made no sense to you, ask your Linux vendor/guru for help - please
don't ask us.
CONFIG_FILTER=y and CONFIG_PACKET=y, and rebuild your kernel. If the
preceding sentence made no sense to you, ask your Linux vendor/guru
for help - please don't ask us.
If you set CONFIG_PACKET=m or CONFIG_FILTER=m, then you must tell the
kernel module loader to load the appropriate modules. If this doesn't
make sense to you, don't use CONFIG_whatever=m - use CONFIG_whatever=y.
Don't ask for help with this on the DHCP mailing list - it's a Linux
kernel issue.
LINUX: BROADCAST
In order for dhcpd to work correctly with picky DHCP clients (e.g.,
Windows 95), it must be able to send packets with an IP destination
address of 255.255.255.255. Unfortunately, Linux insists on changing
255.255.255.255 into the local subnet broadcast address (here, that's
192.5.5.223). This results in a DHCP protocol violation, and while
many DHCP clients don't notice the problem, some (e.g., all Microsoft
DHCP clients) do. Clients that have this problem will appear not to
see DHCPOFFER messages from the server.
address of 255.255.255.255. Unfortunately, Linux changes an IP
destination of 255.255.255.255 into the local subnet broadcast address
(here, that's 192.5.5.223). This isn't a problem on Linux 2.2 and
later kernels, since we completely bypass the Linux IP stack, but on
old versions of Linux 2.1 and all versions of Linux prior to 2.1, it
is a problem - pickier DHCP clients connected to the same network as
the ISC DHCP server or ISC relay agent will not see messages from the
DHCP server.
It is possible to work around this problem on some versions of Linux
by creating a host route from your network interface address to
......@@ -219,12 +269,12 @@ working unless you enable it by doing the following:
LINUX: MULTIPLE INTERFACES
Most older versions of the Linux kernel do not provide a networking
API that allows dhcpd to operate correctly if the system has more than
one broadcast network interface. However, Linux 2.0 kernels with
version numbers greater than or equal to 2.0.31 add an API feature:
the SO_BINDTODEVICE socket option. If SO_BINDTODEVICE is present, it
is possible for dhcpd to operate on Linux with more than one network
Very old versions of the Linux kernel do not provide a networking API
that allows dhcpd to operate correctly if the system has more than one
broadcast network interface. However, Linux 2.0 kernels with version
numbers greater than or equal to 2.0.31 add an API feature: the
SO_BINDTODEVICE socket option. If SO_BINDTODEVICE is present, it is
possible for dhcpd to operate on Linux with more than one network
interface. In order to take advantage of this, you must be running a
2.0.31 or greater kernel, and you must have 2.0.31 or later system
headers installed *before* you build the DHCP Distribution.
......@@ -234,6 +284,10 @@ in order for the all-ones broadcast to work, even on 2.0.31 kernels.
In fact, you now need to add a route for each interface. Hopefully
the Linux kernel gurus will get this straight eventually.
Linux 2.1 and later kernels do not use SO_BINDTODEVICE or require the
broadcast address hack, but do support multiple interfaces, using the
Linux Packet Filter.
SCO
SCO has the same problem as Linux (described earlier). The thing is,
......@@ -348,6 +402,8 @@ before you can report bugs.
PLEASE READ THIS README FILE CAREFULLY BEFORE REPORTING BUGS!
HOW TO REPORT BUGS
When you report bugs, please provide us complete information. A list
of information we need follows. Please read it carefully, and put
all the information you can into your initial bug report, so that we
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment