home *** CD-ROM | disk | FTP | other *** search
/ rtsi.com / 2014.01.www.rtsi.com.tar / www.rtsi.com / OS9 / OSK / NETWORK / ISP / bind.4.8.3.lzh / BIND483 / README < prev    next >
Text File  |  1993-08-24  |  7KB  |  155 lines

  1. ---------------------
  2. This directory contains all the info and sources
  3. for the Berkeley Internet Name Domain server.
  4. You should read and understand these directions before starting
  5. to install the libraries and nameserver.  Some of these steps
  6. replace existing source and binary files; you should make backups
  7. of all existing files before you begin this installation.
  8. Two installation procedures are described.  The first is for 4.3BSD
  9. and other similar systems that are already configured to use earlier
  10. versions of the nameserver, and which have the new version of <netdb.h>
  11. (containing a h_addr_list field in the hostent structure).  The second
  12. procedure is for 4.2BSD and derived systems.  This procedure requires
  13. more decisions to be made, and may have to be varied due to system
  14. or operation constraints.
  15.  
  16. The subdirectories and their contents are:
  17.  
  18. bin       - shell scripts used by current Berkeley makefiles
  19. man       - manual pages & documentation
  20. doc       - copy of Bind Operations Guide, and other documents 
  21. include   - include files to go in /usr/include
  22. named     - name server sources
  23. res       - source for C library resolver routines (and other libc additions)
  24.         (may be used as separate library, resolv.a)
  25. master    - Sample data files
  26. tools     - some test programs
  27.  
  28.  
  29. Here is how to install the name server on 4.3BSD:
  30.  
  31. 0) cp bin/mkdep.append /usr/ucb/mkdep
  32.    cp bin/manroff /usr/man/manroff
  33. 1) cp include/arpa/nameser.h /usr/include/arpa  
  34. 2) cp include/*.h /usr/include 
  35. 3) cp man/*.1 /usr/man/manl
  36.    cp man/*.3 /usr/man/man3
  37.    cp man/*.5 /usr/man/man5
  38.    cp man/*.7 /usr/man/man7
  39.    cp man/*.8 /usr/man/man8
  40. 4) NOTE: Don't install the Makefiles on 4.3 Tahoe Release
  41.    cp res/{res*.c,herror.c} /usr/src/lib/libc/net
  42.    cp res/Makefile.libc.net /usr/src/lib/libc/net/Makefile
  43.    cp res/strcasecmp.c /usr/src/lib/libc/gen
  44.    cp res/strpbrk.c /usr/src/lib/libc/compat-sys5
  45.    cp res/named/{*.c,Makefile} /usr/src/lib/libc/net/named
  46. 5) add strcasecmp.[co] to the Makefile in /usr/src/lib/libc/gen
  47. 6) add strpbrk.[co] to the Makefile in /usr/src/lib/libc/compat-sys5
  48. 7) rebuild and install /lib/libc.a.
  49. 8) edit named/pathnames.h to correpond with your system's configuration
  50. 9) cd named; make depend; make all; make install
  51. 10) cd tools/nslookup; make nslookup; make install
  52. 11) create the master files (samples in master/*)
  53. 12) edit /etc/rc.local to include:
  54.  
  55. if [ -f /etc/named ]; then
  56.         /etc/named; echo -n ' named' >/dev/console
  57. fi
  58.  
  59. 13) recompile network client and server programs that use gethostbyname, etc.
  60.  
  61.  
  62.  
  63. Here is how to install the name server on 4.2BSD or similar systems.
  64. First, a few notes on the choices that must be made.
  65.  
  66. Rather than building libresolv.a, you may wish to integrate the resolver
  67. routines into /lib/libc.a.  This is recommended to make it easy to recompile
  68. network programs once named is running.  This procedure may require hand-
  69. tayloring on some systems.
  70.  
  71. You will have to choose a version of mkdep from the bin directory
  72. that will work on your system:
  73. If you've modified make(1) to use .depend files as described
  74. in the current sendmail distribution, use mkdep; otherwise,
  75. if you have the 4.3BSD cc -M option, use mkdep.append; on ultrix,
  76. use mkdep.ultrix (uses cc -Em); otherwise, use mkdep.old.compiler.
  77. The mkdep script is used by "make depend" to regenerate Makefile dependency
  78. lists.
  79.  
  80. You will need to chose a version of netdb.h.  First, check /usr/include/netdb.h
  81. on your system.  If the hostent structure has a h_addr_list entry, you can
  82. probably use your existing netdb.h or the one in include/netdb.h.
  83. If the existing netdb.h in /usr/include does not have a h_addr_list field,
  84. you will have to decide whether to update to the 4.3BSD format of the hostent
  85. structure.  This is the best approach, but cannot be used unless you plan
  86. to upgrade entirely: if you use the new structure in /usr/include/resolv.h,
  87. you must recompile everything that uses the hostent structure, including
  88. the rest of the C library and all networking programs, without using
  89. any pre-existing object files.  If this isn't possible or desirable,
  90. and /usr/include/netdb.h doesn't have an h_addr_list line, use
  91. include/netdb.h.4.2 instead of netdb.h.  The other version of netdb.h
  92. (include/netdb.h.4.2.compat) may be used instead of include/netdb.h.4.2.
  93. This version along with a change in res/named/gethostnamadr.c.compat
  94. provide for using the new format of the hostent structure while having
  95. binary compatibility with existing libraries.
  96.  
  97. On systems with Sun RPC, you will have to merge include/netdb.h or
  98. include/netdb.h.4.2 with /usr/include/netdb.h; copy the rpc-related lines
  99. into the appropriate copy of netdb.h.  Alternatively, use an alternate
  100. include path when compiling the resolver library and programs that use it.
  101.  
  102. 0) cp bin/{whatever} /usr/ucb/mkdep        (see above)
  103.    cp bin/manroff /usr/man/manroff
  104. 1) cp include/arpa/nameser.h /usr/include/arpa  
  105.    Also, on ultrix 2.x, if you haven't fixed
  106.    the inet_addr definition in inet.h, do
  107.    cp include/arpa/inet.h /usr/include/arpa
  108. 2) cp include/resolv.h /usr/include
  109. 3) cp include/netdb.h /usr/include/netdb.h
  110. OR
  111.    cp include/netdb.h.4.2 /usr/include/netdb.h
  112. OR
  113.    edit /usr/include/netdb.h
  114. 4) cp man/*.1 /usr/man/manl
  115.    cp man/*.3 /usr/man/man3
  116.    cp man/*.5 /usr/man/man5
  117.    cp man/*.7 /usr/man/man7
  118.    cp man/*.8 /usr/man/man8
  119. 5) cd res; make depend;
  120.    make libresolv.a;
  121.    make install
  122. OR
  123.    update the libc sources as in the 4.3BSD instructions above
  124.    and use res/Makefile as a guide for integration
  125.    and omit the RES=-lresolv in the next two steps
  126. OR
  127.    compile the .o files in res according to Makefile,
  128.    then use place those object files in /lib/libc.a (keeping a backup!)
  129.    and omit the RES=-lresolv in the next two steps
  130. 6) edit named/pathnames.h to correpond with your system's configuration
  131. 7) cd named; make depend; make RES=-lresolv all; make install
  132.    (if your system defines signal-catching routines to return int
  133.    instead of void, use "make DEFINES=-DSIG_FN=int RES=-lresolv all")
  134. 8) edit tools/nslookup/pathnames.h to correpond with your system's
  135.      configuration
  136. 9) cd tools/nslookup; make RES=-lresolv nslookup install
  137. 10) create the master files (samples in master/*)
  138. 11) edit /etc/rc.local to include:
  139.  
  140. if [ -f /etc/named ]; then
  141.         /etc/named; echo -n ' named' >/dev/console
  142. fi
  143.  
  144. 12) eventually, recompile network client and server programs that use
  145. gethostbyname, etc.
  146.  
  147. If you have any problems or fixes send them to 
  148.     bind@ucbarpa.berkeley.edu
  149.  
  150. To be added to that mailing list, send mail to
  151.     bind-request@ucbarpa.berkeley.edu
  152.  
  153. For sendmail that supports MX records, use anonymous ftp to obtain
  154.     ucbarpa.Berkeley.EDU:~ftp/4.3/sendmail.5.64.tar.Z
  155.