以下脚本不做IP格式的判断,只判断两个IP是否在同一网段。

例子, 判断两个IP是否在同一网段。

<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">
<HTML>
  
  <HEAD>
    < >
      IP段信息检测_www.manongjc.com
    </ >
    <  language=\" \" type=\"text/ \">
      function checkSameNetMask(value1, value2, netmask) {
        var ip1 = new Array();
        var ip2 = new Array();
        var nm = new Array();
        ip1 = value1.split(\".\");
        ip2 = value2.split(\".\");
        nm = netmask.split(\".\");
        var ip1_2s = \"\";
        var ip2_2s = \"\";
        var inm2s = \"\";
        var index = 0;
        for (index = 0; index < 4; index++) {
          var ip_1 = new Array();
          var ip_2 = new Array();
          var n_m = new Array();
          ip_1 = parseInt(ip1[index]).toString(2);
          ip_2 = parseInt(ip2[index]).toString(2);
          n_m = parseInt(nm[index]).toString(2);
          var tindex;
          for (tindex = 0; tindex < (8 - ip_1.length); tindex++) {
            ip1_2s += \"0\";
          }
          ip1_2s += ip_1;
          for (tindex = 0; tindex < (8 - ip_2.length); tindex++) {
            ip2_2s += \"0\";
          }
          ip2_2s += ip_2;
          for (tindex = 0; tindex < (8 - n_m.length); tindex++) {
            inm2s += \"0\";
          }
          inm2s += n_m;
        }
        var len = inm2s.length;
        var ip_12 = new Array();
        var ip_22 = new Array();
        var n_m_2 = new Array();
        ip_12 = ip1_2s.split(\"\");
        ip_22 = ip2_2s.split(\"\");
        n_m_2 = inm2s.split(\"\");
        for (index = 0; index < len; index++) {
          if (n_m_2[index] == \"1\") {
            if (ip_12[index] != ip_22[index]) {
              alert(\"不在同一网段\");
              return false;;
            }
          }
        }
        alert(\"在同一网段\");
        return true;
      }
    </ >
  </HEAD>
  
  <BODY>
    <input name=\"Ip1\" id=\"Ip1\" maxlength=15>
    <br>
    <input name=\"Ip2\" id=\"Ip2\" maxlength=15>
    <br>
    <input name=\"netmask\" id=\"netmask\" maxlength=15>
    <input type=\"button\" value=\"计算\"  =\"checkSameNetMask( document.getElementById(\'Ip1\').value , document.getElementById(\'Ip2\').value , document.getElementById(\'netmask\').value ); \">
  </BODY>

</HTML>

需要的码农可以拿去参考。

收藏 打印