summaryrefslogtreecommitdiff
path: root/scripts/cidr2ip
diff options
context:
space:
mode:
authorNick <nick@somerandomnick.ano>2010-05-12 21:29:59 +0000
committerNick <nick@somerandomnick.ano>2010-05-12 21:29:59 +0000
commit91a8cee50c9cce580534b8cc6ca31265029ef6d2 (patch)
treefc51d8743dd321d3896e60700ae0db0fed53fd01 /scripts/cidr2ip
parentd895d7d758ee8a26dac6c9ccae4f55c5624f17d1 (diff)
downloadresdb-91a8cee50c9cce580534b8cc6ca31265029ef6d2.tar.gz
resdb-91a8cee50c9cce580534b8cc6ca31265029ef6d2.zip
scripts for dom&ip, dn42 resdb, and doc (www.anonet2.org)
Diffstat (limited to 'scripts/cidr2ip')
-rwxr-xr-xscripts/cidr2ip15
1 files changed, 15 insertions, 0 deletions
diff --git a/scripts/cidr2ip b/scripts/cidr2ip
new file mode 100755
index 0000000..474173e
--- /dev/null
+++ b/scripts/cidr2ip
@@ -0,0 +1,15 @@
+#!/bin/sh
+
+if [ x"$1" = x ]; then
+ echo "Usage: $0 <cidr>" >&2; exit 255
+fi
+
+ip="$(echo "$1" | cut -d/ -f1)"
+len="$(echo "$1" | cut -d/ -f2)"
+if [ x"$((len%8))" != x0 ]; then
+ echo "Prefix length must be a multiple of 8" >&2; exit 255
+fi
+octets="$((len/8))"
+for x in `seq 1 $octets` ; do
+ echo $ip | cut -d. -f$x
+done | tr '\n' . | head -c -1 ; echo