jdresolve - resolves IP addresses into hostnames
Contents
Description
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.
Examples
jdresolve access_log > resolved_log
jdresolve -r -s 128 access_log > resolved_log
jdresolve -r --database hosts.db access_log > res_log
Name
jdresolve - resolves IP addresses into hostnames
Options
-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,--linecache=<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 64)
-m,--mask=<mask>
<mask> accepts %i for IP and %c for class owner, e.g. "somewhere.in.%c" or "%i.in.%c"
(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=<dbpath>
path to database that holds resolved hosts/classes
--dbfirst
check if we have resolved entries in the database before sending out DNS queries
--dbonly
don't send DNS queries, use only resolved data in the database
--dumpdb
dumps a database to STDOUT
--mergedb
merges resolved IP/classes from a file (or STDIN) with a database
--expiredb=<hours>
expires entries in the database that are older than <hours> hours
--unresolved
won't attempt to resolve IPs, only lists those that were not resolved
<LOGFILE>
the log filename or '-' for STDIN
See Also
rhost(1)
Synopsis
jdresolve [-h] [-v] [-n] [-r] [-a] [-d <level>] [-m <mask>] [-l <line cache>] [-t
<timeout>] [-p] [-s <number of sockets>] [--database=<db path>] <LOGFILE>
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] <LOGFILE>
