基於vc 的網路管理的一點心得

2021-05-22 05:42:00 字數 2399 閱讀 9742

我是在windows network下做網管的,使用vc++做開發,經過這個幾個月工作,

終於找到了門,呵呵。

建議第一點,網路管理理論知識一定要有,書和rfc。

第二點,把精華區看看。還有友情連線,特別是snmplink這個**,你在那會發現很多東西。

第三點,作工程的話一定要有程式設計功底的(這是我欠缺的,為此付出很大代價)

明確兩個概念mib 和 mib的實現,mib說白了就是乙個文字,給人看得東西,

mib的實現過程就是編寫agent的過程。一開始我老把mib理解成乙個資料庫,

也許它可以作為乙個資料庫的定義,但是實現時不一定有實際的資料庫。

agent開發

第一步是mib設計(如果你是要實現已有的mib那麼這步就用不到了)

要寫出乙個mib文件,你要知道smi,下面的rfc是你需要了解的:

smiv1

• rfc 1155 - structure of management information

• rfc 1212 - concise mib definitions

smiv2

• rfc 2578 - structure of management information

• rfc 2579 - textual conventions

• rfc 2580 - conformance statements

把mib ii(rfc1213)作為例子看一下,定義乙個mib大體的結構,

開始你的mib設計時,首先確定你要將那些被管物件納入管理資訊庫。

結構安排好,具體到各個物件的定義,就是巨集的運用:

smi v1

objects-type  rfc1155

trap-type rfc1215

smi v2

object-identity object-type module-identity notification-type  rfc2578

textual-convention rfc2579

object-group notification-group module-compliance agent-compabilities rfc2580

值得一提的是rfc2580中的這幾個巨集,主要完成mib一致性的定義,表明mib實現時

必須實現的管理物件,這個在smiv2中必須完成。

還有在乙個mib中不能混用v1和v2,只能用其中乙個的格式定義。

最終結果是你寫出那個asn.1的文件來。

這一步使用乙個記事本就可以,當然也有視覺化的mib designer,比如nudesign tools,

mg-soft brower都提供。但是沒有註冊的話前者設計mib最多只能包含20個節點,後者

不能顯示asn.1的文件。在snmplink你還可以找到一些設計工具。

第二步,就是選開發包了,

windows下適合c++語言的開發包:

m$自身提供一組稱為winsnmp的api(在msdn裡以此為關鍵字可以找到),而且m$提供

基於agent service的snmp extension agent開發。

我使用的開發包是免費的snmp++ agent++(http://www.agentpp.com/),其實就是兩個類庫,

剛接觸感覺比較簡單,但是幫助文件太少。

一般與它一起提起的還有乙個net-snmp(http://net-snmp.sourceforge.net/ 訪問需要國外的**)

如果有銀子,當然可以使用那些比較牛的東東,我接觸過得有snmp research's emanate® tool kit

和hp openview.

當你的開發包定下來,你的mib編譯工具也就定了,對於agent++就是agentgen

編譯工具的用處就是將你寫的asn.1的mib檔案編譯成你使用的程式語言,

而且是針對你的開發包的。

我用的agentgen(standard,agentpro要銀子的)就最後生成的就是.cpp和.h的檔案。

agentgen的用法很簡單,自帶的manual足夠了。

第三步就是你如何程式設計了,簡單的說就是讓這個agent響應get set操作,發發trap。

在這時用到的理論知識應該是:pdu的格式,snmp原語和原語操作的過程。

snmp v1(rfc1157) snmp v2(rfc1905)

關於snmp++ agent++精華區都有文章,

幫主echrisma 的《hp snmp++攻略》,snmptxy的《agent++在vc下的編譯》

在看看它的help,example,特別是後者,上手是不太困難的。

然後就是具體問題具體分析啦。post上來。

如果你上新聞組的話可以定comp.protocols.snmp,frank fock就是那個寫

agent++的傢伙這個組出沒。

基於vc 的網路管理的一點心得

我是在windows network下做網管的,使用vc 做開發,經過這個幾個月工作,終於找到了門,呵呵。建議第一點,網路管理理論知識一定要有,書和rfc。第二點,把精華區看看。還有友情連線,特別是snmplink這個 你在那會發現很多東西。第三點,作工程的話一定要有程式設計功底的 這是我欠缺的,為...

MySql管理的一點心得(2)

最後給出本人在redhat9.0下的mysql操作演示 選用資料庫的root使用者登入 weiwen weiwenlinux mysql uroot p enter password mypassword mysql create database mydb query ok,1 row affec...

KMP的一點心得

int next next陣列儲存的是當模式串匹配不上的時候將要跳轉的下標 void getnext char b int kmp char a,char b 尋找主串中有多少模式串 return k int kmp char a,char b 判斷主串中是否有模式串 return 0 字串a代表的...