一、原理
子网掩码的合法性简单来讲也就是子网掩码就类似这样一串数字,前面一段是连续的1,类似“111111111”,后面一段是连续的0,类似“00000”,这样合法的样子是“11111111000000000”,总共是32位。
一个合法的子网掩码要满足如下条件:
1、是合法的IP地址
2、二进制码要相邻,即形如111...11000...0的形式
3、与IP地址对应,A、B、C、D各类IP地址都有对应的掩码范围(以后再讨论)
二、实现方法
1、判断方法
根据以上的原理,可以用下面的方法进行子网掩码合法性进行判断:查找子网掩码字符串中的子串“01”,若查不到子网掩码就是合法的,否则是不合法的
2、JavaScript代码实现
<html>
<head>
<title>子网掩码验证</title>
</head>
<body>
<center>
<h1>子网掩码验证</h1>
<input type="text" name="mask" id="mask" value=""/>
<input type="button" name="mytest" id="mytest" value="check_value" onClick="test()"/>
</center>
<script>
function _checkIput_fomartIP(ip)
{
return (ip+256).toString(2).substring(1); //格式化输出(补零)
}
function validateMask(MaskStr)
{
var IPArray = MaskStr.split(".");
var ip1 = parseInt(IPArray[0]);
var ip2 = parseInt(IPArray[1]);
var ip3 = parseInt(IPArray[2]);
var ip4 = parseInt(IPArray[3]);
if ((ip1 < 0 || ip1 > 255) || (ip2 < 0 || ip2 > 255) || (ip3 < 0 || ip3 > 255) || (ip4 < 0 || ip4 > 255))
{
return false;
}
var ip_binary = _checkIput_fomartIP(ip1) + _checkIput_fomartIP(ip2) + _checkIput_fomartIP(ip3) + _checkIput_fomartIP(ip4);
if(-1 != ip_binary.indexOf("01"))
{
return false;
}
return true;
}
function test()
{
var MaskStr = document.getElementById("mask").value
if(validateMask(MaskStr))
{
var str = "合法!"
}
else
{
var str = "非法!"
}
alert("子网掩码为: "+ MaskStr + " 验证结果:" + str);
}
</script>
</body>
</html>
在实际工作当中,还会有其它方法,比如正则表达式等。
分享到:
相关推荐
子网掩码计算器下载/子网掩码计算器单机版--亲测好用 子网掩码计算器下载/子网掩码计算器单机版--亲测好用 子网掩码计算器下载/子网掩码计算器单机版--亲测好用 子网掩码计算器下载/子网掩码计算器单机版--亲测好用 ...
实现通过ip地址和子网掩码位数计算得出子网段的ip地址范围
- 检查IP地址和子网掩码的正确性,防止网络冲突。 - 确定网络的可用主机数和广播地址。 6. 压缩包中的文件: 提到的文件如"SubNetMaskCalc.exe"、"算子网掩码.exe"、"NetMask.exe"、"子网掩码计算器.exe"和...
### 子网掩码详解及作用 ...通过对子网掩码的理解和应用,网络管理员能够更加灵活地规划和构建网络,同时也能提高网络的稳定性和安全性。随着互联网技术的不断发展,子网掩码的应用也在不断扩展和完善。
子网掩码是网络协议中的一个重要概念,它在IP地址分配和网络划分中起到关键作用。在IPv4系统中,每个IP地址由32位组成,分为网络...利用专门的计算工具,我们可以更高效地进行子网划分,确保网络配置的准确性和有效性。
子网的划分可以通过子网掩码来实现。例如,一个 IP 地址为 172.16.2.160,子网掩码为 255.255.0.0,则可以将其划分为两个子网:172.16.2.0 和 172.16.3.0。 子网掩码的计算 子网掩码的计算可以通过与 IP 地址进行 ...
c语言实现ipv4规则检测,子网掩码在检测时加入特殊的处理方法,检测合法性
4. 验证计算结果:确保新生成的子网掩码与预期的网络结构一致,并验证没有产生无效或冲突的地址。 总的来说,这个“子网掩码计算器合集”对于网络管理员、IT专业人员以及学习网络技术的人来说是一个实用的工具包,...
用C语言实现的一个简单的子网掩码计算程序,先输入网段地址,再输入要分的子网数量,程序以点分二进制输出子网掩码。
此外,子网掩码还用于实现网络的细分,即将较大的网络进一步划分为多个较小的子网。这种划分有助于防止网络拥堵,同时也可以更高效地利用IP地址资源,避免IP地址的浪费。 #### 二、子网掩码的使用原因 子网掩码之...
子网掩码计算器是一款强大的网络计算工具,特别针对IPV4和IPV6两种网络协议进行设计,旨在帮助网络管理员和IT专业人士更有效地管理和规划网络。这款计算器支持31位子网掩码,使得在处理特定网络配置时更加灵活。 在...
子网掩码的全称是“子网网络掩码”,它与IP地址一起工作,帮助我们识别网络部分和主机部分,从而实现网络划分和有效的IP地址管理。 子网掩码的基本形式是一个32位的二进制数,通常与IP地址并列显示,每个位置对应于...
子网掩码计算器 利用子网数来计算。 1.首先,将子网数目从十进制数转化为二进制数; 2.接着,统计得到的二进制数的位数,设为N; 3.最后,先求出此IP地址对应的地址类别的子网掩码。再将求出的子网掩码的主机地址部分...
- NetMask.exe:可能是一个图形界面的应用程序,允许用户输入IP地址和子网掩码,或者反之,进行转换和验证。 - subnet10.exe:可能同样提供类似的子网掩码计算功能,可能专注于10类IP地址的子网划分,或者包含更...
5. **验证IP和子网掩码的正确性**:用户可以输入IP和子网掩码,工具会检查它们是否匹配,并指出可能的错误。 6. **教学与学习辅助**:对于学生或初学者,这个计算器是一个很好的学习工具,可以帮助理解子网掩码的...
4. **验证IP和子网掩码的匹配**:计算器可以检查输入的IP地址和子网掩码是否匹配,确保网络配置的正确性。 5. **CIDR表示法转换**:CIDR(无类别域间路由)是IP地址的一种表示方式,如192.168.1.0/24。子网掩码...
"IP地址与子网掩码的学习心得" 在计算机网络中,IP地址和子网掩码是两个非常重要的概念,了解它们之间的关系是非常必要的。本文将从IP地址和子网掩码的学习心得开始,对IP地址和子网掩码的概念进行详细的解释。 ...
在IT领域,子网掩码是网络管理员和程序员在处理IP网络时不可或缺的工具。...开发者通过编写代码实现了IP地址与子网掩码的逻辑运算,并以直观的方式呈现结果,对学习网络和C#编程都有很好的教育意义。