2015-06-08 88 views
0

我是使用SNMP工作的新手。我對不同版本的SNMP之間的向後兼容性和共存性感到困惑。SNMP版本之間共存和向後兼容性

版本之間的共存定義在RFC 2576中,其中解釋了代理和多語言實現。

我的問題是:運行SNMPv3代理的設備如何響應SNMPv1請求消息?當認證和加密算法應該被使用時,代理如何用簡單的社區字符串來響應消息?

代理如何配置爲多語言? SNMPv3是否向後兼容v1和v2? (將它v1和v2響應查詢總是?)

+0

我沒有檢查這個,但它可能根本不應答,或者可能迴應一個錯誤。如果代理被配置爲使用基於用戶的安全性,則披露任何信息將是一個巨大的安全問題。 – Jolta

+0

我讀過varioud書籍和博客,SNMP V3與v1和v2是「向後兼容的」。 https://books.google.co.in/books?id=q9ky8sw8LoAC&pg=PT412&lpg=PT412&dq=snmpv2agent+response+snmpv1+requests&source=bl&ots=mx6OaRL8Q5&sig=XXntgnHZ2VbMMZR5srSSoiEhJB8&hl=en&sa=X&ei=doRxVb_KOcm1uASao4O4CA&ved=0CEYQ6AEwBQ#v=onepage&q=snmpv2agent %20response%20snmpv1%20requests&f = false '向後兼容性'究竟是什麼? – user3316561

+0

如果您將v3 Agent設置爲使用基於社區的安全性,那麼是的,它完全向後兼容。但事實上,你會有一個不安全的解決方案。 – Jolta

回答

0

凡SNMPv3的說是「向後兼容」可能意味着無論是(或兩者):

  • ,大多數支持SNMPv3代理是多語種的代理商和意志如果配置爲SNMPv1和SNMPv2c,也可以這樣做。
  • SNMPv3使用與早期版本相同的MIB語言(SMIv1/SMIv2),因此可以在不做任何修改的情況下支持相同的MIB模塊。

協議本身是三個版本之間不同,並且彼此不兼容,但是可以通過代理(有一些例外)進行翻譯,並有一些相似之處:

  • SNMPv2c的幾乎是相同的SNMPv1,除了編碼中的不同版本號,新數據類型和SNMPv1不支持的Get-Bulk請求之外。
  • SNMPv3使用與SNMPv2c具有相同編碼但具有完全不同的消息編碼的所有相同的數據類型和PDU。

如何運行SNMPv3代理的設備到SNMPv1的請求 消息作出響應?

支持SNMPv3和SNMPv1的多語言設備通過SNMPv1回覆響應SNMPv1請求,並通過SNMPv3回覆響應SNMPv3請求。

代理如何使用簡單的社區對消息進行響應字符串 何時應使用認證和加密算法?

時應該認證和加密算法被使用,因爲身份驗證和加密是SNMPv3的功能和SNMPv3的消息編碼有一個團體字符串沒有字段你不能用一個簡單的社區字符串的消息。它有一個用戶名和字段,指出了執行這些功能所需的消息和參數的認證和隱私級別。

代理如何配置爲多語言?

標準的方式是通過SNMP-COMMUNITY-MIB,SNMP-USER-BASED-SM-MIB和SNMP-VIEW-BASED-ACM-MIB表的適當配置。例如,沒有在snmpCommunityTable中配置的社區?然後它不會響應SNMPv1或SNMPv2c。代替這些MIB的標準表格,「如何」將成爲具體實施。