glenda.party
term% ls -F
term% pwd
$home/manuals/9front/8/dhcpd
term% cat index.txt
DHCPD(8)                    System Manager's Manual                   DHCPD(8)



NAME
       dhcpd, dhcpleases, rarpd, tftpd - Internet booting

SYNOPSIS
       ip/dhcpd  [-dmnprsSZ]  [-f ndb-file] [-M secs] [-x netmtpt] [-Z secs] [
       address n ] ...

       ip/dhcpleases

       ip/rarpd [-d] [-e etherdev] [-x netmtpt]

       ip/tftpd [-dr] [-h homedir] [-x netmtpt]

DESCRIPTION
       These programs support booting over the Internet.  They should  all  be
       run  on the same server to allow other systems to be booted.  Dhcpd and
       tftpd are used to boot everything; rarpd is an  extra  piece  just  for
       Suns.

       Dhcpd  runs  the BOOTP and DHCP protocols.  Clients use these protocols
       to obtain configuration information.  This information comes  from  at‐
       tribute/value  pairs  in  the network database (see ndb(6) and ndb(8)).
       DHCP requests are honored both for static addresses found  in  the  NDB
       and  for  dynamic  addresses listed in the command line.  DHCP requests
       are honored if either:
       - there exists an NDB entry containing both the ethernet address of the
       requester and an IP address on the originating network or subnetwork.
       -  a  free dynamic address exists on the originating network or subnet‐
       work.

       A BOOTP request is honored if all of the following are true:
       - there exists an NDB entry containing both the ethernet address of the
       requester and an IP address on the originating network or subnetwork.
       - the entry contains a bootf= attribute
       - the file in the bootf= attribute is readable.

       Dynamic  addresses  are  specified on the command line as a list of ad‐
       dresses and number pairs.  For example,
            ip/dhcpd 10.1.1.12 10 10.2.1.70 12
       directs dhcpd to return dynamic addresses 10.1.1.12  through  10.1.1.21
       inclusive and 10.2.1.70 through 10.2.1.81 inclusive.

       Dhcpd  maintains  a  record  of  all dynamic addresses in the directory
       /lib/ndb/dhcp, one file per address.  If multiple servers  have  access
       to this common directory, they will correctly coordinate their actions.

       Attributes come from either the NDB entry for the system, the entry for
       its subnet, or the entry for its network.  The system entry has  prece‐
       dence, then the subnet, then the network.  The NDB attributes used are:

       ip     the IP address

       ipmask the IP mask

       ipgw   the default IP gateway

       dom    the domain name of the system

       fs     the default Plan 9 name server

       auth   the default Plan 9 authentication server

       dns    a domain name server

       ntp    a network time protocol server

       time   a time server

       wins   a NETBIOS name server

       www    a World Wide Web proxy

       pop3   a POP3 mail server

       smtp   an SMTP mail server

       bootf  the default boot file; see ndb(6)

       Dhcpd  will answer BOOTP requests only if it has been specifically tar‐
       geted or if it has read access to the  boot  file  for  the  requester.
       That  means  that the requester must specify a boot file in the request
       or one has to exist in NDB for dhcpd to answer.  Dhcpd will answer  all
       DHCP  requests  for  which  it can associate an IP address with the re‐
       quester.  The options are:

       d      Print debugging to standard output.

       f      Specify a file other than /lib/ndb/local as  the  network  data‐
              base.

       m      Mute:  don't  reply  to  requests,  just log them and what dhcpd
              would have done.

       M      Use secs as the minimum lease time for dynamic addresses.

       n      Don't answer BOOTP requests.

       p      Answer DHCP requests from PPTP clients only.

       r      Mute static addresses: don't reply to requests  for  static  ad‐
              dresses, just log them and what dhcpd would have done.

       s      Sleep  2 seconds before answering requests for static addresses.
              This is used to make a server be a backup only.

       S      Sleep 2 seconds before answering requests for dynamic addresses.

       x      The IP stack to use is mounted at netmtpt.  The default is /net.

       Z      Use secs as the minimum lease time for static addresses.

       Dhcpleases prints out the currently valid  DHCP  leases  found  in  the
       /lib/ndb/dhcp directory.

       Rarpd  performs  the  Reverse  Address Resolution Protocol, translating
       Ethernet addresses into IP addresses.  The options are:

       d      Print debugging to standard output.

       e      Use the Ethernet mounted at /net/etherdev.

       x      The IP stack to use is mounted at netmtpt.  The default is /net.

       Tftpd transfers files to systems that are booting.   It  runs  as  user
       none  and  can  only access files with global read permission.  The op‐
       tions are:

       d      Print debugging to standard output.

       x      The IP stack to use is mounted at netmtpt.  The default is /net.

       h      Change directory to homedir.  The default  is  /lib/tftpd.   All
              requests  for files with non-rooted file names are served start‐
              ing at this directory with the exception of files  of  the  form
              xxxxxxxx.SUNyy.    These  are  Sparc  kernel  boot  files  where
              xxxxxxxx is the hex IP address of  the  machine  requesting  the
              kernel and yy is an architecture identifier.  Tftpd looks up the
              file in the network database using ipinfo (see ndb(2))  and  re‐
              sponds with the boot file specified for that particular machine.
              If no boot file is specified, the transfer  fails.   Tftpd  sup‐
              ports only octet mode.

       r      Restricts access to only those files rooted in the homedir.

FILES
       /lib/ndb/dhcp    directory of dynamic address files

SOURCE
       /sys/src/cmd/ip

SEE ALSO
       ndb(6), booting(8)



                                                                      DHCPD(8)