Wireshark lua 插件簡介

在我的專欄《wireshark從入門到精通》前面的章節中,學習了wireshark UI界面的使用技巧,學習了命令行工具的使用方法。除此之外爲了方便使用者的靈活定製,比如說按需批量修改報文,完成某種私有協議的解析等方面的功能。wireshark提供了lua插件的功能,擴展了對於wireshark的使用。當然像我在上一節源碼概覽那一部分所述那樣,也是可以寫C插件的。但是如果就完成某個功能而言,通常還是使用lua插件,因爲其編寫起來相對的容易,能夠快速的完成特定的需求,本節對此功能先做一次簡單的介紹,重點還是使用過程中可能出現的問題以及解決辦法,具體的使用示例及API接口解釋在後續章節會一一道來。

首先wireshark對外提供了lua接口,因此插件腳本需要使用lua語言進行編寫。爲了支持對於lua的解釋,wireshark集成了lua的解釋器,如圖1:
在這裏插入圖片描述
圖1

Lua這門語言是在巴西一所大學實驗室裏面基於C語言開發出來,具有了很多現代高級語言的特性,因此其使用起來非常的方便。如果有學習過java,python,js等高級語言,相信對於lua會很快的上手。由於Lua的小巧,高效,易擴展等特性,經常用於嵌入式等方面的開發,如C混合編程等。Lua的語言特性和語法規則不是本文所涉及的內容,相關內容可自行學習。本專欄主要是介紹wireshark中能夠使用lua做哪些事情,包括利用其提供的lua API,藉助wireshark強大的報文解析能力來滿足一些特定的需求。 wireshark官網在介紹Lua時候這樣提到:

In Wireshark Lua can be used to write dissectors, taps, and capture file readers

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章