.rn '' }` ''' $RCSfile$$Revision$$Date$ ''' ''' $Log$ ''' .de Sh .br .if t .Sp .ne 5 .PP \fB\\$1\fR .PP .. .de Sp .if t .sp .5v .if n .sp .. .de Ip .br .ie \\n(.$>=3 .ne \\$3 .el .ne 3 .IP "\\$1" \\$2 .. .de Vb .ft CW .nf .ne \\$1 .. .de Ve .ft R .fi .. ''' ''' ''' Set up \*(-- to give an unbreakable dash; ''' string Tr holds user defined translation string. ''' Bell System Logo is used as a dummy character. ''' .tr \(*W-|\(bv\*(Tr .ie n \{\ .ds -- \(*W- .ds PI pi .if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch .if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch .ds L" "" .ds R" "" ''' \*(M", \*(S", \*(N" and \*(T" are the equivalent of ''' \*(L" and \*(R", except that they are used on ".xx" lines, ''' such as .IP and .SH, which do another additional levels of ''' double-quote interpretation .ds M" """ .ds S" """ .ds N" """"" .ds T" """"" .ds L' ' .ds R' ' .ds M' ' .ds S' ' .ds N' ' .ds T' ' 'br\} .el\{\ .ds -- \(em\| .tr \*(Tr .ds L" `` .ds R" '' .ds M" `` .ds S" '' .ds N" `` .ds T" '' .ds L' ` .ds R' ' .ds M' ` .ds S' ' .ds N' ` .ds T' ' .ds PI \(*p 'br\} .\" If the F register is turned on, we'll generate .\" index entries out stderr for the following things: .\" TH Title .\" SH Header .\" Sh Subsection .\" Ip Item .\" X<> Xref (embedded .\" Of course, you have to process the output yourself .\" in some meaninful fashion. .if \nF \{ .de IX .tm Index:\\$1\t\\n%\t"\\$2" .. .nr % 0 .rr F .\} .TH JDRESOLVE 1 "perl 5.005, patch 03" "16/Oct/2000" "User Contributed Perl Documentation" .UC .if n .hy 0 .if n .na .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .de CQ \" put $1 in typewriter font .ft CW 'if n "\c 'if t \\&\\$1\c 'if n \\&\\$1\c 'if n \&" \\&\\$2 \\$3 \\$4 \\$5 \\$6 \\$7 '.ft R .. .\" @(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2 . \" AM - accent mark definitions .bd B 3 . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds ? ? . ds ! ! . ds / . ds q .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds ? \s-2c\h'-\w'c'u*7/10'\u\h'\*(#H'\zi\d\s+2\h'\w'c'u*8/10' . ds ! \s-2\(or\s+2\h'-\w'\(or'u'\v'-.8m'.\v'.8m' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' . ds q o\h'-\w'o'u*8/10'\s-4\v'.4m'\z\(*i\v'-.4m'\s+4\h'\w'o'u*8/10' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds v \\k:\h'-(\\n(.wu*9/10-\*(#H)'\v'-\*(#V'\*(#[\s-4v\s0\v'\*(#V'\h'|\\n:u'\*(#] .ds _ \\k:\h'-(\\n(.wu*9/10-\*(#H+(\*(#F*2/3))'\v'-.4m'\z\(hy\v'.4m'\h'|\\n:u' .ds . \\k:\h'-(\\n(.wu*8/10)'\v'\*(#V*4/10'\z.\v'-\*(#V*4/10'\h'|\\n:u' .ds 3 \*(#[\v'.2m'\s-2\&3\s0\v'-.2m'\*(#] .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E .ds oe o\h'-(\w'o'u*4/10)'e .ds Oe O\h'-(\w'O'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds v \h'-1'\o'\(aa\(ga' . ds _ \h'-1'^ . ds . \h'-1'. . ds 3 3 . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE . ds oe oe . ds Oe OE .\} .rm #[ #] #H #V #F C .SH "NAME" jdresolve \- resolves IP addresses into hostnames .SH "SYNOPSIS" \fBjdresolve\fR [\-h] [\-v] [\-n] [\-r] [\-a] [\-d ] [\-m ] [\-l ] [\-t ] [\-p] [\-s ] [--database=] <\fILOG FILE\fR> .PP \fBjdresolve\fR [--help] [--version] [--nostats] [--recursive] [--anywhere] [--debug=] [--mask=] [--linecache=] [--timeout=] [--sockets=] [--database=] [--dbfirst] [--dbonly] [--dumpdb] [--mergedb] [--expiredb=] [--unresolved] [--progress] <\fILOG FILE\fR> .SH "DESCRIPTION" \fBjdresolve\fR 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. .SH "OPTIONS" .Ip "\fB\-h, --help\fR" 8 produces a short help message .Ip "\fB\-v, --version\fR" 8 display version information .Ip "\fB\-n, --nostats\fR" 8 don't display stats after processing .Ip "\fB\-r, --recursive\fR" 8 recurse into C, B and A classes when there is no \s-1PTR\s0 (default is no recursion) .Ip "\fB\-d, --debug=" 8 debug mode \- no file output, just statistics during run (verbosity level range: 1-3) .Ip "\fB\-t, --timeout=" 8 timeout in seconds for each host resolution (default is 30 seconds) .Ip "\fB\-l, --line-cache=" 8 numbers of lines to cache in memory (default is 10000 .Ip "\fB\-s, --sockets=" 8 maximum number of concurrent sockets (use ulimit \-a to check the max allowed for your operating system \- defaults to 64) .Ip "\fB\-m, --mask=" 8 accepts \f(CW%i\fR for \s-1IP\s0 and \f(CW%c\fR for class owner, e.g. \*(L"somewhere.in.%c\*(R" or \*(L"%i.in.%c\*(R" (default is \*(L"%i.%c") .Ip "\fB\-a, --anywhere\fR" 8 resolves IPs found anywhere on a line (will resolve all IPs if there is more than one) .Ip "\fB\-p, --progress\fR" 8 prints a nice progress bar indicating the status of the resolve operations .Ip "\fB--database=" 8 path to database that holds resolved hosts/classes .Ip "\fB--dbfirst\fR" 8 check if we have resolved entries in the database before sending out \s-1DNS\s0 queries .Ip "\fB--dbonly\fR" 8 don't send \s-1DNS\s0 queries, use only resolved data in the database .Ip "\fB--dumpdb\fR" 8 dumps a database to \s-1STDOUT\s0 .Ip "\fB--mergedb\fR" 8 merges resolved \s-1IP/\s0classes from a file (or \s-1STDIN\s0) with a database .Ip "\fB--expiredb=" 8 expires entries in the database that are older than hours .Ip "\fB--unresolved\fR" 8 won't attempt to resolve IPs, only lists those that were not resolved .Ip "\fB<\s-1LOG\s0 \s-1FILE\s0\fR>" 8 the log filename or \*(L'\-\*(R' for \s-1STDIN\s0 .SH "EXAMPLES" .Sp .Vb 3 \& jdresolve access_log > resolved_log \& jdresolve -r -s 128 access_log > resolved_log \& jdresolve -r --database hosts.db access_log > res_log .Ve .SH "SEE ALSO" \fIrhost\fR\|(1) .SH "AUTHOR" \fBjdresolve\fR was written by John D. Rowell , and is licensed under the terms of the GNU General Public License. .Sp 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. .rn }` '' .IX Title "JDRESOLVE 1" .IX Name "jdresolve - resolves IP addresses into hostnames" .IX Header "NAME" .IX Header "SYNOPSIS" .IX Header "DESCRIPTION" .IX Header "OPTIONS" .IX Item "\fB\-h, --help\fR" .IX Item "\fB\-v, --version\fR" .IX Item "\fB\-n, --no-stats\fR" .IX Item "\fB\-r, --recursive\fR" .IX Item "\fB\-d, --debug=" .IX Item "\fB\-t, --timeout=" .IX Item "\fB\-l, --line-cache=" .IX Item "\fB\-s, --sockets=" .IX Item "\fB\-m, --mask=" .IX Item "\fB\-a, --anywhere\fR" .IX Item "\fB\-p, --progress\fR" .IX Item "\fB--database=" .IX Item "\fB--dbfirst\fR" .IX Item "\fB--dbonly\fR" .IX Item "\fB--dumpdb\fR" .IX Item "\fB--mergedb\fR" .IX Item "\fB--expiredb=" .IX Item "\fB--unresolved\fR" .IX Item "\fB<\s-1LOG\s0 \s-1FILE\s0\fR>" .IX Header "EXAMPLES" .IX Header "SEE ALSO" .IX Header "AUTHOR"