jdresolve1
Resolves ip addresses into hostnames
Usage
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>
Overview
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, --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
%ifor IP and%cfor 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_logjdresolve -r -s 128 access_log > resolved_logjdresolve -r --database hosts.db access_log > res_log
Releases
13 releases since Debian 2.2 (Potato); the text changed 2 times.
--anywhere since Debian 3.1 (Sarge);
--dbfirst since Debian 3.1 (Sarge);
--dbonly since Debian 3.1 (Sarge);
--dumpdb since Debian 3.1 (Sarge);
--expiredb since Debian 3.1 (Sarge);
--linecache since Debian 12 (Bookworm);
--mergedb since Debian 3.1 (Sarge);
--nostats since Debian 3.1 (Sarge);
--progress since Debian 3.1 (Sarge);
--unresolved since Debian 3.1 (Sarge);
-a since Debian 3.1 (Sarge);
-p since Debian 3.1 (Sarge).
--line-cache until Debian 11 (Bullseye);
--no-stats until Debian 3.0 (Woody).