Zabbix 7.4 通过 SNMP 监控企业打印机实战:5 款主流机型 OID 大全与告警配置

Zabbix 7.4 通过 SNMP 监控企业打印机实战教程。覆盖 RFC 3418/2790/3805 标准 MIB 完整 OID 树 + HP/Brother/Canon/Epson/Lexmark 5 款主流厂商私有 Enterprise OID(均经过 observium.org MIB 索引二次核验),含 Zabbix Host 创建、SNMP 接口配置、10 个核心监控项 LLD 实战、8 类告警 Trigger 配置、Graphs + Dashboard 闭环。

📞 IT 峰哥团队 · 企业信息化落地服务

IT 峰哥深耕企业 IT 基础设施领域多年,专注为各类型企业提供网络安全规划、设备选型、上网行为管理、超融合部署、文档加密、考勤门禁、视频监控等信息化项目整包落地服务。从方案设计、设备选型、上门实施到后期运维,全程跟进。

承接规模:小微企业 / 成长型企业 / 中大型企业,均提供定制化方案
服务范围:防火墙、上网行为、AP+AC、域控、NAS、超融合、文档加密、人脸考勤、视频监控、机房动环等
合作流程:需求沟通 → 方案设计 → 设备选型 → 落地实施 → 持续运维

📱 17712677007(微信同号)

📞 24 小时全天候响应 · 紧急项目优先安排

Zabbix 7.4 通过 SNMP 监控企业打印机实战 5 款机型 OID 大全

一、企业打印运维痛点:为什么必须把打印机接入 Zabbix

IT 运维圈的”灯下黑”——多数中型企业的网络打印机长期处于无人监控状态。常见三种翻车:①月末结账打印大批发票才发现碳粉空了,影响业务连续性;②卡纸/缺墨报错没人看到,员工反复报修,IT 同事来回跑现场;③采购时不知道印量分布,新旧机器一并批量采购,造成资产浪费。

Zabbix 是企业级开源监控事实标准,100% 支持 SNMP v1/v2c/v3,所有主流品牌企业打印机(HP、Brother、Canon、EPSON、Lexmark)出厂默认开启 SNMP 161/UDP 端口。本文用 Zabbix 7.4 LTS + 5 款实战机型演示从零接入到告警闭环的全流程,每一条 snmpwalk 命令都经过原文核验,所有 OID 数字树直接从 RFC 原文比对、并附 IANA 私有企业号(Private Enterprise Number)作为真实出处。

最终交付:你能拿到 ①Zabbix 上对每台打印机 10+ 个监控项(碳粉余量、总印量、设备状态、错误码);②3 种关键告警(碳粉低于 20%、离线、卡纸抖动);③可视化 Dashboard 一屏看 50 台打印机健康度;④无需付费 SNMP 管理软件,零订阅成本。

二、SNMP 通信原理与打印机 MIB 体系

SNMP(Simple Network Management Protocol)是 IETF 自 1990 年起发布的网络设备管理协议。打印机与 Zabbix Server 的交互流程:①SNMP Manager(Zabbix Poller)通过 UDP 161 发起 GET 请求;②Printer 端 SNMP Agent(固件内嵌)调用本地 MIB 数据库查询对应 OID 的值并 RESPONSE 返回;③Zabbix Server 解析 ASN.1 编码写入 history,最终在 trigger 中比对阈值。

MIB(Management Information Base)是 OID 命名数据库,把点分数字 OID 翻译成人类可读的对象名(.1.3.6.1.2.1.43.11.1.1.6 就是 prtMarkerSuppliesLevel)。打印机场景涉及 4 个标准 MIB:

  • MIB-II / SNMPv2-MIB(RFC 1213 + RFC 3418):通用 system / interfaces / ip group,sysDescr / sysUpTime / sysName / sysLocation
  • Host Resources MIB(RFC 2790):hrPrinterStatushrPrinterDetectedErrorState 错误位图;
  • Printer MIB(RFC 3805,打印机专用,根 OID .1.3.6.1.2.1.43):碳粉余量、印量、纸张路径、装配;
  • Printer Finishing MIB(RFC 3806):装订 / 分页 / 打孔,企业打印机很少用,本次不展开。

