网络划分子网js算法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了网络划分子网js算法相关的知识,希望对你有一定的参考价值。

已知一各网络,要求划分为相同大小的子网。

比如已知network:192.168.0.0/23子网,根据要划分的子网块b大小,列出所有子网网络地址:

var network = "192.168.0.0";

var cidr = 23;

var b = 4;//子网块大小此处为变动参数,根据划分的大小

var subnetAmount = Math.pow(2,(32-cidr))/b;//计算子网数量

var p = network.split(".");


for(i=0;i<subnetAmount;i++){

    A = (Number(p[0]) + Math.floor((subnetBlockSize*i)/16777216)%256)%256;

    B = (Number(p[1]) + Math.floor((subnetBlockSize*i)/65536)%256)%256;

    C = (Number(p[2]) + (Math.floor((subnetBlockSize*i)/256)%256)%256)%256;

    D = (Number(p[3]) + (subnetBlockSize*i)%256)%256;

     alert(A+"."+B+"."+C+"."+D);

}


以上是关于网络划分子网js算法的主要内容,如果未能解决你的问题,请参考以下文章

网络层-第三节3:子网划分与子网掩码和无分类域间路由选择CIDR

网络基础之子网划分

子网划分的概念,子网掩码

python全栈学习笔记网络基础之子网划分

第四章 划分子网

子网划分