logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

ripcalc - a tool for network addresses

Authors

       Ed Neville (ed-ripcalc@s5h.net).

ripcalc 0.1.12                                    11 July 2024                                        ripcalc(1)

Csv

       Network matches can be returned from a CSV.

              $ cat nets.csv
              network,range,owner
              rfc1918,192.168.0.0/16,bob
              rfc1918,172.16.0.0/12,cliff
              rfc1918,10.0.0.0/8,mr nobody
              $ ripcalc --csv nets.csv -i range --format '%{owner}\n' 192.168.0.0
              bob

       Addresses can be read via file or from stdin (-):

              $ cat list
              127.0.0.1/28
              10.0.0.1/28
              192.168.1.1/30
              172.18.1.1/30
              10.0.0.0/30
              $ ripcalc --csv nets.csv -i range --format '%{range} %{owner}\n' -s list
              10.0.0.0/8 mr nobody
              192.168.0.0/16 bob
              172.16.0.0/12 cliff
              10.0.0.0/8 mr nobody

Description

ripcalc  can read IPv4/IPv6 addresses from command line or standard input and output different formats or
       associated networks from CSV.

       ripcalc can format network addresses, find matches in CSV or process a list.

       ripcalc can convert input addresses that are in other number formats such as hex or octal.

       Given a list of IP addresses, print only those that match the network.  When s and inside are used,  only
       addresses  from -s are printed if they are that are inside of the input IP network from the command line.
       This can be reversed with --outside, (e.g. ripcalc-s---inside192.168.0.0/16).

       When -a is used, addresses read from -s will not be shown when listing -l a network, showing only  avail‐
       able addresses.

       When --reverse is used the inputs, sources or both can be treated as back-to-front.

       ripcalc can return a list of subnets when a network is provided along with the divide argument and a sub‐
       net CIDR mask.

       When --encapsulating is used the containing network will be returned.

Format

% denotes a format control character, followed by one of the following:

       placeholder   effect
       ───────────────────────────────────────
       %a            IP address string
       %n            Network address string
       %s            Subnet address string
       %w            Wildcard address string
       %b            Broadcast address string

       Additional characters prefixing the above placeholder can control the representation:

       placeholder   effect
       ────────────────────────────────────────────────────
       %B            Binary address string
       %S            Split   binary  at  network  boundary
                     string
       %l            Unsigned integer string
       %L            Signed integer string
       %x            Hex address string

       Other format characters:

       placeholder   effect
       ────────────────────────────────────────────────────
       %c            CIDR mask
       %t            Network size
       %r            Network reservation  information  (if
                     available)
       %d            Matching device interface by IP
       %m            Matching media link interface by net‐
                     work
       %k            RBL-style format
       %%            %
       \n            Line break
       \t            Tab character

       %xa gives the address in hex, or %Sa to return the binary address, split at the network boundary.

       When using CSV fields can be matched by name when network matched:

              --format '%{name}'

   inside/outside
       When  --inside  or  --outside are given addresses that match --file are printed.  If no matches are found
       ripcalc will exit non-zero.

Name

       ripcalc - a tool for network addresses

Synopsis

ripcalc127.0.0.1ripcalc-4/--ipv4127.0.0.1ripcalc-6/--ipv6::1ripcalc-f/--format“%a/%c”127.0.0.1ripcalc-m/--mask28127.0.0.1ripcalc-c/--csvpath/to/csv[-i/--fieldnetwork]127.0.0.1ripcalc-l/--list127.0.0.1ripcalc-a/--availableripcalc-s/--file[-]127.0.0.1ripcalc-e/--encapsulating[-s/--filename]ripcalc-s/--filename[--inside/--outside]127.0.0.1ripcalc-b/--base[8,10,16etc]ripcalc-d/--divide[CIDR]127.0.0.1/24ripcalc-h/--help

See Also