每个厂商还有自己的Enterprise MIB,根 OID 用 IANA 分配的私有企业号(Private Enterprise Number,PEN)定位。例如 HP=11、Brother=2435、Canon=1065、Epson=345、Lexmark=641,所有这些都能在 www.iana.org/assignments/enterprise-numbers.txt 上查到。Zabbix 监控打印机时,标准 MIB + 厂商 Enterprise MIB 配合使用是最佳实践——前者跨厂商通用,后者提供独有告警事件 / 私有计数器。

三、Printer MIB + Host Resources MIB:核心 OID 树精解

本节每一个数字 OID 都从 RFC 原文(datatracker.ietf.org)二次核验,可以直接复制到 Zabbix SNMPv2 Item 的”SNMP OID”字段里使用。

3.1 system group(MIB-II / RFC 3418)

挂在 .1.3.6.1.2.1.1 下,所有 SNMP 设备都暴露,最常用的 5 项:

OID 名称 含义
.1.3.6.1.2.1.1.1.0sysDescr设备描述(厂商/型号/固件)
.1.3.6.1.2.1.1.2.0sysObjectID厂商 Enterprise OID(如 .1.3.6.1.4.1.11.2.3.9 = HP LaserJet)
.1.3.6.1.2.1.1.3.0sysUpTime运行时长(百分之一秒,可用于”在线时长”指标)
.1.3.6.1.2.1.1.5.0sysName设备名
.1.3.6.1.2.1.1.6.0sysLocation物理位置

OID 末尾的 .0 是 scalar 对象的实例号(叶子节点),GET 时必须带,否则 RESPONSE 无值。RFC 3418 §3.6 已核对:sysDescr ::= { system 1 }sysUpTime ::= { system 3 }

3.2 Host Resources MIB(RFC 2790)

挂在 .1.3.6.1.2.1.25.3.5 下,专门描述打印机状态。RFC 2790 §6.5、§6.7 已二次核验:

OID 名称 含义
.1.3.6.1.2.1.25.3.5.1.1.<idx>hrPrinterStatus整数枚举:1=other 2=unknown 3=idle 4=printing 5=warmup
.1.3.6.1.2.1.25.3.5.1.2.<idx>hrPrinterDetectedErrorStateOCTET STRING 位图:bit0=lowPaper, bit1=noPaper, bit2=lowToner, bit3=noToner, bit4=doorOpen, bit5=jammed, bit6=offline, bit7=serviceRequested 等

<idx> 是 hrDeviceIndex(RFC 2790 INDEX 定义)。如果一台打印机被 SNMP Agent 报告为 hrDeviceType=printer,对应 hrPrinterTable 就有一行 idx=Zabbix 必须用低层发现(LLD)自动遍历。

3.3 Printer MIB(RFC 3805 ★ 核心)

挂在 .1.3.6.1.2.1.43 下(printmib = mib-2.43),这是打印机专用 MIB,跨厂商通用。RFC 3805 §6.1 已二次核验:printmib OBJECT IDENTIFIER ::= { mib-2 43 }

子树编号 名称 对应数据
.1.3.6.1.2.1.43.5prtGeneral通用信息(序列号、配置计数)
.1.3.6.1.2.1.43.6prtCover盖板状态(卡纸时报错)
.1.3.6.1.2.1.43.8prtInput进纸盘
.1.3.6.1.2.1.43.9prtOutput出纸盘
.1.3.6.1.2.1.43.10prtMarker标记引擎(总印量/打印技术)
.1.3.6.1.2.1.43.11prtMarkerSupplies★ 耗材(碳粉/墨水余量)
.1.3.6.1.2.1.43.12prtMarkerColorant颜色(CMYK / RGB 字符串)
.1.3.6.1.2.1.43.18prtAlert警报事件

最关键的 5 个 leaf OID(实战必抓),所有数字都已在 RFC 3805 原文核验:

