Installing Bind....


Bind (Berkeley Internet Name Daemon) is maintained by the Internet Software Consortium.

Bind falls under the GNU freeware copyright, and can be found at The ISC's Bind Repository.

How to Install on Solaris


Pre Installation...

Assumptions:

  1. Your machine is connected to the internet, or you have access to the internet.
  2. You have Sun's c compiler installed.
  3. Otherwise your Solaris installation is near to vanilla.
  4. You know how to use the internet & vi.
  5. You have /usr/ccs/bin in your PATH.
  6. You have /opt/SUNspro/bin in your PATH.
  7. You're using h2n.pl to translate a hosts file to db's, all located in /var/named
  8. You have a perl 5 binary in your PATH.

What to do...
    Getting The Necessary Components...
    1. FTP the latest source from ftp://ftp.isc.org/isc/bind/src/cur
    2. FTP the Bison Freeware package from http://smc.vnet.net/solaris_2.5_nof.html#bison
    3. FTP the Flex Freeware package from http://smc.vnet.net/solaris_2.5_nof.html#flex
    4. FTP the Gzip Freeware package from http://smc.vnet.net/solaris_2.5_nof.html#gzip
    5. FTP the GNU Patch package from http://smc.vnet.net/solaris_2.5_nof.html#patch

    Installing the Components...
    1. Install the Gzip package.
      1. Translate the package so sun can understand it:
        • pkgtrans ./gzip-1.2.4 /tmp
      2. Install the package...
        • pkgadd -d /tmp
      3. Make the package useful...
        • ln -s /opt/FSFgzip/bin/gzip /usr/bin/gzip
    2. Install the Bison package.
      1. Uncompress the bison package...
        • gzip -d bison-1.24.gz
      2. Translate the package so sun can understand it:
        • pkgtrans ./bison-1.24 /tmp
      3. Install the package...
        • pkgadd -d /tmp
      4. Make the package useful...
        • ln -s /opt/FSFbison/bin/bison /usr/bin/bison
    3. Install the Flex package.
      1. Uncompress the flex package...
        • gzip -d flex-2.5.2.gz
      2. Translate the package so sun can understand it:
        • pkgtrans ./flex-2.5.2 /tmp
      3. Install the package...
        • pkgadd -d /tmp
      4. Make the package useful...
        • ln -s /opt/FSFflex/bin/flex /usr/bin/flex
    4. Install the Patch package.
      • Uncompress the patch package...
        • gzip -d patch-2.1.gz
        Translate the package so sun can understand it:
        • pkgtrans ./patch-2.1 /tmp
      • Install the package.
        • pkgadd -d /tmp
      • Backup the existing patch binary.
        • mv /usr/bin/patch /usr/bin/patch.old
      • Make the package useful...
        • ln -s /opt/FSFpatch/bin/patch /usr/bin/patch

    Extracting the source.
    1. Make a directory in which to put the bind sources.
      • mkdir /usr/src/bind
    2. Copy the source to that directory.
      • cp bind-src.tar.gz /usr/src/bind
    3. Uncompress the source.
      • gzip -d bind-src.tar.gz
    4. Un-Tar the source.
      • tar -xvf bind-src.tar

    Patching the files to make it compile for solaris.
    1. Download this Patch
    2. Change into the directory above the src directory.
      • cd /usr/src/bind
    3. Patch the source using the diff-bind file.
      • patch -R < diff-bind
      • If it asks questions about "Assume -R", choose [y].
      • If it asks "Patch which file", then you're in the wrong directory.

    Compiling the software.
    1. Change into the main directory
      • cd /usr/src/bind/src
    2. Make The /var/obj/bind directory.
      • mkdir /var/obj/bind
    3. Make the standard links.
      • make stdlinks
    4. Clean up the directories.
      • make clean
    5. Make the dependencies for the .h files.
      • make depend
    6. Make the binaries.
      • make
    7. Install the binaries into their correct places.
      • make install
    8. Backup the existing name daemon.
      • mv /usr/sbin/in.named /usr/bin/in.named.old
    9. Link the new binary...
      • ln -s /usr/sbin/named /usr/sbin/in.named
    10. Copy the named-bootconf.pl file to the /var/named directory.
      • cp /usr/src/bind_8.1.1/src/bin/named/named-bootconf.pl /var/named
    11. Make it executable.
      • chmod 755 /usr/src/bind_8.1.1/src/bin/named/named-bootconf.pl
    12. Run the file on your named.boot file, resulting in named.conf.
      • perl named-bootconf.pl < named.boot > named.conf
    13. Link /etc/named.conf to /var/named/named.conf
      • ln -s /var/named/named.conf /etc/named.conf
    14. Edit /etc/rc2.d/S72inetsvc to reflect the change.
      • Change:
        if [ -f /usr/sbin/in.named -a -f /etc/named.boot ]; then
        /usr/sbin/in.named; echo "starting internet domain name server."
        fi

        to

        if [ -f /usr/sbin/in.named -a -f /etc/named.conf ]; then
        /usr/sbin/in.named; echo "starting internet domain name server."
        fi

    Lastly - Reboot the machine
      When Updating your db's...
      1. When you've updated your hosts file (hosts.dns), and you run
        the makedbs script, then run the named-bootconf.pl file again.
        • perl named-bootconf.pl < named.boot > named.conf
      2. or edit your makedbs script to run the file after making the named.boot file.

    Written by Peter A. DeNitto,
    denitto@llamas.net
    Finished on July 30th, 1997