Javascript根据CIDR前缀计算IPv6范围
Javascript calculate IPv6 range from CIDR prefix
使用Javascript(没有JQuery)我希望在IPv6 CIDR前缀中获得最小和最大ip。
例如,2001:280::/32
将输出2001:280:0:0:0:0:0:0
和2001:280:ffff:ffff:ffff:ffff:ffff:ffff
。
我该怎么做?提前感谢!
假设你已经安装了Node和NPM:
$ touch index.js
$ npm init
$ npm i --save ip-address
$ vim index.js
var v6 = require('ip-address').v6;
var addr = new v6.Address('2001:280::/32');
console.log(addr.parsedAddress.join(':'));
console.log(addr.endAddress().address);
$ <esc>:wq
$ node index.js
2001:280:0:0:0:0:0:0
2001:0280:ffff:ffff:ffff:ffff:ffff:ffff
似乎没有一个面向浏览器的包,所以我建议使用Browserify (http://browserify.org/)来实现这个工作或 fork项目并将所有内容塞进一个文件中,以便您可以在浏览器中运行它(当然要省略特定于节点的代码)
试试ip6
npm包:https://www.npmjs.com/package/ip6
ip6
有助于规范、缩写、划分子网,生成随机子网/主机,计算IPv6子网的大小范围。
let ip6 = require('ip6');
console.log(ip6.range('2001:280:0:0:0:0:0:0', 32));
{ start: '2001:0280:0000:0000:0000:0000:0000:0000',
end: '2001:0280:ffff:ffff:ffff:ffff:ffff:ffff',
size: 7.922816251426434e+28 }
或者在命令行中:
ip6 -R 2001:280:0:0:0:0:0:0 32
{"start":"2001:0280:0000:0000:0000:0000:0000:0000","end":"2001:0280:ffff:ffff:ffff:ffff:ffff:ffff","size":7.922816251426434e+28}
相关文章:
- 正在全局范围中查找JavaScript函数
- 如何通过数组更新角度子范围
- 如何使用ngrepeat和双向绑定获得指令的隔离范围
- HTML范围:动态设置值属性
- "实例范围”;TypeScript类的getter/setter
- jquery日期选择器年份范围默认值
- Jpgraph:如何手动设置X轴和Y轴的范围
- 在对象数组中查找多个值的d3范围
- 动态加载angularjs并生成控制器和范围
- 如何通过谷歌应用程序脚本从谷歌文档中的位置确定命名范围
- 在Materialize Calendar中设置年份范围
- 在MVVM视图模型中处理应用程序范围的元素
- setInterval游戏循环的范围问题
- AngularJS获取范围中的选定项目
- 从指定范围创建字符数组
- ES6是否引入了一种机制来生成块范围的函数语句(而不是表达式)
- Angularjs无法将单选按钮与嵌套范围内的模型绑定
- ngDialog-弹出窗口未更新范围变量
- 如何使用D3生成特定范围内的随机颜色
- Javascript根据CIDR前缀计算IPv6范围