Switch to SpeakEasy.net DSL

The Modular Manual Browser

Home Page
Manual: (OSF1-V5.1-alpha)
Apropos / Subsearch:
optional field

joind(8)							     joind(8)


  joind	- BOOTP	and DHCP server	daemon


  /usr/sbin/joind [-f] [-dn] [-ln] [-t minutes]


  -f  Sets foreground mode.  In	this mode, joind will not run as a daemon.
      All messages are written to standard out (stdout)	and standard error
      (stderr),	although warnings and errors are still sent to syslog(3) as

  -dn Sets debug level to n.  If debug is turned on, log messages are also

  -ln Enables warning (n > 0) and log (n > 1) messages.	 If n is not expli-
      citly given, the value one (1) is	assumed	(warnings are turned on).

  -t minutes
      Terminates if minutes have passed	and no packets have been received.
      This option is valid only	if joind was started from inetd.


  The joind server is the server that provides configurations to clients on
  the network using the	DHCP or	BOOTP protocols; it normally runs as a daemon
  process, and may be started either from the shell command line interface or
  by the inetd daemon.

  In default mode of operation,	joind reads configuration and policy informa-
  tion from files created by xjoin, the	graphical user interface tool for
  administering	these databases.  It then listens on a well-known port for
  client hosts requesting configuration	either by the DHCP protocol or by the
  BOOTP	protocol.

  The joind daemon looks in the	/etc/services file to find the port numbers
  it should use.  Two entries are extracted:

      The BOOTP	server listening port.

      The destination port used	to reply to clients.

  If the port numbers cannot be	determined in this manner, they	are assumed
  to be	port 67	for the	server and port	68 for the client.

  When a request is received from a client on a	network	that is	administered
  by a joind daemon, it	responds with an Internet address that the client can
  use, and sufficient information to permit the	client to boot and configure
  its TCP/IP stack according to	either the DHCP	or BOOTP protocols as
  described in RFC1541 and RFC1497, respectively.

  The joind daemon rereads its configuration file when it receives a hangup
  signal (SIGHUP) or when it receives a	BOOTP request packet and detects that
  the file has been updated.  Hosts can	be added, deleted, or modified when
  the configuration file is reread.

  The joind server writes informational	and error messages in four
  categories: errors, warnings,	information, and debug.	Errors are severe,
  usually unrecoverable	events within the server due to	resource exhaustion
  and other unexpected failure of system calls.	Warnings are less severe, do
  not terminate	the server, and	in most	cases describe unusual or incorrect
  datagrams received from clients, or requests for service that	cannot be
  provided.  Informational messages provide a human readable transcription of
  (correct) actions performed by the server on behalf of client	hosts. Debug
  messages may be generated at various levels of verbosity from	zero (not at
  all) through nine, as	controlled by the -d option.

  The disposition of messages is (by default) as follows: warning, informa-
  tion,	and debug messages are discarded: errors are written to	/var/join/log
  and are sent to the system logger syslog(3) at priority LOG_ERR and with a
  facility identifier LOG_DAEMON. If warnings were enabled, they are also
  sent to syslog with the same facility, but at	priority LOG_WARNING. The
  creation and disposition of messages is controlled by	the -f,	-d, and	-l
  command line options,	and the	environment variable JOINLOG.

  BOOTP	Information

  If you plan to use the joind daemon to support BOOTP requests	only, you
  might	want the inetd daemon start joind automatically.  To do	this, uncom-
  ment the following line in the /etc/inetd.conf file:

       bootps dgram udp	wait root /usr/sbin/joind joind

  This causes joind to be started only when a boot request arrives.  If	joind
  does not receive another boot	request	within fifteen minutes of the last
  one it received, it exits to conserve	system resources.

  To run the joind daemon, you must also run the tftpd daemon.

  Upon startup,	joind first reads its configuration file, /etc/bootptab, and
  then begins listening	for BOOTREQUEST	packets.


  A cluster member should never	be a DHCP client. It should always use static

  If a cluster is to support a DHCP server, there can be only one DHCP server
  for all the cluster members using a common database with failover.

  Do not terminate the server with SIGKILL. Doing so leads to data loss, and
  frequently results in	a corrupted database. Use SIGTERM, SIGINT or SIGQUIT

  Nonstandard subnet masks for all networks administered by the	server must
  be available either through /etc/join/netmasks or NIS.

  The database used by the server does not support multiuser write con-
  currency.  When the server is	in operation the entire	database is locked
  against other	applications.  This means that you cannot use jdbmod or
  xjdbmod to modify records in the database while the server is	running.  The
  converse is also true.

  If the naming	policy is to be	changed	(for example, from assigning names by
  MAC address to assigning names by IP address)	you must first,	before chang-
  ing the server policy	database, stop the server, dump	the name data (using
  jdbdump), and	then reload after the policy file has changed.


  SIGTERM, SIGINT, SIGQUIT and SIGUSR2 terminate the server in a controlled
  manner.  SIGHUP tells	the server to reread its configuration databases.
  SIGUSR1 dumps	database internals.

  Never	stop the server	with SIGKILL. This leads to data loss and corruption
  of the lease and names databases.


  By default, joind reads its configuration and	policy databases from files
  in the /etc/join directory.  The environment variable	JOINCONFIG may be
  used to select a different directory.	These databases	may be stored as text
  or binary.  The text files are:

      Parameters and configuration data	for individual clients,	client
      classes, and networks.

      Networks joind controls, and a pool of IP	addresses which	are available
      for the server to	assign to clients.

      A	collection of names available on a per-join-server, per	domain-name
      that the server can assign to clients.

      Parameters governing the behavior	of joind, and general policies con-
      cerning network administration and their binary counterparts:
      bootptab.hsh, nets.hsh, namepool.hsh, and	server.hsh.

  During operation, the	server creates dynamic database	bindings of IP
  addresses and	names to MAC addresses.	 The following files are stored	under
  the /var/join	directory, unless overridden by	the environment	variable

  *.btr	  B-trees

  *.hsh	  Hash indexes.

  The joind daemon writes a startup message and	other messages previously
  described in the $JOINSPOOL/log file unless the environment variable JOIN-
  LOG is set, in which case the	file named by that variable is used (NOTE:
  this must be an absolute filename, not a directory, nor a path relative

  log	  The (human readable) log.


  Commands: inetd(8), joinc(8),	xjoin(8)

  System calls:	syslog(3)

  Files: bootptab(4), namepool(4), nets(4), server.pcy(4)

  Information: DHCP(7)

  RFC1497, RFC1541, RFC1542, RFC1533, RFC1534