NAME¶
jdresolve - resolves IP addresses into hostnames
SYNOPSIS¶
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>
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.
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, --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 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=<db path>
- 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
- <LOG FILE>
- the log filename or '-' for STDIN
EXAMPLES¶
jdresolve access_log > resolved_log
jdresolve -r -s 128 access_log > resolved_log
jdresolve -r --database hosts.db access_log > res_log
SEE ALSO¶
rhost(1)
AUTHOR¶
jdresolve was written by John D. Rowell <me@jdrowell.com>, and is
licensed under the terms of the GNU General Public License.
The original version of this man page was written by Craig Sanders
<cas@taz.net.au>, for the Debian GNU/Linux package of jdresolve, and is
also licensed under the terms of the GNU GPL.