当前位置: 首页 > 后端技术 > Node.js

npm酷库:ip、IP地址处理

时间:2023-04-03 16:46:21 Node.js

NPM酷库,每天两分钟,了解一个流行的NPM库。今天我们来学习一个专门用来处理IP地址的库:ip,ip库可以获取本地IP地址,比较,转换,掩码/子网计算等与网络IP相关的操作:constip=require('ip');//获取本地网卡IPip.address();//比较两个IP是否相同ip.isEqual('::1','::0:1');//true//IP表示格式转换ip.toBuffer('127.0.0.1')//Buffer([127,0,0,1])ip.toString(newBuffer([127,0,0,1]))//127.0.0.1ip.toLong('127.0.0.1');//2130706433ip.fromLong(2130706433);//'127.0.0.1'//判断是否为内网IPip.isPrivate('127.0.0.1')//true//判断IP版本ip.isV4Format('127.0.0.1');//真ip.isV6Format('::ffff:127.0.0.1');//true//掩码计算ip.fromPrefixLen(24)//255.255.255.0ip.mask('192.168.1.134','255.255.255.0')//192.168.1.0ip.cidr('192.168.1.134/26')//192.168.1.128ip.not('255.255.255.0')//0.0.0.255ip.or('192.168.1.134','0.0.0.255')//192.168.1.255//子网计算ip.subnet('192.168.1.134','255.255.255.192');//{networkAddress:'192.168.1.128',//firstAddress:'192.168.1.129',//lastAddress:'192.168.1.190',//broadcastAddress:'192.168.1.191',//subnetMask:'255.255.255.192',//subnetMaskLength:26,//numHosts:62,//length:64,//contains:function(addr){...}}//子网范围判断ip.cidrSubnet('192.168.1.134/26').contains('192.168.1.190')//true参考https://github.com/indutny/no...