|
@@ -1,62 +0,0 @@
|
|
|
-#!/bin/sh
|
|
|
-
|
|
|
-# Convert netmask in dot notation to CIDR
|
|
|
-
|
|
|
-mask2cidr() {
|
|
|
- nbits=0
|
|
|
- IFS=.
|
|
|
- for dec in $1 ; do
|
|
|
- case $dec in
|
|
|
- 255) nbits=$(expr $nbits + 8);;
|
|
|
- 254) nbits=$(expr $nbits + 7);;
|
|
|
- 252) nbits=$(expr $nbits + 6);;
|
|
|
- 248) nbits=$(expr $nbits + 5);;
|
|
|
- 240) nbits=$(expr $nbits + 4);;
|
|
|
- 224) nbits=$(expr $nbits + 3);;
|
|
|
- 192) nbits=$(expr $nbits + 2);;
|
|
|
- 128) nbits=$(expr $nbits + 1);;
|
|
|
- 0);;
|
|
|
- *) return 1;;
|
|
|
- esac
|
|
|
- done
|
|
|
- echo "$nbits"
|
|
|
- return 0
|
|
|
-}
|
|
|
-
|
|
|
-#cidr2mask() {
|
|
|
-# local i mask=""
|
|
|
-# local full_octets=$(($1/8))
|
|
|
-# local partial_octet=$(($1%8))
|
|
|
-#
|
|
|
-# for ((i=0;i<4;i+=1)); do
|
|
|
-# if [ $i -lt $full_octets ]; then
|
|
|
-# mask+=255
|
|
|
-# elif [ $i -eq $full_octets ]; then
|
|
|
-# mask+=$((256 - 2**(8-$partial_octet)))
|
|
|
-# else
|
|
|
-# mask+=0
|
|
|
-# fi
|
|
|
-# test $i -lt 3 && mask+=.
|
|
|
-# done
|
|
|
-#
|
|
|
-# echo $mask
|
|
|
-#}
|
|
|
-
|
|
|
-## main ##
|
|
|
-
|
|
|
-if [ $# -lt 2 ]; then
|
|
|
- return 1
|
|
|
-fi
|
|
|
-
|
|
|
-# if dot notation
|
|
|
-if [ "$1" = "-d" ]; then
|
|
|
- mask=$2
|
|
|
- numbits=$(mask2cidr $mask)
|
|
|
- if [ "x$numbits" != "x" ]; then
|
|
|
- echo "$numbits"
|
|
|
- fi
|
|
|
- exit 0
|
|
|
-
|
|
|
-elif [ "$1" = "-c" ]; then
|
|
|
- echo "Under construction"
|
|
|
-fi
|