NONAMED.8
上传用户:datang2001
上传日期:2007-02-01
资源大小:53269k
文件大小:6k
源码类别:

操作系统开发

开发平台:

C/C++

  1. NONAMED(8)                Minix Programmer's Manual                 NONAMED(8)
  2. NAME
  3.      nonamed - not a name daemon, but acts like one
  4. SYNOPSIS
  5.      nonamed [-d[level]] [-p port] [-n address[/port]]
  6. DESCRIPTION
  7.      Nonamed is not an Internet name  daemon.   When  started  it  immediately
  8.      tries  to  find a real name daemon on the local network.  If it finds one
  9.      then it will relay any DNS queries to that name daemon.  If it can't find
  10.      one  then  it  will  do  its  best  to  answer  simple  queries using the
  11.      /etc/hosts table for name to address translation.
  12.      On startup nonamed broadcasts up to five simple UDP queries on the  local
  13.      network.  This is a somewhat nasty thing to do, because it makes all name
  14.      servers on the net spring into action to answer the request.   The  first
  15.      name  server  to  answer  is used by nonamed to answer the queries of its
  16.      clients.  The broadcast search is repeated after an hour to give  another
  17.      name server a chance to be abused.  (It is quite normal for a host to use
  18.      a remote name server.  The broadcasts are a bit unfriendly, but they only
  19.      happen once an hour.)
  20.      If a real name server is found then nonamed enters "relay mode",  passing
  21.      all  queries on.  In relay mode the daemon cannot be distinguished from a
  22.      real DNS name daemon.
  23.      Nonamed accepts both UDP and TCP queries under Minix-vmd.  Under standard
  24.      Minix  only  UDP  queries  are  accepted.  256 relayed UDP queries can be
  25.      outstanding before it forgets where the first one came from.
  26.      In answer mode nonamed can answer simple DNS queries to translate a  host
  27.      name  to  an  IP  address,  or  an  IP  address  to a host name.  Suppose
  28.      /etc/hosts looks like this:
  29.           127.0.0.1      localhost
  30.           192.9.200.1    darask.home.cs.vu.nl
  31.           192.9.200.2    burask.home.cs.vu.nl
  32.      Then queries for the host names  listed  can  be  answered  with  the  IP
  33.      addresses  to  the  left  of them.  If the name can't be found then it is
  34.      retried with the domain name stripped of, this is because "localhost"  is
  35.      looked  up  as  "localhost.home.cs.vu.nl"  in the above example.  Reverse
  36.      lookups are answered with the first hostname on  the  line  with  the  IP
  37.      address.
  38.      UDP queries are immediately answered on startup  if  the  answer  can  be
  39.      found in the hosts file.  Failure answers, and answers to TCP queries are
  40.      delayed until it decides that there are no real name servers out there.
  41.                                                                              1
  42. NONAMED(8)                Minix Programmer's Manual                 NONAMED(8)
  43.      Nonamed employs several timeouts for efficient operation:
  44.      If five broadcasts, two seconds apart fail to produce a  name  server  on
  45.      startup then it decides that there are no real name servers around.
  46.      After 1 hour it will again look for a name server.  (We don't want to hog
  47.      the same one indefinitely.)
  48.      If no UDP reply is seen in four seconds than a simple probe is  sent  the
  49.      name  server.   If  that doesn't provoke an answer in two seconds then it
  50.      will look for a new name server.  A  failing  TCP  connection  will  also
  51.      invoke  a search, the TCP connection is then made to the new name server.
  52.      A client using UDP will retry eventually, a client using TCP will  notice
  53.      nothing but a short delay.  The daemon drops back into answer mode if the
  54.      search fails and it has a hosts file with a "localhost" entry.
  55.      It waits five  minutes  for  any  action  on  a  TCP  stream  before  the
  56.      connection is aborted.
  57.      In answer mode it will generate data with a TTL (time to live) of 1 hour.
  58. OPTIONS
  59.      The options are only useful when debugging nonamed, although  it  can  be
  60.      very instructive to watch DNS queries being done.
  61.      -d[level]
  62.           Set debugging level to level (a single digit, by default 1.)   Debug
  63.           mode  1 makes nonamed decode and display the DNS queries and replies
  64.           that it receives, sends and relays.  The decoding only  handles  the
  65.           common  cases.   In debug mode 2 it prints tracing information about
  66.           the internal jobs it executes.  In debug mode 3 it core  dumps  when
  67.           an  error  causes  it  to  exit.   The  debugging  level may also be
  68.           increased by 1 at runtime by sending signal SIGUSR1  or  turned  off
  69.           (set to 0) with SIGUSR2.
  70.      [-p port]
  71.           Port to use instead of the normal domain port.
  72.      [-n address[/port]]
  73.           Use this IP address and port to find a real name server.  It can  be
  74.           used  to make nonamed relay to another nonamed.  (They do not listen
  75.           to broadcasts, of course.)  You can run two daemons on  one  machine
  76.           if  you  choose  a  new  port number for one of them.  You can force
  77.           nonamed out of relay mode by sending it a hangup signal.
  78. FILES
  79.                                                                              2
  80. NONAMED(8)                Minix Programmer's Manual                 NONAMED(8)
  81.      /etc/hosts     Hosts to address translation table when in answer mode.
  82. SEE ALSO
  83.      gethostbyname(3),  resolver(3),  hosts(5),  set_net_default(8),  boot(8),
  84.      inetd(8), irdpd(8), rarpd(8).
  85. NOTES
  86.      You can specify a remote name server in  /etc/resolv.conf  to  circumvent
  87.      nonamed.  But then you lose its talent for automatically finding new name
  88.      servers when the remote name server becomes unreachable.
  89.      Don't add a "localhost" entry to the hosts file if there are remote  name
  90.      servers.  It makes nonamed drop back in answer mode on a flaky network.
  91. BUGS
  92.      If you can get a remote nonamed to listen to your name  server  then  you
  93.      can  make  it believe anything you want to.  You need access to a machine
  94.      on the same subnet of course.
  95. AUTHOR
  96.      Kees J. Bot (kjb@cs.vu.nl)
  97.                                                                              3