Man Linux: Main Page and Category List


       jdresolve - resolves IP addresses into hostnames


       jdresolve  [-h]   [-v]   [-n]   [-r]   [-a]  [-d  <level>] [-m
       <mask>]   [-l  <line  cache>]  [-t  <timeout>]  [-p] [-s    <number
       of   sockets>]   [--database=<db   path>] <LOG FILE>

       jdresolve  [--help]  [--version] [--nostats] [--recursive] [--anywhere]
       [--debug=<level>]       [--mask=<mask>] [--linecache=<line cache>]
       [--timeout=<timeout>] [--sockets=<number of sockets>]
       [--database=<db path>] [--dbfirst]      [--dbonly]     [--dumpdb]
       [--mergedb] [--expiredb=<hours>]      [--unresolved]      [--progress]
       <LOG FILE>


       jdresolve  resolves  IP  addresses  to hostnames. Any file format  is
       supported, including those where the line does not  begin  with  the
       IP  address.  One  of the strongest features  of  the program  is  the
       support for recursion, which  can  drastically  reduce  the  number of
       unresolved hosts  by  faking a hostname based on the network that the
       IP  belongs  to.  DNS  queries are sent in parallel, which means  that
       you  can  decrease run time by increasing the number  of  simultaneous
       sockets used (given a fast enough machine and available bandwidth ).
       By  using the database support,  performance  can  be  increased even
       further, by using cached data from previous runs.


       -h, --help
               produces a short help message

       -v, --version
               display version information

       -n, --nostats
               don’t display stats after processing

       -r, --recursive
               recurse  into  C, B and A classes when there is no PTR (default
               is no recursion)

       -d, --debug=<debug-level>
               debug  mode  -  no  file  output,  just statistics during run
               (verbosity level range: 1-3)

       -t, --timeout=<seconds>
               timeout   in  seconds  for  each  host  resolution (default is
               30 seconds)

       -l, --line-cache=<lines>
               numbers  of  lines  to cache in memory (default is 10000

       -s, --sockets=<sockets>
               maximum  number  of concurrent sockets (use ulimit -a  to
               check  the  max allowed for your operating system - defaults to

       -m, --mask=<mask>
               <mask>  accepts  %i for IP and %c for class owner, e.g.
               ""  or "" (default is "%i.%c")

       -a, --anywhere
               resolves  IPs  found  anywhere  on  a  line  (will resolve all
               IPs if there is more than one)

       -p, --progress
               prints  a  nice progress bar indicating the status of the
               resolve operations

       --database=<db path>
               path to database that holds resolved hosts/classes

               check  if we have resolved entries in the database before
               sending out DNS queries

               don’t  send DNS queries, use only resolved data in the database

               dumps a database to STDOUT

               merges  resolved IP/classes from a file (or STDIN) with a

               expires  entries  in  the  database that are older than <hours>

               won’t  attempt  to  resolve  IPs, only lists those that were
               not resolved

       <LOG FILE>
               the log filename or ’-’ for STDIN


           jdresolve access_log > resolved_log
           jdresolve -r -s 128 access_log > resolved_log
           jdresolve -r --database hosts.db access_log > res_log




       jdresolve was written by John D. Rowell <>, and  is
       licensed under the terms of the GNU General Public License.

       The original version of this man page was written by Craig Sanders
       <>,   for   the  Debian  GNU/Linux package of jdresolve,
       and is also licensed under the terms of the GNU GPL.