核心用法
network-device-scanner 是一款局域网设备发现工具,支持 Linux、macOS 和 Windows 平台。用户可通过自然语言触发(如"查一下周边设备"),执行后返回格式化的 Markdown 表格,包含 IP 地址、MAC 地址、开放端口及自动识别的设备类型。
工具采用多级发现策略:优先读取系统 ARP 缓存(Linux),其次调用系统 arp 命令,最后通过 ICMP 扫描(支持 fping、nmap 或基础 ping)遍历网段。发现设备后,使用 TCP 端口扫描验证活跃状态,并检测 15 个常用端口(21/22/23/53/80/135/139/443/445/554/8000/8080/8443/9000/37777)。
设备识别基于 MAC OUI 前缀与端口指纹:小米(e4-68-a3、40-31-3c)、Windows(135/139/445)、Linux 服务器(22/80)、通用 Web 设备等。
显著优点
- 零配置开箱即用:无需复杂参数,一句话触发执行
- 跨平台兼容:Python 3.7+ 脚本覆盖主流操作系统
- 智能设备识别:结合 MAC 前缀与端口服务,自动标注设备类型
- 格式化输出:标准 Markdown 表格,便于后续处理或报告生成
潜在局限
- 依赖网络环境:ARP 扫描在非本地网段、VLAN 隔离或 ARP 欺骗环境下准确性下降
- 权限要求:部分扫描模式需 root/Administrator 权限(原始套接字、ICMP)
- 识别盲区:小众设备或自定义 MAC 前缀无法匹配内置规则
- 速率限制:大规模网段扫描可能触发 IDS/IPS 告警或被限速
适合人群
- 家庭用户管理自有路由器、NAS、IoT 设备
- 小型办公网络管理员进行资产盘点
- 开发者调试局域网服务发现
常规风险
- 误报风险:休眠设备可能被标记为离线,防火墙拦截导致端口显示为关闭
- 隐私合规:扫描公共网络或非授权网络可能违反当地法规
- 安全风险:开放端口信息暴露可能辅助攻击者进行服务枚举
- 系统稳定性:高频端口扫描对低性能 IoT 设备可能造成网络拥塞
> ⚠️ 声明强调:工具明确限定"仅用于管理用户自有网络",需在合法授权范围内使用。