当前位置: 首页 > news >正文

扫描IP段内的使用的IP

扫描IP段内的使用的IP

方法一:命令行

命令行进入

for /L %i IN (1,1,254) DO ping -w 1 -n 1 192.168.3.%i
arp -a

方法二:python

from scapy.all import ARP, Ether, srp
import keyboarddef scan_network(ip_range):# 创建一个ARP请求包arp = ARP(pdst=ip_range)ether = Ether(dst="ff:ff:ff:ff:ff:ff")packet = ether / arp# 发送包并接收响应result = srp(packet, timeout=2, verbose=0)[0]# 解析响应devices = []for sent, received in result:devices.append({'ip': received.psrc, 'mac': received.hwsrc})return devicesif __name__ == "__main__":# 指定要扫描的网段target_ip_range = str(input("请输入IP(格式:192.168.20.0/23):"))# target_ip_range = "192.168.20.0/23"active_devices = scan_network(target_ip_range)print("Active devices in the network:")for device in active_devices:print(f"IP: {device['ip']}, MAC: {device['mac']}")print("按空格键退出")# 检查是否有按键被按下while True:if keyboard.is_pressed('space'):print("Exiting...")break

可以用pyinstaller打包成exe来处理,这个比方法一会快一点。
还有优化空间,因为目前是单线程来的

http://www.lryc.cn/news/497892.html

相关文章:

  • 【专题】虚拟存储器
  • Python之爬虫入门--示例(2)
  • 5G CPE终端功能及性能评测(四)
  • 人工智能驱动的骗局会模仿熟悉的声音
  • 电子病历静态数据脱敏路径探索
  • 混合云策略在安全领域受到青睐
  • Echarts使用平面方法绘制三维立体柱状图表
  • java-判断语句
  • 11.14【JAVA EXP3】【DEBUG】
  • UE5 和 UE4 中常用的控制台命令总结
  • MR30分布式IO模块赋能喷水织机
  • C++中的封装性
  • PyTorch 深度学习框架简介:灵活、高效的 AI 开发工具
  • leetcode-22.括号生成
  • devops-Dockerfile+Jenkinsfile方式部署Java前后端应用
  • 【Apache Paimon】-- 4 -- Flink 消费 kafka 数据,然后写入 paimon
  • 【成功解决】:VS2019(Visual Studio 2019)遇到E2870问题:此配置中不支持 128 位浮点类型
  • 什么是TCP的三次握手?
  • SQL教程(2):SQL基础语法及用途
  • 在Ubuntu22.04 jammy下用qemu模型riscv32环境装鸿蒙(待续)
  • C++:基本-union是没有构造函数和析构函数的
  • 报错 JSON.parse: expected property name or ‘}‘,JSON数据中对象的key值不为字符串
  • LeetCode 热题 100_旋转图像(20_48_中等_C++)(原地旋转;翻转)
  • mysql查询所有用户及删除用户
  • Vue 鼠标滚轮缩放图片的实现
  • 全景图 与 6面图转换
  • 深入浅出:PHP 文件操作
  • 116. UE5 GAS RPG 实现击杀掉落战利品功能
  • 【批处理脚本】更改Windows系统中的 hosts 解析文件
  • fastDFS