我在这里的网站http://jmorano.moretrix.com/2010/08/calculate-netmask-in-perl上找到了一个小功能 我正在使用它,但它不会产生与他得到的相同的东西。
我将 CIDR 地址放在这样的变量中:
126.126.126.250/24
该函数应该返回类似的东西
255.255.255.0
但是相反,它返回
0.0.0.255
我在函数中唯一修改的是
my($network, $netbit) = split ///, $subnet;
至
my($network, $netbit) = split /\//, $subnet;
并且返回只是更改为“打印”
return $netmask;
到 print "$netmask \n" ;
我想这里有问题
my $_bit = ( 2 ** (32 - $netbit) ) - 1;
因为当我打印 $_bit 我只有“255”
但我不知道它是什么。