首页 > 代码库 > JavaScript遍历IP段内所有IP

JavaScript遍历IP段内所有IP

思路:将两个IP转换为数字进行比较,小的那个慢慢加一,直到变成大的那个IP所转换的数字,将这其中的数字再转换为IP地址即为IP段内所有的IP。

 1 //IP转数字
 2 function ip2int(ip)
 3 {
 4     var num = 0;
 5     ip = ip.split(".");
 6     num = Number(ip[0]) * 256 * 256 * 256 + Number(ip[1]) * 256 * 256 + Number(ip[2]) * 256 + Number(ip[3]);
 7     num = num >>> 0;
 8     return num;
 9 }
10 
11 //数字转IP
12 function int2iP(num)
13 {
14     var str;
15     var tt = new Array();
16     tt[0] = (num >>> 24) >>> 0;
17     tt[1] = ((num << 8) >>> 24) >>> 0;
18     tt[2] = (num << 16) >>> 24;
19     tt[3] = (num << 24) >>> 24;
20     str = String(tt[0]) + "." + String(tt[1]) + "." + String(tt[2]) + "." + String(tt[3]);
21     return str;
22 }
23 
24 //列出IP段内的IP
25 function listIP(ip1,ip2){
26     var ipInt1 = ip2int(ip1);
27     var ipInt2 = ip2int(ip2);
28     for(var i = ipInt1;i <= ipInt2;i++){
29         document.write(int2iP(i) + ‘<br/>‘);
31     }
32 }
33 
34 listIP(‘158.66.23.0‘,‘158.66.23.255‘);

JavaScript遍历IP段内所有IP

JavaScript遍历IP段内所有IP