在 Wireshark 抓包中顯示 snmp mib 名

來源:互聯網
上載者:User

  Wireshark 是最富盛名的開源抓包工具了,在電信網管開發的日常工作中是不可或缺的,經常需要抓包分析。那有沒有辦法可以在抓到的包中直接顯示 snmp mib 的名字,而不是 OID 呢?辦法當然是有的,也很簡單,在官方的文檔裡面就有說明了。這裡講下實際配置步驟:

  1. 把 mib 檔案放到 “C:Program FilesWiresharksnmpmibs” 目錄下。

  2. 開啟 “%APPDATA%Wiresharksmi_modules” 檔案,在裡面按原有的格式,添加mib名字。

  3. 修改 Wireshark 的配置,選中 “Enable OID resolution”,”Suppress SMI errors”(如下圖)。修改之後關閉再重新開啟 Wireshark 就生效了。

  注意事項:

  1. 如果看到的配置介面跟上面的不一樣的話,是 Wireshark 版本太低了,升級到最新的版本即可。

  2. 不是所有的 mib 檔案都能被正確的解析,這是一個已知問題,因為其用的開源的 mib 解析模組 libsmi 有問題。如果發現加了某幾個 mib 之後 Wireshark 就啟動不了了,那就還是把改動回退吧。

  參考閱讀:1,2,3。

  另外,因為要求 mib 檔案的名字必須是 mib 模組的名字,但是存在檔案名稱和模組名不一致的情況,寫了個 groovy 指令碼,對指定目錄下的 mib 檔案進行重新命名:

  import java.util.regex.*

  def dir = new File('''C:Program FilesWiresharksnmpmibs''')

  def pattern = ~/(?ms).*^s*([w-]+)s*DEFINITIONS ::= BEGINs*$.*/

  dir.eachFileRecurse{ f ->

  if ( f.file && f.name.endsWith(".mib") ) {

  Matcher m = pattern.matcher( f.getText() );

  if (m.matches()) {

  f.renameTo( f.parentFile.path + "" + m[0][1] )

  println '"' + m[0][1] + '"'

  }

  }

 

  }

相關文章

Beyond APAC's No.1 Cloud

19.6% IaaS Market Share in Asia Pacific - Gartner IT Service report, 2018

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。