2017-10-21 177 views
0

所以我的問題是,SNMP代理在解碼oid後如何檢索信息?如何使用SNMP代理回覆snmp請求?

例如,一個簡單的snmp請求將是snmp-get被髮送的oid將是1.3.6.1.2.1.1.1,它將轉換爲「so.org.dod.internet.mgmt.mib-2.system.sysDescr 「,這將是對系統硬件類型,軟件操作系統和網絡軟件的全名和版本標識的請求。

知道它需要什麼後,SNMP代理如何組成響應?它是否查詢別的東西?如果是查詢系統,它是如何查詢呢..

+0

我可以稱自己是SNMP代理供應商之一,https://docs.sharpsnmp.com/en/latest/samples/agent-development.html但如果您瞭解C#和代碼庫,則可以看到「翻譯」部分是不必要的。我可以直接將每個OID映射到一段代碼。關於可能返回的值,每個供應商都有自由,如果使用不同的代理,您可以獲得不同的值(對於sysDescr)。因此,爲了讓您的問題可以回答,您必須關注單個代理或全部代理。 –

+0

所以基本上你是說你只是將所有的OID映射到一段單獨的代碼中,然後從PC中檢索信息?我的問題有點含糊不清,但我主要關注通過代理獲取所述信息。 – charliezz10

回答

0

最好的辦法是閱讀和理解標準RFC 3411特別是部分3.1.3.2「SNMP代理」,表明該架構名爲

    An Architecture for Describing 
Simple Network Management Protocol (SNMP) Management Frameworks 

的代理人。您正在詢問有關「MIB儀器」的信息,該信息將在第3.3節中詳細介紹。

然後通過每個註冊的MIB對象的回調,在每個SNMP框架中實現該標準。您編譯要在代理中處理的MIB,併爲回調生成存根,然後填寫這些存根以檢索每個對象的信息並以所需格式返回。