Skip to content

SNMP ใน Python

SNMP ย่อมาจาก Simple Network Management Protocol เป็นโปรโตคอล (Protocol) ถูกออกแบบให้ทำงานง่าย ๆ และมีฟังก์ชัน โดยจุดประสงค์หลักของโปรโตคอล SNMP คือ เพื่อให้ผู้ดูแลระบบเครือข่ายสามารถจัดการอุปกรณ์ในเครือข่ายจากระยะไกลได้ และยังสามารถมอนิเตอร์ระบบเครือข่ายได้ด้วยฟังก์ชัน RMON

อ่านเพิ่มเติมได้ที่ https://sites.google.com/site/snmphorus/ สำหรับในภาษา Python มีไลบรารีสำหรับโปรโตคอล SNMP นี้อีกด้วยครับ ชื่อว่า pysnmp

  • รองรับโปรโตคอล SNMP v1/v2c/v3 ใน IPv4/IPv6 และระบบเครือข่ายอื่น ๆ
  • License: BSD
  • รองรับทั้ง Python 2 และ Python 3

สามารถติดตั้งได้โดยใช้คำสั่ง pip:

pip install pysnmp

ด้วยคำสั่ง easy_install:

easy_install pysnmp

หรือโหลดโค้ดมาติดตั้งเองจาก https://pypi.python.org/pypi/pysnmp/ แตกไฟล์ tar.gz แล้วเปิดคอมมาไลน์ใช้คำสั่ง

python install setup.py

ตัวอย่าง

from pysnmp.entity.rfc3413.oneliner import cmdgen
errorIndication, errorStatus, errorIndex, varBinds = cmdgen.CommandGenerator().getCmd(
cmdgen.CommunityData('my-agent', 'public', 0),
cmdgen.UdpTransportTarget(('xxx.xx.xxx.xx', 161)),
(1,3,6,1,2,1,1,1,0)
)
print(errorIndex)
print(varBinds)

อ่านเอกสารการใช้งานได้จาก http://pysnmp.sourceforge.net/docs/4.x/index.html และ http://gzsl.lzu.edu.cn/pysnmp/pysnmp-tutorial.html นอกจาก pysnmp แล้วยังมี pysnmp-apps สำหรับใช้จัดการ SNMP บนคอมมาไลน์ด้วยภาษา Python ครับ https://pypi.python.org/pypi/pysnmp-apps/ ติดตามบทความต่อไปนะครับ ขอบคุณครับ

Published on Categories เครือข่าย

About wannaphong

วรรณพงษ์ ภัททิยไพบูลย์ ผู้ดูแลเว็บ wannaphong.com และผู้เขียนบทความบล็อกนี้ นักศึกษาชั้นปีที่ 1 สาขาวิทยาการคอมพิวเตอร์และสารสนเทศ คณะวิทยาศาสตร์ประยุกต์และวิศวกรรมศาสตร์ มหาวิทยาลัยขอนแก่น วิทยาเขตหนองคาย

ใส่ความเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องที่ต้องการถูกทำเครื่องหมาย *