Minix Man Pages

Man Page or Keyword Search:
Man Architecture
Apropos Keyword Search (all sections) Output format
home | help
NONAMED(8)                  System Manager's Manual                 NONAMED(8)

NAME
       nonamed - not a name daemon, but acts like one

SYNOPSIS
       nonamed [-d[level]] [-p port] [-n address[/port]]

DESCRIPTION
       Nonamed  is  not  an Internet name daemon.  When started it immediately
       tries to find a real name daemon on the local network.  If it finds one
       then  it  will  relay any DNS queries to that name daemon.  If it can't
       find one then it will do its best to answer simple  queries  using  the
       /etc/hosts table for name to address translation.

       On  startup  nonamed  broadcasts  up to five" simple UDP queries on the
       local network.  This is a somewhat nasty thing to do, because it  makes
       all  name  servers on the net spring into action to answer the request.
       The first name server to answer  is  used  by  nonamed  to  answer  the
       queries of its clients.  The broadcast search is repeated after an hour
       to give another name server a chance to be abused.  (It is quite normal
       for  a  host  to  use  a  remote name server.  The broadcasts are a bit
       unfriendly, but they only happen once an hour.)

       If a real name server  is  found  then  nonamed  enters  "relay  mode",
       passing   all   queries  on.   In  relay  mode  the  daemon  cannot  be
       distinguished from a real DNS name daemon.

       Nonamed accepts both  UDP  and  TCP  queries  under  Minix-vmd.   Under
       standard Minix only UDP queries are accepted.  256" relayed UDP queries
       can be outstanding before it forgets where the first one came from.

       In answer mode nonamed can answer simple DNS  queries  to  translate  a
       host  name  to an IP address, or an IP address to a host name.  Suppose
       /etc/hosts looks like this:

              127.0.0.1      localhost
              192.9.200.1    darask.home.cs.vu.nl
              192.9.200.2    burask.home.cs.vu.nl

       Then queries for the host names listed can  be  answered  with  the  IP
       addresses  to  the left of them.  If the name can't be found then it is
       retried with the domain name stripped of, this is  because  "localhost"
       is  looked  up  as  "localhost.home.cs.vu.nl"  in  the  above  example.
       Reverse lookups are answered with the first hostname on the  line  with
       the IP address.

       UDP  queries  are  immediately answered on startup if the answer can be
       found in the hosts file.  Failure answers, and answers to  TCP  queries
       are  delayed  until  it decides that there are no real name servers out
       there.

       Nonamed employs several timeouts for efficient operation:

       If five" broadcasts, two seconds" apart fail to produce a  name  server
       on startup then it decides that there are no real name servers around.

       After  1 hour" it will again look for a name server.  (We don't want to
       hog the same one indefinitely.)

       If no UDP reply is seen in .ds m1
        than a simple probe is sent the name server.  If that doesn't  provoke
       an  answer  in two seconds" then it will look for a new name server.  A
       failing TCP connection will also invoke a search, the TCP connection is
       then  made  to  the  new  name  server.   A client using UDP will retry
       eventually, a client using TCP will notice nothing but a  short  delay.
       The daemon drops back into answer mode if the search fails and it has a
       hosts file with a "localhost" entry.

       It waits five minutes" for any  action  on  a  TCP  stream  before  the
       connection is aborted.

       In  answer  mode  it  will generate data with a TTL (time to live) of 1
       hour".

OPTIONS
       The options are only useful when debugging nonamed, although it can  be
       very instructive to watch DNS queries being done.

       -d[level]
              Set  debugging  level  to  level (a single digit, by default 1.)
              Debug mode 1 makes nonamed decode and display  the  DNS  queries
              and  replies  that  it receives, sends and relays.  The decoding
              only handles the common  cases.   In  debug  mode  2  it  prints
              tracing  information  about  the  internal jobs it executes.  In
              debug mode 3 it core dumps when an error causes it to exit.  The
              debugging level may also be increased by 1 at runtime by sending
              signal SIGUSR1 or turned off (set to 0) with SIGUSR2.

       [-p port]
              Port to use instead of the normal domain port.

       [-n address[/port]]
              Use this IP address and port to find a real name server.  It can
              be  used to make nonamed relay to another nonamed.  (They do not
              listen to broadcasts, of course.)  You can run  two  daemons  on
              one  machine  if  you  choose a new port number for one of them.
              You can force nonamed out of relay mode by sending it  a  hangup
              signal.

FILES
       /etc/hosts     Hosts to address translation table when in answer mode.

SEE ALSO
       gethostbyname(3),  resolver(3),  hosts(5), set_net_default(8), boot(8),
       inetd(8), irdpd(8), rarpd(8).

NOTES
       You can specify a remote name server in /etc/resolv.conf to  circumvent
       nonamed.   But  then  you lose its talent for automatically finding new
       name servers when the remote name server becomes unreachable.

       Don't add a "localhost" entry to the hosts file  if  there  are  remote
       name  servers.   It  makes  nonamed drop back in answer mode on a flaky
       network.

BUGS
       If you can get a remote nonamed to listen to your name server then  you
       can make it believe anything you want to.  You need access to a machine
       on the same subnet of course.

AUTHOR
       Kees J. Bot (kjb@cs.vu.nl)

                                                                    NONAMED(8)

NAME | SYNOPSIS | DESCRIPTION | OPTIONS | FILES | SEE ALSO | NOTES | BUGS | AUTHOR