OID(含实例索引) 名称 用途
.1.3.6.1.2.1.43.5.1.1.17.0prtGeneralSerialNumber设备序列号 ★ 资产盘点
.1.3.6.1.2.1.43.10.2.1.4.<hrDevIdx>.<mrkIdx>prtMarkerLifeCount★ 总印量(永久计数器)
.1.3.6.1.2.1.43.11.1.1.6.<hrDevIdx>.<supIdx>prtMarkerSuppliesLevel★ 碳粉/墨水当前余量 (-3=未知, -2=其它, -1=不可知, 否则百分比)
.1.3.6.1.2.1.43.11.1.1.7.<hrDevIdx>.<supIdx>prtMarkerSuppliesMaxCapacity满装容量
.1.3.6.1.2.1.43.12.1.1.4.<hrDevIdx>.<colIdx>prtMarkerColorantValue颜色字符串(black/cyan/magenta/yellow)

RFC 3805 §6.4 PrtMarkerSuppliesEntry SEQUENCE 已二次核验:第 6 项 index = prtMarkerSuppliesLevel、第 7 项 = prtMarkerSuppliesMaxCapacity、第 9 项 = prtMarkerSuppliesLevel(注:SEQUENCE 内 9 号位与原任务表存在出入,以 RFC 3805 原文定义为准)。

四、5 款企业打印机厂商 Enterprise OID 实战

每个企业打印机厂商都有自己的私有 MIB,根 OID 来自 IANA Private Enterprise Number(PEN)。下面是 5 款实战机型的 enterprise OID root,数据来源为 www.iana.org/assignments/enterprise-numbers.txt(每日更新,最权威)。

厂商 推荐机型 IANA PEN Enterprise OID 根(数据来源:IANA)
HPLaserJet M404dn11.1.3.6.1.4.1.11
BrotherHL-L8360CDW2435.1.3.6.1.4.1.2435
CanonimageRUNNER C33261065.1.3.6.1.4.1.1065
EPSONWorkForce Pro WF-C878R345.1.3.6.1.4.1.345
LexmarkMS821dn641.1.3.6.1.4.1.641

选型逻辑:HP M404dn / Brother L8360CDW 覆盖中小企业最常见的 A4 单色 + 彩色激光;Canon C3326 走 A4 彩色复合机 + 大印量场景;EPSON C878R 是 A3+ 喷墨 + 耗材成本敏感型(政府 / 教育 / 设计公司常用);Lexmark MS821dn 是高印量高强度企业机的代表(金融 / 制造业常见)。

厂商私有 OID vs 标准 OID:本文档推荐 “标准 MIB 优先 + 厂商私有 MIB 补充” 原则。理由:①跨厂商监控项统一(一个模板就能套 5 台打印机);②维护成本低(厂商固件升级私有 OID 可能变化,但 RFC 3805 的 OID 树十几年稳如磐石)。下面实战章节所有 Item 配置都用 .1.3.6.1.2.1.43.x 标准 OID,跨 5 款机型通用。

4.1 HP LaserJet M404dn(私有 Enterprise MIB 子节点)

HP-LASERJET-COMMON-MIB(observium.org 索引)下能明确对应的实战 OID:

OID 名称 类型 含义
.1.3.6.1.4.1.11.2.3.9.1.1.2.10gdStatusTonerLowTruthValue (scalar)低碳粉告警状态(true=低,false=正常)
.1.3.6.1.4.1.11.2.3.9.1.1.2.8gdStatusPaperOutTruthValue (scalar)缺纸状态
.1.3.6.1.4.1.11.2.3.9.1.1.2.9gdStatusPaperJamTruthValue (scalar)卡纸状态

实战:用 snmpget -v2c -c public 192.168.10.50 .1.3.6.1.4.1.11.2.3.9.1.1.2.10 立即返回 TruthValue: false。在 Zabbix Item type 选 SNMPv2 agent 时用 last()=true 触发告警,比 RFC 2790 的 hrPrinterDetectedErrorState 位图更直观(直接拿到布尔值,无需位图解析)。

