Provided by: iprange_1.0.4+ds-2_amd64 bug

NAME

       iprange - manage IP ranges

SYNOPSIS

       iprange [options] file1 file2 file3 ...

DESCRIPTION

       iprange manages IP ranges

OPTIONS

       multiple options are aliases

   CIDR output modes:
       --optimize

       --combine

       --merge

       --union

       -J

              > MERGE mode (the default)

              Returns all IPs found on all files.  The resulting set is sorted.

       --common

       --intersect

              > COMMON mode

              Intersect all files to find their common IPs.  The resulting set is sorted.

       --except

       --exclude-next

              > EXCEPT mode

              Here  is  how  it  works:  (1) merge all files before this parameter (ipset A); (2) remove all IPs
              found in the files after this parameter, from ipset A and print what remains.  The  resulting  set
              is sorted.

       --diff

       --diff-next

              > DIFF mode

              Here  is  how  it  works: (1) merge all files before this parameter (ipset A); (2) merge all files
              after this parameter (ipset B); (3) print all differences between A and B, i.e IPs found is either
              A  or  B, but not both.  The resulting set is sorted.  When there are differences between A and B,
              iprange exits with 1, with 0 otherwise.

       --ipset-reduce PERCENT

       --reduce-factor PERCENT

              > IPSET REDUCE mode

              Merge all files and print the merged set, but try to  reduce  the  number  of  prefixes  (subnets)
              found, while allowing some increase in entries.  The PERCENT is how much percent to allow increase
              on the number of entries in order to reduce the prefixes (subnets) (the internal  default  PERCENT
              is 20).  Use -v to see exactly what it does.  The resulting set is sorted.

       --ipset-reduce-entries ENTRIES

       --reduce-entries ENTRIES

              > IPSET REDUCE mode

              Allow  increasing  the  entries  above  PERCENT,  if  they are below ENTRIES (the internal default
              ENTRIES is 16384).

   CSV output modes:
       --compare

              > COMPARE ALL mode

              Compare all files with all other files.  Add --header to get the CSV header too.

       --compare-first

              > COMPARE FIRST mode

              Compare the first file with all other files.  Add --header to get the CSV header too.

       --compare-next

              > COMPARE NEXT mode

              Compare all the files that appear before this parameter, to  all  files  that  appear  after  this
              parameter.  Add --header to get the CSV header too.

       --count-unique

       -C

              > COUNT UNIQUE mode

              Merge all files and print its counts.  Add --header to get the CSV header too.

       --count-unique-all

              > COUNT UNIQUE ALL mode

              Print counts for each file.  Add --header to get the CSV header too.

   Controlling input:
       --dont-fix-network

              By  default,  the  network address of all CIDRs is used (i.e., 1.1.1.17/24 is read as 1.1.1.0/24):
              this option disables this feature (i.e., 1.1.1.17/24 is read as 1.1.1.17-1.1.1.255).

       --default-prefix PREFIX

       -p PREFIX

              Set the default prefix for all IPs without mask (the default is 32).

   Controlling CIDR output:
       --min-prefix N

              Do not generate prefixes larger than N, i.e., if N is 24 then /24 to /32 entries will be generated
              (a  /16  network  will  be  generated  using  multiple  /24 networks).  This is useful to optimize
              netfilter/iptables ipsets where each different prefix increases the lookup time  for  each  packet
              whereas  the number of entries in the ipset do not affect its performance.  With this setting more
              entries will be produced to accomplish the same match.  WARNING:  misuse  of  this  parameter  can
              create a large number of entries in the generated set.

       --prefixes N,N,N, ...

              Enable only the given prefixes to express all CIDRs; prefix 32 is always enabled.  WARNING: misuse
              of this parameter can create a large number of entries in the generated set.

       --print-ranges

       -j

              Print IP ranges (A.A.A.A-B.B.B.B) (the default is to print CIDRs (A.A.A.A/B)).   It  only  applies
              when the output is not CSV.

       --print-single-ips

       -1

              Print  single  IPs; this can produce large output (the default is to print CIDRs (A.A.A.A/B)).  It
              only applies when the output is not CSV.

       --print-binary

              Print binary data: this is the fastest way to print a large ipset.  The  result  can  be  read  by
              iprange on the same architecture (no conversion of endianness).

       --print-prefix STRING

              Print   STRING   before   each   IP,  range  or  CIDR.   This  sets  both  --print-prefix-ips  and
              --print-prefix-nets .

       --print-prefix-ips STRING

              Print STRING before each single IP: useful for entering single IPs to a different ipset  than  the
              networks.

       --print-prefix-nets STRING

              Print  STRING  before  each  range  or CIDR: useful for entering sunbets to a different ipset than
              single IPs.

       --print-suffix STRING

              Print  STRING  after  each  IP,  range  or  CIDR.    This   sets   both   --print-suffix-ips   and
              --print-suffix-nets .

       --print-suffix-ips STRING

              Print STRING after each single IP: useful for giving single IPs different ipset options.

       --print-suffix-nets STRING

              Print STRING after each range or CIDR: useful for giving subnets different ipset options.

       --quiet

              Do not print the actual ipset.  Can only be used in DIFF mode.

   Controlling CSV output:
       --header

              When the output is CSV, print the header line (the default is to not print the header line).

   Controlling DNS resolution:
       --dns-threads NUMBER

              The  number of parallel DNS queries to execute when the input files contain hostnames (the default
              is 5).

       --dns-silent

              Do not print DNS resolution errors (the default is to print all DNS related errors).

       --dns-progress

              Print DNS resolution progress bar.

   Other options:
       --has-compare

       --has-reduce

              Exits with 0, other versions of iprange will exit with 1.  Use this option in scripts to  find  if
              this version of iprange is present in a system.

       -v

              Be verbose on stderr.

   Getting help:
       --version

              Print version and exit.

       --help

       -h

              Print this message and exit.

FILES

   Input files:
              > fileN

              A  filename  or - for stdin.  Each filename can be followed by [as NAME] to change its name in the
              CSV output.  If no filename is given, stdin is assumed.

              Files may contain any or all of the following: (1) comments starting with hashes (#) or semicolons
              (;); (2) one IP per line (without mask); (3) a CIDR per line (A.A.A.A/B); (4) an IP range per line
              (A.A.A.A - B.B.B.B); (5) a CIDR range per line (A.A.A.A/B - C.C.C.C/D); the range is calculated as
              the  network  address  of  A.A.A.A/B  to  the  broadcast address of C.C.C.C/D (this is affected by
              --dont-fix-network); (6) CIDRs can be given in either  prefix  or  netmask  format  in  all  cases
              (including  ranges);  (7)  one  hostname  per line, to be resolved with DNS (if the IP resolves to
              multiple IPs, all of them will be added to the ipset) hostnames cannot be  given  as  ranges;  (8)
              spaces and empty lines are ignored.

              Any number of files can be given.

COPYRIGHT

       Copyright © 2015-2017 Costa Tsaousis for FireHOL (Refactored and extended)
       Copyright © 2004 Paul Townsend (Adapted)
       Copyright © 2003 Gabriel L. Somlo (Original)

       License: GPLv2+: GNU GPL version 2 or later <http://gnu.org/licenses/gpl2.html>.  This program comes with
       ABSOLUTELY NO WARRANTY; This is free software, and you are  welcome  to  redistribute  it  under  certain
       conditions; See COPYING distributed in the source for details.