12.29 交換機snmp測試開發神器之net-snmp

平時我們測試開發交換機的snmp功能時廣泛的用到了net-snmp,net-snmp是免費開源的,廣泛用於snmp開發和測試。

今天講一下如何在ubuntu上安裝和使用net-snmp。

1.安裝ubuntu後apt-get update

本文使用的是ubuntu 16.04服務器版,安裝後請執行apt-get update進行更新

2.去net-snmp網站下載最新版的安裝包(本文用的net-snmp-5.8.tar.gz),用winscp拷貝到根目錄下,然後執行以下操作

1)解壓文件包:

tar -zxvf net-snmp-5.8.tar.gz

2)解壓後重命名下解壓出來的文件夾,名字改為net-snmp(可以使用winscp修改)

3)添加權限

chmod -R 777 net-snmp

3.安裝Ubuntu下的snmp的依賴包

apt-get install libperl-dev

4.安裝gcc,安裝make,後面會用到

apt-get install gcc

apt-get install make

5.進入到/net-snmp目錄,開始安裝

執行./configure --prefix=/usr/local/snmp,安裝在/usr/local/snmp下,./configure後面可以接參數自定義,請自尋查資料

回車出現下面問題都可以直接回車,系統會使用默認值,日誌文件默認路徑為/var/log/snmpd.log,文件存儲目錄默認為/var/net-snmp/

    1、default version of-snmp-version(3):

    2、System Contact Information (@@no.where)(配置該設備的聯繫信息):

    3、System Location (Unknown)(該系統設備的地理位置):

    4、Location to write logfile (日誌文件位置):

    5、Location to Write persistent(數據存儲目錄):

看到下面這個表示安裝成功

---------------------------------------------------------

Net-SNMP configuration summary:

---------------------------------------------------------

6.配置snmpd.conf

將EXAMPLE.conf拷貝到/usr/local/snmp/share/snmp/目錄下

cp /net-snmp/EXAMPLE.conf /usr/local/snmp/share/snmp/snmpd.conf

輸入

vi /usr/local/snmp/share/snmp/snmpd.conf編輯snmd.conf,需要改的見下面加粗的部分

# AGENT BEHAVIOUR

#

# Listen for connections from the local system only

#agentAddress udp:127.0.0.1:161

# Listen for connections on all interfaces (both IPv4 *and* IPv6)

agentAddress udp:161,udp6:[::1]:161

# ACCESS CONTROL

#

# system + hrSystem groups only

view systemonly included .1.3.6.1.2.1.1

view systemonly included .1.3.6.1.2.1.25.1

view all include .1

# Full access from the local host

#rocommunity public localhost

# Default access to basic system info

rocommunity public default

# Full access from an example network

# Adjust this network address to match your local

# settings, change the community string,

# and check the 'agentAddress' setting above

7.啟動snmp,查看是否安裝成功

進入到/usr/local/snmp/sbin目錄下,啟動snmpd,執行命令:

cd /usr/local/snmp/sbin

./snmpd -c /usr/local/net-snmp/share/snmp/snmpd.conf

如何檢驗是否啟動成功呢?可以通過查看進程的方式,使用命令ps -ef|grep snmpd,如果返回進程的相關信息,說明啟動成功。

進入/usr/local/snmp/bin目錄,執行./snmpwalk -v 2c -c public localhost system(public由snmpd.conf 中rocommunity決定),如果返回一大串信息而不是錯誤提示則安裝成功。

8.配置snmp自啟動,修改環境變量任意路徑執行snmp

1)由於經常要測試snmp,所以設置成自動啟動,輸入“vi /etc/rc.local”在/etc/rc.local文件的exit 0前面加上下面這一行:

/usr/local/snmp/sbin/snmpd -c /usr/local/snmp/share/snmp/snmpd.conf &

注意一定要加到exit 0前面

2)修改環境變量任意路徑執行snmp

在/etc/profile文件的末尾加上下面一段代碼:

export PATH=/usr/local/snmp/bin:/usr/local/snmp/sbin:$PATH

再執行source命令

source /etc/profile

這樣每次開機net-snmp會自啟動,並且可以任意路徑下執行snmp命令

9.使用snmp測試

命令如下

snmpwalk -v 2c -c public 192.168.1.10 .1.3.6.1.2.1.1.1.0

snmpwalk可以換成snmpget等,對應具體操作

2c對應的snmpv2c版本

public是共同體名稱

192.168.1.10是交換機的IP,可以替換成具體的IP地址

.1.3.6.1.2.1.1.1.0是要查詢的oid,可以替換成具體的oid


分享到:


相關文章: