由于普通的路由器和防火墙等不支持IP地址范围的方式,在工作中经常将IP地址范围转换为子网掩码格式、CIDR格式、思科反向子网掩码格式等!
虽然有些工具在windows上可以完成,但是使用起来很不方便,功能也不充分。 此外,进行批量转换时,无法编写和实现脚本。
无意中在linux上找到了一个叫netmask的工具。 功能强大、超高速,与脚本组合时批量转换简单!
首先介绍这个工具:
netmaks可以以IP范围、子网掩码、cidr、cisco等形式相互转换,提供IP地址点分隔的十进制、十六进制、八进制、二进制之间的相互转换!
1、网络口罩安装:
在Centos上安装很简单。 #yuminstallnetmask
因为没有在centos、fedora、opensuse下使用yum安装,所以使用源代码方式安装。
# wget http://mirrors.Sohu.com/Ubuntu/pool/universe/n/net mask/net mask _2.3. 12.tar.gz
#tarxfnetmask_2.3.12.tar.gz
#cdnetmask-2.3.12
#./configure
#妆
# make安装
2、安装完成后,先看一下帮助文档。 #netmaks-h
Thisisnetmask,anaddressnetmaskgenerationutility
usage : netmasks pec [ spec . ]-h,--helpprintasummaryoftheoptions
-v,--versionPrinttheversionnumber
-d,--debugprintstatus/progress information
s---- standardoutputaddress/net mask pairs
转换为标准ip地址/子网掩码
-c,--cidroutputcidrformataddresslists
转换为CIDR格式
- I---ciscooutputciscostyleaddresslists
转换为Cisco逆子网掩码
r----rangeoutputipaddressranges
转换为IP地址范围
-x,--hexoutputaddress/netmaskpairsinhex
转换为十六进制
-o,--octaloutputaddress/netmaskpairsinoctal
转换为八进制
-b,--binaryoutputaddress/netmaskpairsinbinary
转换为二进制
-n,--nodnsdisablednslookupsforaddresses
定义:
aspeccanbeanyof:
netmask命令接受的ip地址格式:
地址单独IP
地址IP:地址开始IP:结束IP
地址:地址开始IP: IP数
地址/掩码/掩码
3、使用情况如下。
将ip范围转换为cidr格式# net mask-c 192.168.0.0:192.168.2.255
192.168.0.0/23
192.168.2.0/24
将ip范围转换为标准子网掩码格式# net mask-s 192.168.0.0:192.168.2.255
192.168.0.0/255.255.254.0
192.168.2.0/255.255.255.0
将ip范围转换为cisco格式# net mask-I 192.168.0.0:192.168.2.255
192.168.0.00.0.1.255
192.168.2.00.0.0.255
将cidr个数转换为ip范围格式#netmask-r192.168.0.0/23
192.168.0.0-192.168.1.255(512 )。
将点分十进制的ip变换为二进制#netmask-b192.168.0.0
1000000101010101000000000000001111111111111111