nodejs批量ping
来源:互联网 发布:詹姆斯数据历史排名 编辑:程序博客网 时间:2024/04/19 19:31
在一批大量的ip地址之中查找哪个地址是有效的并且应答的时间最快
nodejs中可以使用net-ping模块
ip地址所在的json文件格式如下,只粘贴部分信息,文件名:gui-config.json
{ "configs" : [ { "remarks" : "德国", "server" : "172.104.155.76", "method" : "rc4-md5", "obfs" : "plain", "obfsparam" : "", "remarks_base64" : "5b635Zu9", "tcp_over_udp" : false, "udp_over_tcp" : false, "protocol" : "origin", "obfs_udp" : false, "enable" : true, "id" : "12-AC-19-DF-D8-3D-2F-F3-8C-52-34-C3-8B-12-B6-F5" }, { "remarks" : "俄罗斯", "server" : "92.38.129.13", "method" : "rc4-md5", "obfs" : "plain", "obfsparam" : "", "remarks_base64" : "5L-E572X5pav", "tcp_over_udp" : false, "udp_over_tcp" : false, "protocol" : "origin", "obfs_udp" : false, "enable" : true, "id" : "0F-4B-E0-06-6E-69-75-D1-E4-68-F2-CD-A2-B3-04-06" } ],}
nodejs代码
const ping = require ("net-ping");const session = ping.createSession();const fs = require('fs');function pingHost(host) { session.pingHost(host, (error, target, sent, rcvd) => { if (error) { console.log(`${target} failed:${error.toString()}`); } else { const spent = rcvd.getTime() - sent.getTime(); console.log(`${target} ok, spent: ${spent}ms`); } })}const guiconfig = 'C:/Users/tujiawei/Downloads/pgfastss/gui-config.json';const content = fs.readFileSync(guiconfig, 'utf8');const contentObj = JSON.parse(content);contentObj.configs.forEach((item) => { pingHost(item.server); })
需要注意的是,我的机器运行这个js文件在windows下需要管理员权限
所以,用管理员权限运行cmd(打开命令行提示工具),cd到指定目录执行
node ping.js
结果如下:
60.248.112.164 ok, spent: 44ms175.98.163.226 ok, spent: 63ms175.98.163.216 ok, spent: 67ms92.38.129.13 ok, spent: 72ms47.88.224.254 ok, spent: 75ms103.76.104.227 ok, spent: 165ms45.58.54.190 ok, spent: 166ms172.104.155.76 failed:RequestTimedOutError: Request timed out92.38.128.22 failed:RequestTimedOutError: Request timed out144.217.85.91 failed:RequestTimedOutError: Request timed out103.95.207.238 failed:RequestTimedOutError: Request timed out172.104.93.179 failed:RequestTimedOutError: Request timed out172.104.124.59 failed:RequestTimedOutError: Request timed out172.104.109.25 failed:RequestTimedOutError: Request timed out172.104.98.116 failed:RequestTimedOutError: Request timed out103.29.70.32 failed:RequestTimedOutError: Request timed out172.104.110.187 failed:RequestTimedOutError: Request timed out61.244.217.201 failed:RequestTimedOutError: Request timed out47.88.227.73 failed:RequestTimedOutError: Request timed out47.88.231.100 failed:RequestTimedOutError: Request timed out47.88.225.110 failed:RequestTimedOutError: Request timed out
阅读全文
0 0
- nodejs批量ping
- 批量ping工具
- 批量Ping工具
- 批量ping脚本
- 批量ping脚本
- 批量ping ip地址
- sh脚本:批量ping
- linux 批量ping检测
- 批量ping工具fping
- 批量ping脚本
- NodeJs批量复制文件
- nodejs 批量修改、删除
- perl 批量监控主机ping
- 批量ping域名获取ip
- linux shell 批量mac ping脚本
- shell 编写脚本批量ping ip
- 命令行批量修改IP并ping测试
- linux使用ping批量测试脚本
- 打劫房屋 III-LintCode
- Mybatis(Mapper映射开发)
- 错过等半年 | 年薪30万都要学的Linux云计算课程,即将满80人班
- koa2给所有页面渲染全局数据
- 常用的git命令(2):远程仓库、分支和标签
- nodejs批量ping
- Java String源码之类声明与构造函数(二)
- 19个JavaScript常用的简写技术
- mongodb模糊匹配正则转义
- Prime Number
- 分享经济实惠
- To xor or not to xor SGU
- UITableView的简单使用
- 【复习记录】最小/大生成树