ติดตั้ง PHP Module: snmp

SNMP เป็นโปรโตคอลมาตรฐานสำหรับการบริหารจัดการอุปกรณ์ทางด้านเครือข่าย คือสามารถที่จะดึงค่าที่ต้องการ หรือคอนฟิกค่าของอุปกรณ์ได้

การที่จะสามารถเขียน PHP ให้เรียกใช้ฟังก์ชั่นเกี่ยวกับ snmp ได้ ต้องติดตั้งโมดูล php-snmp

ใส่แผ่นดีวีดี Fedora 11 แล้วติดตั้งไฟล์ rpm ต่อไปนี้ตามตัวอย่าง

[root@fc11-64min ~]# mount /dev/scd0 /media/
mount: block device /dev/sr0 is write-protected, mounting read-only
[root@fc11-64min ~]# cd /media/Packages/

ติดตั้ง net-snmp

ต้องลงโปรแกรม net-snmp ก่อนที่จะติดตั้ง โมดูล php-snmp

[root@fc11-64min Packages]# rpm -i lm_sensors-3.1.0-1.fc11.x86_64.rpm
[root@fc11-64min Packages]# rpm -i net-snmp-libs-5.4.2.1-10.fc11.x86_64.rpm
[root@fc11-64min Packages]# rpm -i net-snmp-5.4.2.1-10.fc11.x86_64.rpm

ติดตั้งไฟล์ net-snmp-utils และโมดูล php-snmp เพิ่มเติมโดยสองไฟล์นี้ต้องดาวน์โหลดมาจาก Fedora 11 Everything

[root@fc11-64min ~]# rpm -i net-snmp-utils-5.4.2.1-10.fc11.x86_64.rpm
[root@fc11-64min ~]# rpm -i php-snmp-5.2.9-2.fc11.x86_64.rpm

ใช้คำสั่ง service เพื่อรีสตาร์ตเว็บเซิร์ฟเวอร์

[root@fc11-64min Packages]# service httpd restart
Stopping httpd:                                            [  OK  ]
Starting httpd:                                            [  OK  ]

ทดสอบ php-snmp

ทดลองเรียกใช้ฟังก์ชั่น snmpwalk เพื่อดึงค่า MIB ที่เกี่ยวกับ system จาก IP 192.168.1.254

[root@fc11-64min html]# cat test-snmp.php
<?php
$_ret = snmpwalk('192.168.1.254', 'public', 'system');
print_r($_ret);
?>
[root@fc11-64min html]# php test-snmp.php
Array
(
    [0] => STRING: Linux ...
    [1] => OID: NET-SNMP-MIB::netSnmpAgentOIDs.10
...

ข้อมูลอ้างอิง

Leave a Reply

Your email address will not be published.