Commit graph

3 commits

Author SHA1 Message Date
hubertf
dd58cad0f1 Update ipv6calc to 0.40. Changes:
* most code reviewed with help of splint
* introduce new option handling (in/out/action)
  - old options are still supported, no plans to remove this
    support in next releases
* some automagically handling relating to
  - input
  - output
  - action
  if not extra specified
* add more conversions, also add more support of IPv4 addresses
* the address information option (-i) now shows also
  - IPv4 registries (by using included current IPv4 CIDR table)
  - IPv6 registries
  - OUI (vendor) of NIC, if EUI-48/64 is a global one
* an example CGI frontend called "ipv6calcweb.cgi" to display
  information about a REMOTE_ADDR on a webpage
  - See e.g. http://ipv6.aerasec.de/index2.html for what can be
    displayed
  - Currently supported languages: en, de
2002-04-21 21:06:54 +00:00
hubertf
4316d1a1ca Update to ipv6calc-0.11. Changes: includes patches to build on
KAME-based IP stacks (like NetBSD :)
2001-03-04 17:38:36 +00:00
hubertf
e5425fe530 Add ipv6calc-0.10:
ipv6calc is a small utility in C to manipulate IPv6 addresses. The intentions
were to convert a given IPv6 address into compressed format, convert a given
IPv6 address into the same format like shown in Linux' /proc/net/if_inet6 and
(because it was not difficulty) migrate ip6_int into. Now only one utiltity is
needed to do a lot (perhaps the features grow on demand in the future).

This utility will be used in the future to extend features on
network-functions-ipv6.

Examples:

 ipv6calc --addr2ip6_int  ipv6addr[/prefixlength]
  Converts given IPv6 address to a dot separated reverse nibble format for use with DNS
   e.g. 3ffe:400:100:f101::1
    -> 1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.1.0.1.f.0.0.1.0.0.0.4.0.e.f.f.3.ip6.int
   e.g. 3ffe:400:100:f101::1/64 -> 1.0.1.f.0.0.1.0.0.0.4.0.e.f.f.3.ip6.int

 ipv6calc --addr2compaddr ipv6addr[/prefixlength]
  Converts given IPv6 address to a compressed one
   e.g. 3ffe:0400:0100:f101:0000:0000:0000:0001 -> 3ffe:400:100:f101::1

 ipv6calc --addr2uncompaddr ipv6addr[/prefixlength]
  Converts given IPv6 address to an uncompressed one
   e.g. 3ffe:400:100:f101::1 -> 3ffe:400:100:f101:0:0:0:1

 ipv6calc --addr2fulluncompaddr ipv6addr[/prefixlength]
  Converts given IPv6 address to a full uncompressed one
   e.g. 3ffe:400:100:f101::1 -> 3ffe:0400:0100:f101:0000:0000:0000:0001

 ipv6calc --addr2if_inet6 ipv6addr[/prefixlength]
  Converts given IPv6 address to similar format shown in /proc/net/if_inet6:
    addr scope [prefixlength]
   e.g. 3ffe:400:100:f101::1 -> 3ffe04000100f1010000000000000001 00
   e.g. 3ffe:400:100:f101::1/64 -> 3ffe04000100f1010000000000000001 00 40

 ipv6calc --if_inet62addr 32hexcharsIPv6addr [2hexcharsPrefixlength]
  Converts given if_inet6 formatted IPv6 address to normal one
   e.g. 3ffe04000100f1010000000000000001 -> 3ffe:400:100::1
   e.g. 3ffe04000100f1010000000000000001 40 -> 3ffe:400:100::1/64
2001-03-04 15:59:22 +00:00