高并发 多线程批量ping工具 nbping简介和使用
nbping 简介
nbping是为解决局域网大批量IP实例或主机探活,采用go协程并发处理,可以自定义并发的协程数量和输出结果.效率远高于现有的批量ping工具.
nbping具备如下特性
- 支持结果导出到文件
- 支持高并发,默认开启20个协程进行处理
- 支持指定文件批量读取探活IP
部署方式
nbping可以部署在本地和云平台上,支持windows、linux系统:
- 在linux系统中部署
git clone https://github.com/feiyu563/nbping.git
cd nbping/cmd
./nbping -i ip.txt -o out.csv #如需后台运行请执行nohup ./nbping -i ip.txt -o out.csv &
- 在windows系统中运行
git clone https://github.com/feiyu563/nbping.git
#打开windows cmd窗口
cd nbping/cmd
nbping.exe -i ip.txt -o out.csv
配置说明
nbping 支持以下参数:
-d int
if open debug,是否开启debug模式,开启则显示每条探活记录,默认不开启,支持参数0,1,此参数会影响性能,建议大批量时候不开启
-h
for help 显示帮助信息
-i string
ip file path (default "ip.txt"),指定IP文件存放的路径(必须参数)
-n int
number of thread for ping (default 20),指定同时开启的协程数量,默认20,如果机器性能很高,则可以开启更多数量.
-o string
out put file path (default "out.csv"),指定输出的文件路径(必须参数)
-r int
if open debug (default 2),失败重试次数.默认为两次重试
效果图
项目源码
FOR HELP
----
Email: 244217140@qq.com

高并发 多线程批量ping工具 nbping简介和使用的更多相关文章
- java 并发多线程显式锁概念简介 什么是显式锁 多线程下篇(一)
目前对于同步,仅仅介绍了一个关键字synchronized,可以用于保证线程同步的原子性.可见性.有序性 对于synchronized关键字,对于静态方法默认是以该类的class对象作为锁,对于实例方 ...
- 批量ping工具fping
批量ping工具fping ping是各个系统自带的基于ICMP协议的主机探测工具.但该工具一次只能检测一个主机,不满足渗透测试批量探测的需要.Kali Linux提供一款批量探测工具fping. ...
- 批量装机工具cobbler简介及其安装使用
前言:如果仅有几台机器的话,使用U盘或者光盘装起来还不是很费事,一旦数量到了一定程度,使用手动方法就是一件费时费力的事,PXE+kistart就可以解决这个问题,降低难度,加快速度,而cobbler更 ...
- C++ HttpServlet 高并发多线程 HTTP 服务器(转)
from:http://www.oschina.net/code/snippet_568966_43193 C/C++ 程序虽然执行效率高,但程序员在开发 WEB 应用时却因为没有好的 WEB 开 ...
- Java高并发-多线程基础
一.什么是线程 线程是进程内的执行单元. 二.线程的基本操作 2.1 状态与操作 2.2 新建线程 Thread t1 = new Thread(new CreateThread()); t1.sta ...
- java-spring基于redis单机版(redisTemplate)实现的分布式锁+redis消息队列,可用于秒杀,定时器,高并发,抢购
此教程不涉及整合spring整合redis,可另行查阅资料教程. 代码: RedisLock package com.cashloan.analytics.utils; import org.slf4 ...
- java多线程高并发
旭日Follow_24 的CSDN 博客 ,全文地址请点击: https://blog.csdn.net/xuri24/article/details/81293321 “高并发和多线程”总是被一起提 ...
- python高并发和多线程的关系
“高并发和多线程”总是被一起提起,给人感觉两者好像相等,实则 高并发 ≠ 多线程 多线程是完成任务的一种方法,高并发是系统运行的一种状态,通过多线程有助于系统承受高并发状态的实现. 高并发是一种系 ...
- php-fpm和cgi,并发响应的理解以及高并发和多线程的关系
首先搞清楚php-fpm与cgi的关系 cgi cgi是一个web server与cgi程序(这里可以理解为是php解释器)之间进行数据传输的协议,保证了传递的是标准数据. php-cgi php-c ...
随机推荐
- A1130 | 中缀表达式、查找根节点
代码: #include <stdio.h> #include <memory.h> #include <math.h> #include <string&g ...
- cgdsR 下载TCGA数据
TCGA 的数据可以在5个组织机构获取,它们都提供了类似的接口来供用户下载数据. cgdsR 包是cBioPortal 提供的R包 http://www.cbioportal.org/rmatlab ...
- JavaScript的filter方法
var ages = [32, 33, 16, 40]; function checkAdult(age) { return age >= 18; } function myFunction() ...
- spatiaLite
- LZW
LZW https://www2.cs.duke.edu/csed/curious/compression/lzw.html https://www.golangprograms.com/golang ...
- gcc编译链接std::__cxx11::string和std::string的问题
今天公司的小伙伴遇到一个问题,这里做一个记录. 问题是这样的,他编译了公司的基础库,然后在程序中链接的时候遇到点问题,报错找不到定义. 用到的函数声明大概是这样的: void function(con ...
- Java: 线程池(ThreadPoolExecutor)中的参数说明
最近在看<阿里巴巴Android开发手册>,里面有这样几句话: [强制]新建线程时,必须通过线程池提供(AsyncTask 或者ThreadPoolExecutor或者其他形式自定义的线程 ...
- 关于在php中变量少写了一个$和页面不断转圈的问题排查和vim的自动补全方式
php中的所有变量都是页面级的, 即任何一个页面, 最多 都只能在一个文件 : 当前页面内使用, 不存在跨 文件/ 跨页面的 作用域的变量! 因此, 即使是 $GLOBALS 这个变量, 虽然叫全局 ...
- MySQL 设计与开发规范2
目录 1. 规范背景与目的 2. 设计规范 2.1. 数据库设计 2.1.1. 库名 2.1.2. 表结构 2.1.3. 列数据类型优化 2.1.4. 索引设计 2.1.5. 分库分表.分区表 2.1 ...
- eclipse中自定义注释模板
eclipse中自定义注释模板 2018年10月09日 10:51:27 lm_y 阅读数 857更多 分类专栏: java Java 编辑注释模板的方法:Window->Preferenc ...