SNMP (네트워크 장비 · UPS)
SNMP v2c — 스위치·라우터·UPS·서버 같은 인프라 장비를 읽습니다(UDP 161). PLC 가 아니라 «공장을 떠받치는 장비» 를 같은 화면에서 보고 싶을 때 씁니다.
| 상황 | 어떤 카드를 쓰나요 |
|---|---|
| 스위치 · 라우터 · UPS · 서버 · NAS | SNMP (이 페이지) |
| 산업용 PLC | Modbus TCP · OPC-UA |
| CNC 공작기계 | MTConnect · FOCAS |
이걸 왜 쓰나
설비가 멈춘 원인이 설비가 아니라 네트워크나 전원인 경우가 많습니다. UPS 배터리 잔량과 스위치 포트 오류를 설비 데이터와 같은 타임라인에 올려 두면 그 판단이 빨라집니다.
등록 폼 입력값
| 입력 칸 | 무엇을 적나요 | 예시 |
|---|---|---|
| IP 주소 | 장비 관리 IP | 10.20.30.1 |
| 포트 | 표준 161 | 161 |
| 수집 주기 | 폴링 주기(ms) | 10000 (인프라 지표는 길게) |
옵션
| 옵션 | 기본값 | 무엇 |
|---|---|---|
community | public | SNMP 커뮤니티 문자열 |
request-timeout | 2000 | 응답 대기(ms) |
public 그대로 두지 마십시오읽기 전용이라도 커뮤니티 문자열은 비밀번호입니다. 장비에서 별도 읽기 전용 커뮤니티를 만들어 쓰고, 관리망 밖에서 161 이 열리지 않게 하십시오.
태그의 PLC 주소 표기 — OID
태그의 PLC 주소 = OID(점 표기)입니다. 앞의 . 은 있어도 없어도 됩니다.
| OID | 무엇 |
|---|---|
1.3.6.1.2.1.1.3.0 | sysUpTime — 장비가 켜져 있던 시간 |
1.3.6.1.2.1.1.5.0 | sysName — 장비 이름 |
1.3.6.1.2.1.2.2.1.10.1 | ifInOctets.1 — 1번 포트 수신 바이트 |
1.3.6.1.2.1.2.2.1.8.1 | ifOperStatus.1 — 1번 포트 링크 상태 |
🔴 끝의 인덱스를 빠뜨리지 마십시오. 스칼라 값은 .0, 테이블 값은 .<인덱스> 가
붙습니다. 1.3.6.1.2.1.1.3 은 값이 아니라 «가지» 라서 빈 값이 돌아옵니다.
UPS·PDU 처럼 제조사 고유 지표는 그 제조사의 MIB 문서에 OID 가 적혀 있습니다.
값이 어떻게 들어오나
| SNMP 타입 | 들어오는 값 |
|---|---|
| INTEGER · Counter32 · Gauge32 · TimeTicks | 숫자 |
| OCTET STRING | 문자열 (출력 불가 문자면 hex) |
| OID | 점 표기 문자열 |
| IpAddress | a.b.c.d |
| noSuchObject · noSuchInstance · endOfMibView | 빈 문자열 |
Counter 는 «누적» 입니다
ifInOctets 같은 Counter 는 계속 늘어나는 누계라 그 값 자체는 의미가 옅습니다. 초당
증가량이 필요하면 수식으로 차분을 잡으십시오 → 수식 적용
안 될 때
| 증상 | 먼저 볼 것 |
|---|---|
| 전부 빈 값 | 커뮤니티 문자열, 장비의 SNMP 허용 IP 목록 |
| 특정 OID 만 빔 | 인덱스(.0 · .1)가 붙었는지, 그 장비가 그 MIB 를 지원하는지 |
| 간헐적으로 빔 | UDP 라 유실될 수 있습니다 — request-timeout 을 늘리십시오 |