最近在學習簡單網管協議(SNMP),對於零基礎的自己,只能摸着石頭過河,雖然進步緩慢,但是驚喜不斷,O(∩_∩)O哈哈~
該筆記將會記錄下本人學習SNMP的過程,主要是整理下自己在學習過程中遇到的煩心事,及痛定思痛之後的解決方案,共道同者借鑑參考,也好少摸幾塊絆腳石,早點過河嘛!
廢話到此爲止,這是第一篇,主要解決兩個問題:
1、輸入指令訪問MIB數據庫信息無法用名稱ID訪問,只能通過數字OID方式訪問。
2、在虛擬機中的ubuntu系統能正常訪問外部ubuntu系統(直接裝在臺式機硬盤上的ubuntu),但是外部IP無法訪問虛擬機內部ubuntu系統。
自己動手在虛擬機下的ubuntu系統中安裝snmp,過程如下:
環境:VM虛擬機10版本
系統:ubuntu 12.04
Snmp協議版本:5.4.3
打開終端窗口輸入:
apt-get update
apt-get install snmpd snmp
安裝測試:
snmpget –v2c –c public localhost .1.3.6.1.2.1.1.1.0
如果顯示本機系統信息,則恭喜你安裝完成。
今天遇到的問題是,查看MIB信息的指令中OID無法自動匹配信息條目,網上說可能缺少加載數據庫文件,同時注意到指令中的-m MIB[:...]也非常可疑。
一個月後,重裝系統ubuntu 10.04,重裝snmp 5.4.3,解決了。。。
接着嘗試,發現VM虛擬機(以下簡稱虛擬機)與臺式機(硬盤直接裝ubuntu,以下簡稱臺式機)之間的連接有不同的問題。
網絡連接模式: |
虛擬機訪問臺式機 |
臺式機訪問虛擬機 |
能否互Ping IPAddr |
橋接(有線) |
能 |
不能 |
能互ping |
NAT(有線) |
能 |
不能 |
虛擬機能ping通臺式機 |
外接無線網卡(無線) |
能 |
不能 |
能互ping |
發現:1、無論是橋接模式或者是NAT模式下,虛擬機的網絡都是有線形式,要想聯接無線,需要直接通過無線網卡聯網。
2、NAT模式下,虛擬機的IP在主機IP的下一級子網內,與臺式機的IP不屬於同一局域網,所以臺式機無法ping虛擬機。
3、三種模式下,虛擬機都能通過snmp協議訪問臺式機,但臺式機無法訪問虛擬機。
猜測:虛擬機沒有開放相應的端口,導致臺式機無法發送請求給虛擬機應答。
證明:1、如上描述的實驗結果看來,臺式機能接收虛擬機請求並應答,虛擬機卻無法做到。
2、在虛擬機上通過localhost能正常訪問本機信息,但是通過本機IP卻無法訪問本機信息,原因是localhost訪問方式不需要通過網卡及防火牆,而通過本機IP訪問方式需要經過網卡及防火牆,通過查看本機開放的端口監聽地址,發現本機默認只對外監聽udp:127.0.0.1:161端口,自然無法接收外來請求。
解決方案:用你喜歡的文本編輯器打開snmp本地配置文件,默認地址爲在
/etc/snmp/snmpd.conf
在開頭處添加以下代碼:
agentAddress udp:本機IP:161
#用你虛擬機的IP替換本機IP
保持後退出編輯,並重啓snmpd守護進程,確認監聽端口開啓之後就可正常接收臺式機請求並應答了。大功告成~^.^~
####################################華麗的分割線#############################################################
第一篇到此結束。
期待下一篇分析報道。。。