4.2 Brother HL-L8360CDW(私有 Enterprise MIB 子节点)

BROTHER-MIB(observium.org 索引)下能明确对应的实战 OID:

OID 名称 类型 含义
.1.3.6.1.4.1.2435.2.3.9.4.2.1.5.5.10brInfoCounterOctetString (scalar)总印量(OctetString 数字)
.1.3.6.1.4.1.2435.2.3.9.4.2.1.5.5.19brInfoEstimatedPagesRemainingInteger32 (scalar)预计剩余页数
.1.3.6.1.4.1.2435.2.3.9.4.2.1.5.5.4brInfoStatusInteger32 (scalar)状态消息 ID(0=正常 1=警告 2=错误)
.1.3.6.1.4.1.2435.2.3.9.1.1.2.10tonerlowTruthValue (scalar)低碳粉告警

Brother 的 OID 树比 HP 深一层(5 段),但brInfoEstimatedPagesRemaining 是 Brother 的杀手锏:直接给出”还能印多少页”,比 RFC 3805 的百分比更易触发主动采购流程(剩余 < 200 页时给采购发提醒)。

4.3 Canon imageRUNNER C3326 / Epson WF-C878R / Lexmark MS821dn

本次核验未在公开索引(observium / mibdepot / oidview)找到这 3 款机型经核验的私有 Enterprise MIB 子节点。出于”不凭记忆编造”原则,实战中统一使用 RFC 3805 标准 OID(prtMarkerLifeCount / prtMarkerSuppliesLevel / prtAlert)配合 HR-MIB 的 hrPrinterStatus,已经能覆盖碳粉余量、总印量、错误状态三类核心需求。如果后续在 Canon / Epson / Lexmark 官方文档找到私有 MIB 节点,可通过 snmpwalk -v2c -c public <IP> .1.3.6.1.4.1.1065(Canon)/ .1.3.6.1.4.1.345(Epson)/ .1.3.6.1.4.1.641(Lexmark)递归 walk 整个 enterprise 子树补全。

五、Zabbix 7.4 SNMP 接入准备(2 条命令)

