局域网设备扫描器

局域网设备扫描器

扫一遍,网段里谁在线、MAC 多少、厂商是谁、哪台是 PLC,一目了然。
11.2 MB · Windows 64 位 · 单文件免安装
下载 局域网设备扫描器(zip,含使用说明)
Windows 64 位 · 单文件免安装 · 免费,无需注册
一个双击就能用的局域网 IP 扫描工具。扫一遍,网段里谁在线、
MAC 是多少、厂商是谁、哪台是 PLC,一目了然。

一、快速上手

  1. 双击 局域网设备扫描器.exe(就这一个文件,免安装,拷到任何电脑都能跑)
  2. 程序自动列出本机所有网卡和网段 —— 双击「本机网卡」页里的一行, 即可把网段填进扫描框
  3. 按「开始扫描」,几秒钟出结果
  4. 需要存档就点「导出 CSV」,Excel 可以直接打开(UTF-8 带 BOM,不乱码)

二、扫描结果怎么读

列说明
IP 地址双击该行可复制 IP;右键有复制菜单
状态在线 / 未响应
时延ICMP 往返毫秒数(设备禁 ping 时为空,不代表异常)
MAC 地址通过 ARP 获得,同网段设备最准
厂商按 MAC 前 3 字节(OUI 前缀)查 IEEE 完整库
主机名NetBIOS 查询所得(Windows 机器基本都能查到)
开放端口工业常用 TCP 端口,如 102(S7comm)、502(Modbus)
推测设备按端口 + 厂商 + 主机名综合推测,仅供参考

典型识别效果:

三、网段可以怎么填

192.168.1.0/24             整个 C 段(自动跳过 .0 和 .255)
192.168.1.1-100            第 1 到第 100 号
192.168.1.1-192.168.2.50   跨段区间
192.168.1.10               单个地址
192.168.1.1,192.168.1.5    逗号分隔多个

一次最多 4096 个地址(/20)。更大的范围请拆开扫。

四、命令行用法(可选)

局域网设备扫描器.exe --list                        只列本机网卡
局域网设备扫描器.exe --range 192.168.1.0/24        扫描并打印结果
局域网设备扫描器.exe --range 192.168.1.0/24 --out 结果.csv
局域网设备扫描器.exe --range 192.168.1.0/24 --no-ports   只要 IP/MAC,更快
局域网设备扫描器.exe --dns        额外做 DNS 反解(网络里没 PTR 记录时会慢,默认不用)
局域网设备扫描器.exe --help       完整帮助

五、性能参考(实测)

范围用时
30 个地址(17 台在线,含端口扫描)3.5 秒
/24 整段 254 个地址(99 台在线,含端口扫描)7.5 秒

六、扫描原理(结果为什么可信)

  1. 发现阶段:对同网段地址,先发一批 UDP 小包"踢"内核, 让 Windows 自己批量发出 ARP 请求,然后读系统 ARP 表。 (实测比逐个调 SendARP 快 40 倍:254 个地址 1.5 秒 vs 一分多钟) 跨网段地址 ARP 出不了网关,自动改用 ping。
  2. 详情阶段:只对已发现的在线设备做—— NetBIOS 查计算机名(UDP 137,250ms 超时)、 TCP 端口探测(0.25 秒超时 × 11 个工业常用端口,内部并发)。
  3. 全程只发查询报文(ARP / ICMP / TCP 连接 / NetBIOS 查询), 不下发任何配置或写入报文,不会改动设备状态。

七、厂商识别与补充

程序内置了 IEEE 完整 OUI 库(约 3.5 万条前缀),绝大多数设备都能认出厂商。

查不到会显示 未知(XX:XX:XX),常见原因:

想补充自己现场的厂商名,两种办法:

  1. exe 同目录建 oui_extra.txt,一行一条(支持 # 注释): ```

格式:前缀,厂商名

00:1B:1B,西门子
00-80-F4 施耐德
```

  1. 点界面上的「导入 OUI 库」按钮,选一份 IEEE 的 oui.csv (standards-oui.ieee.org 提供),会自动缓存到 exe 同目录,长期生效。

优先级:用户文件 > 内置中文标注表 > IEEE 完整库。

八、常见问题

Q:扫出来比我预计的少?
① 网段填错了(设备在 192.168.0.x,你扫的是 192.168.1.x)
② 网卡选错了(本机多网卡时,先看「本机网卡」页哪张是"已连接")
③ 跨网段的设备必须能 ping 通才会被列出(ARP 出不了网关)
④ 超时太短,可把超时调到 1500ms 再试

Q:有的设备只有 IP,其他都是"—"?
它在线但不回应主机名/端口探测。PLC、仪表、摄像头常有这种行为,
属于正常防护,不影响"它在这个网段"这个事实。

Q:同一张网卡出现好几行?
一张网卡配了多个网段 IP 时就是这样的(每个 IP 一行),双击任一行即可切换。

Q:能不能扫无线网络?
能,工具按网卡扫,不区分有线无线。手机用"随机 MAC"时厂商会显示未知。

Q:会有安全软件报警吗?
批量 ping / 端口探测可能触发某些安全软件的提示,放行即可——
工具是纯查询行为,无可执行写入、无配置下发。

九、合规提醒

请只扫描你自己拥有或已获得明确授权的网络。
未经授权扫描他人网络可能违反《网络安全法》等相关法律法规。

十、文件清单

文件说明
dist\局域网设备扫描器.exe成品,单文件免安装,双击即用
lanscan.py完整源码(GUI + 命令行 + 扫描核心)
test_lanscan.py自动化校验(124 项,含与标准库交叉对照)
nbstat_sample.binNetBIOS 解析的黄金样本(真实抓包)
make_icon.py图标生成脚本(可复用)
app.ico程序图标
oui_data.gz打包进 exe 的 IEEE OUI 完整库
使用说明.md本文件

十一、重新打包(如果要改源码)

# 用带 tkinter 的 Python 环境
pyinstaller --noconfirm --onefile --windowed --name LanScanner --icon app.ico --add-data "oui_data.gz;." lanscan.py

打包前记得分批清理 build 目录(每批 ≤45 个文件),
不要加 --clean 参数(会触发批量删除保护)。


小野 · 2026-09-14 · v1.0

用着有问题,或者有想要的功能?
直接发邮件到 26985331@qq.com,说明一下场景和现象就行。 工具会按反馈持续更新,更新记录会写在这一页。
Modbus 调试助手浮点数位模式转换器BOM 汇总工具表格整理工具