扫描网络中开放端口的最快方法
Fastest Way to scan for Open port in network
我如何扫描给定的端口号(8000)网络中的说明?
我使用通用插座TCP连接尝试了它。尽管它有效,但如果Alive IP数量超过15,则需要花费大量时间。目标是从给定端口打开的网络中获取IP列表。
这就是我从网络中获取IP列表的方式
std::vector<std::string> resultIPList;
FILE* pipe = popen("arp-scan --localnet","r");
if(!pipe)
{
fprintf(stderr,"Unable to open pipe");
return resultIPList;
}
char buffer[128];
while(!feof(pipe))
{
if(fgets(buffer, 128, pipe) != NULL)
{
stringBuffer += buffer;
}
}
pclose(pipe);
现在,我的StringBuffer具有IP列表。我写了一个解析器,该解析器从字符串中提取IP,并给我这些IP的向量。现在,我将对给定的端口进行一个一个一个一个一个一个一个一个一个核对的功能。
struct sockaddr_in client;
int sock;
client.sin_family = AF_INET;
client.sin_port = htons(portNo);
client.sin_addr.s_addr = inet_addr( Ip.c_str() );
sock = (int) socket(AF_INET, SOCK_STREAM, 0);
return (::connect(sock, (struct sockaddr *) &client,sizeof(client)) == 0);
您正在使用错误的程序。只需读取Netstat的输出即可。
使用nmap。
或在循环中,使用非阻止插座调用"连接"到每个端口。保存所有收集的文件描述符,检查他们是否使用" select()"连接;
相关文章:
- 为不同配置设置MSVC_RUNTIME_LIBRARY的正确方法是什么
- 通过方法访问结构
- 最小硬币更换问题(自上而下方法)
- 将传入的网络"char*"数据转换为"uint8_t"并返回的安全方法是什么?
- 部署在张量流中训练的神经网络来火炬C++的最佳方法是什么?
- 是否有一种标准化的方法通过TCP/IP网络发送JPG图像
- 我不确定如何引用此神经网络训练方法中的权重
- 扫描网络中开放端口的最快方法
- 从 mfc 应用程序点击网络服务,并希望从网络服务登录方法读取用户代码返回
- 网络tcp套接字应用程序重试方法
- 对于tanh激活函数神经网络,对负/非数值数据进行归一化的最佳方法是什么
- ping 本地网络地址的最快方法
- 运行网络测试的方法
- 读取网络数据的最快方法
- 在网络应用程序中缓冲数据的OOP方法
- 保护 Cap'n Proto RPC 网络流量的好方法是什么?
- 在c/c++中实现神经网络的方法是什么?
- 在Windows上获得cpu使用率和网络吞吐量的最有效和最基本的方法
- 一种保护通过网络发送的数据的方法
- 是否有一种跨平台的方法可以在C++中获取网络统计信息