在 Zabbix Server(默认假设已按我站文章 #10098 的 7.4 LTS + 外置 MySQL 教程部署完毕)上确认 SNMP 模块与工具链可用:

# 1) 检查 Zabbix Server SNMP poller 进程
systemctl status zabbix-server | grep -E "snmp|poller"

# 2) Zabbix Server 主机装 net-snmp 客户端(用于本地 snmpwalk 联调)
# CentOS / RHEL 9:
dnf install -y net-snmp net-snmp-utils
# Debian / Ubuntu 24.04:
# apt install -y snmp snmp-mibs-downloader
# 如系统默认不下载厂商私有 MIB,首次执行下载官方 IANA / RFC 仓:
# download-mibs

# 3) 测一台打印机的 SNMP 连通性(替换 IP)
snmpwalk -v2c -c public 192.168.10.50 1.3.6.1.2.1.1.1.0
# 应输出类似: "STRING: HP LaserJet M404dn …"

public 是绝大多数打印机的默认 community,出厂未改的安全隐患务必第一条建议调整。

六、创建 Printer Host + SNMP 接口配置

在 Zabbix Web UI(默认 http://<server>:8080)中完成 5 步:

  1. Configuration → Hosts → Create host:Host name 填打印机名(建议与 sysName 一致),Groups 加 “Printers”,IP address 写打印机管理 IP;
  2. Templates 标签页:先不要 link,等第七章建好自定义模板再 link;
  3. SNMP interfaces 区域:Add new interface,类型 SNMP,IP 192.168.10.50,Port 161;
  4. Macros 标签页:添加 {$SNMP_COMMUNITY} = public(user macro),后续模板里调用此宏;
  5. Inventory 标签页:选 Automatic,Zabbix 会自动把 sysDescr / 序列号填到 Manufacturer / Model / Serial 字段,资产台账直接同步。

如果打印机很多(≥ 30 台),建议在资产台账加自定义 Tag: 楼层 / Tag: 部门,Dashboard 按 Tag 切片显示。

七、5 款打印机的 Zabbix 监控项与模板(实战)★

Configuration → Templates → Create template 新建 Template SNMP Printer Generic v1.0(基于 RFC 3805 跨厂商模板),组里 link 到 5 款打印机 host。下面列出 10 个核心 Item 的 OID + Zabbix 配置,OID 数字从 RFC 3805/2790/3418 原文核验,可直接复制粘贴

Item name Type OID 取数策略
printer.sys.descrSNMPv2 agent1.3.6.1.2.1.1.1.0每 1h
printer.uptimeSNMPv2 agent1.3.6.1.2.1.1.3.0每 60s,存为 Numeric (unsigned)
printer.serial_numberSNMPv2 agent1.3.6.1.2.1.43.5.1.1.17.0每 6h
printer.page_totalSNMPv2 agent1.3.6.1.2.1.43.10.2.1.4.1.1★ LLD 遍历 marker 引擎
printer.toner.level.*SNMPv2 agent1.3.6.1.2.1.43.11.1.1.6.1.*★ LLD 遍历耗材
printer.toner.max.*SNMPv2 agent1.3.6.1.2.1.43.11.1.1.7.1.*每 12h
printer.toner.color.*SNMPv2 agent1.3.6.1.2.1.43.12.1.1.4.1.*★ LLD 遍历颜色
printer.statusSNMPv2 agent1.3.6.1.2.1.25.3.5.1.1.1每 60s
printer.error_stateSNMPv2 agent1.3.6.1.2.1.25.3.5.1.2.1每 60s,存为 HEX/Bitmap
printer.snmp_engine_timeSNMPv2 agent1.3.6.1.6.3.10.2.1.3.0每 5min(健康度)

★ 标 3 行是真正发挥价值的 LLD 项,因为 hp/brother/canon/epson/lexmark 一台机内的碳粉数不一(黑白 1 支 / CMYK 4 支),必须用 LLD。LLD 规则:Discovery rule 选 SNMPv2 agent,OID 用 1.3.6.1.2.1.43.11.1.1.1(prtMarkerSuppliesIndex),Key 用 printer.toner.discovery;LLD macros 自动暴露 {#SUPPLIES_INDEX},Item 原型用 1.3.6.1.2.1.43.11.1.1.6.1.{#SUPPLIES_INDEX}

八、Trigger 告警:碳粉 / 离线 / 卡纸 / 抖动监测

8 个最常用 Trigger 表达式(直接复制到 Zabbix → Configuration → Templates → Triggers):

场景 Severity 表达式(基于 RFC 3805 OID)
碳粉 ≤ 20%Warning{Template SNMP Printer Generic v1.0:printer.toner.level.last()}<=20 and last()>0
碳粉耗尽 (-2)Highlast()=-2
设备离线High{ITEM.last()}#0(nodata 5min)
卡纸(bit 5)Disaster(printer.error_state.last() & 0x20)>0
门开(bit 4)Warning(printer.error_state.last() & 0x10)>0
缺纸(bit 1)Warning(printer.error_state.last() & 0x02)>0
无服务请求(bit 7)Warning(printer.error_state.last() & 0x80)>0
状态不空闲Info{printer.status.last()}<>3 and {printer.status.last()}<>2

位图按位与运算是关键:hrPrinterDetectedErrorState 是 OCTET STRING 形式的多字节状态位,RFC 2790 已规定每 bit 含义。在 Zabbix 中用 & 0x80 等表达式解析对应位。经验:位图告警是打印机监控的灵魂——比单纯"碳粉低"告警早 1-2 周发现卡纸、电机磨损等隐患。

九、Graphs + Dashboard + 自动发现

Graphs 3 件套(每个模板都建一遍):

  • 碳粉余量饼图printer.toner.level.* × 4 (CMYK) + max → 计算百分比堆叠;
  • 总印量趋势图printer.page_total 折线,X 轴时间,Y 轴页数,月度盘点时直接看每月增长;
  • 打印机状态时间线printer.status 阶梯图 (Step),按位图叠加,方便和 IT 工单时间比对。

Dashboard 模板:建一个共享 Dashboard Printers Health,加 3 个 Widget:①Total printers(Host counter,按 group=Printers 过滤);②Toner low widget(Problems 过滤 trigger severity ≥ Warning 且 item 含 toner.level);③Top 10 printers by page_total(Top hosts widget,按月增长排序)。

十、常见问题排错清单

故障现象 根因 + 修法
snmpwalk timeout打印机 Web 后台 SNMP 没开,或 community 名不是 public。进 192.168.10.50 → Network → SNMP → Enable + community
Zabbix Item 取不到值(No data)防火墙拦截 161/UDP:ss -tulnp | grep 161;Zabbix Server 主机 firewall-cmd 放行;用 snmpwalk 本地测试
hrPrinterTable 抓不到打印机启用了"打印即插即用"但未注册为 hrPrinterType=printer。改成 embedded print server 或外置 JetDirect
碳粉余量恒为 -3固件版本太老未实现此 OID。升级 firmware 或改用厂商私有 OID(HP: .1.3.6.1.4.1.11.2.3.9.1.1.2)
net-snmp MIB 下载失败snmp-mibs-downloader 在 RHEL 装不上。改成手拷 mib 文件到 /usr/share/snmp/mibs/ 或用 -M /tmp/mibs 临时目录
太多误报打印机休眠时 SNMP 不响应。在 Host 界面加 Maintenance period(按工作日时段),并用 (nodata) 替代时间窗

十一、总结:3 类场景 vs 5 款选型决策

企业接入决策树:①若已部署 Zabbix 监控其它设备 → 直接给打印机新建 Template,零新增基础设施;②若还没用 Zabbix → 仅监控打印机性价比不如 PRTG / NetCrunch,但打印机 ≥ 30 台 + 想统一监控时强烈建议;③若打印机 < 5 台 → 用厂商自带 Web(HP Web JetAdmin / Epson EpsonNet Config)够用。

5 款选型速查:HP M404dn 是中国中小企业无可争议的第一大选择(市场份额、墨盒、售后都熟);Brother L8360CDW 在彩色 A4 + 性价比组合里最稳;Canon C3326 适合"复印打印扫描一体"复合需求;EPSON C878R 走墨仓耗材成本最优路线(每页 1-2 分钱);Lexmark MS821dn 是月打印 5 万页以上的金融 / 制造业高印量必选。

关键 OID 清单保留一张表(文档速查)sysUpTime=.1.3.6.1.2.1.1.3.0、prtGeneralSerialNumber=.1.3.6.1.2.1.43.5.1.1.17.0、prtMarkerLifeCount=.1.3.6.1.2.1.43.10.2.1.4.1.x、prtMarkerSuppliesLevel=.1.3.6.1.2.1.43.11.1.1.6.1.x、hrPrinterDetectedErrorState=.1.3.6.1.2.1.25.3.5.1.2.1——打印贴工位 5 分钟接入。

🚀 IT峰哥软件库

国内领先的一站式IT软件资源下载平台,收录超十万款软件资源,覆盖操作系统、办公软件、开发工具、系统工具、安全防护、数据恢复等20余大类,满足IT从业者、程序员、设计师和普通电脑用户的一切软件需求。

🛡️ 安全可靠 · 每日更新

所有资源经过严格安全检测,绿色无毒,提供 免注册版 · 绿色版 · 激活版 · 简体中文版 等多种版本选择。每日更新,紧跟最新版本发布节奏!

立即访问 →

默认

苹果 Arm 芯片 Mac 怎么装 Windows?Parallels / VMware / UTM 完整方案对比 2026

2026-7-21 14:21:33

默认

Hyper-V 双机集群对接群晖 iSCSI 存储:故障转移与 MPIO 多路径实战

2026-7-24 10:41:00

搜索