Printer-MIB
RFC 목록 - SNMP
Printer-MIB - 1.3.6.1.2.1.43
LEXMARK-PVT-MIB - 1.3.6.1.4.1.641
SNMP-VIEW-BASED-ACM-MIB - 1.3.6.1.6.3.16
RFC 1759- - Printer MIB : pdf - rfc1759.txt.pdf
RFC문서에는 object 이름으로 표시가 되어있어 실제 OID를 구하기가 힘들다.
이럴때는 CISCO의 SNMP Object Navigator를 이용해보면 쉽게 찾을 수 있다.
1. 항목 찾기 => RFC 1759이용 : Object의 이름(예. hrDeviceStatus)으로 나와있다.
- OID 찾기 => Object의 이름-> OID
OID 리스트 : HOST-RESOURCES-MIB.oid
Universal Print Filter for PostScript and HP printers, as well as the usual 'dumb' printers (for BSD based print spoolers, for e.g. used by LPRng)
http://www.sfr-fresh.com/unix/misc/ifhp-3.5.20.tgz/ (링크): Using_SNMP_To_Get_Printer_Status.txt
(다운)
유틸리티
윈도우 환경에서 사용할 수 있는 콘솔 프로그램입니다. 탐색기에서 더블클릭하지 마셈. cmd.exe를 이용!
snmpget.exe : get 명령을 할 수 있는 프로그램
예) > snmpget 10.15.102.160
=> 기본값으로 public의 1.3.6.1.2.1.1.1.0 를 가져옵니다.
예) > snmpget 10.15.102.160 public 1.3.6.1.2.1.25.3.5.1.1.1
snmpwalk.exe : walk(순차적으로 traverse하면서 get을 함)을 함(정확한 oid를 모를 경우 유용)
예) > snmpwalk 10.15.102.160
snmpscan.exe : 현재 자신의 네트워크에서 snmp를 사용하는 장치의 정보를 구해옴.
예) > snmpscan 10.15.102.160 255.255.255.0
프린터 상태
3가지 상태 객체들을 제공
iso (1).org (3).dod (6).internet (1).mgmt (2).mib-2 (1).host (25).hrDevice (3). // 1.3.6.1.2.1.25.3.
| -- hrDeviceTable (2).
| | -- hrDeviceEntry (1) // 1.3.6.1.2.1.25.3.2.1.5
| | -- hrDeviceStatus (5)
| -- hrPrinterTable(5).
| -- hrPrinterEntry(1)
| -- hrPrinterStatus (1) // 1.3.6.1.2.1.25.3.5.1.1
| -- hrPrinterDetectedErrorState (2) // 1.3.6.1.2.1.25.3.5.1.2
hrDeviceStatus (1.3.6.1.2.1.25.3.2.1.5)
hrDeviceTable(1.3.6.1.2.1.25.3.5)에 있는 상태
iso (1) . org (3) . dod (6) . internet (1) . mgmt (2) . mib-2 (1) . host (25) . hrDevice (3) . hrPrinterTable (5) 오브젝트의 詳細
+ -- hrPrinterEntry (1)
hrDeviceStatus : 1.3.6.1.2.1.25.3.2.1.5
INTEGER / read-only
1 : unknown
2 : running
3 : warning
4 : testing
5 : down
예)
1.3.6.1.2.1.25.3.2.1.5.1 = 3 [Integer]
1.3.6.1.2.1.25.3.2.1.5.2 = 2 [Integer]
1.3.6.1.2.1.25.3.2.1.5.3 = 3 [Integer]
1.3.6.1.2.1.25.3.2.1.5.4 = 3 [Integer]
1.3.6.1.2.1.25.3.2.1.5.5 = 2 [Integer]
hrPrinterStatus (1.3.6.1.2.1.25.3.5.1.1)
hrPrinterTable(1.3.6.1.2.1.25.3.5.1)에 있는 상태
iso (1).org (3).dod (6).internet (1).mgmt (2).mib-2 (1).host (25).hrDevice (3).hrPrinterTable(5).
hrPrinterEntry(1)
| -- hrPrinterStatus (1)
hrPrinterStatus : 1.3.6.1.2.1.25.3.5.1.1
확인
> snmpget 10.15.102.160 public 1.3.6.1.2.1.25.3.5.1.1.1
결과) 평상시 결과 => 3 -> idle 상태이다.
1.3.6.1.2.1.25.3.5.1.1.1 = 3 [Integer]
프린트작업을 걸었더니..
1.3.6.1.2.1.25.3.5.1.1.1 = 4 [Integer]
4즉 '프린트 중이다'로 바뀌었다.
INTEGER / read-only
1 : other
2 : unknown
3 : idle
4 : printing
5 : warmup
예)
1.3.6.1.2.1.25.3.5.1.1.1 = 3 [Integer]
hrPrinterDetectedErrorState (1.3.6.1.2.1.25.3.5.1.2)
hrPrinterTable(1.3.6.1.2.1.25.3.5.1)에 있는 상태
iso (1).org (3).dod (6).internet (1).mgmt (2).mib-2 (1).host (25).hrDevice (3).hrPrinterTable(5).
hrPrinterEntry (1)
| -- hrPrinterDetectedErrorState (2)
예)
1.3.6.1.2.1.25.3.5.1.2.1 = 00 [Octets]
prtAlert ( 1.3.6.1.2.1.43.18 )
prtAlertCode (1.3.6.1.2.1.43.18.1.1.7)
엄청많다. Integer 타입이지만 PrtAlertCodeTC라는 이름으로 수치화 되어 있다.
prtAlertDescription (1.3.6.1.2.1.43.18.1.1.8)
영어 혹은 다국어 지원일 경우에는 UTF-8 등으로 인코딩 하기도 한다.
MIB MODULE Printer-MIB
'Network' 카테고리의 다른 글
MRTG(Multi Router Traffic Grapher) (0) | 2012.09.21 |
---|---|
SNMP - 윈도우 :: 프린터 추가시 (0) | 2012.09.21 |
SNMP - CISCO SNMP Object Navigator (0) | 2012.09.21 |
SNMP - MIB(Management information base) (0) | 2012.09.21 |
자신의 IP를 알아내기(영문) (0) | 2012.09.21 |