有個需求是收聽網站的流量,檢查是否有包含特定格式資訊的封包。從幾天前開始思考相關實作的問題。 如何檢查有人透過 Http 方式連線到網站? 側錄本機或同網段的封包才能滿足收聽的需求。Http協定送出的封包,到了底層是走tcp/ip,只要能夠抓取tcp/ip封包,並轉換成可處理的格式,就能檢查是否有人送出資訊。 今天的情境是要監聽同網段的網站流量,於是開始搜尋可用工具。其中,在Windows環境最有名的就是 WinPcap ,網路上已經有熱心人士提供包裹在 C# 的元件,只要先安裝好WinPcap,然後下載元件到自己的應用程式,即可收聽封包。該元件就是 SharpPcap ,2004年,美國的 Tamir Gal 為了完成大學的專案,在.NET 應用程式中使用 WinPcap 的功能,因此順便開發了SharpPcap 。他甚至寫了範例,使得開發人員可以更快學習如何利用他的元件,詳細資料請到 他的網站 。 如何使用SharpPcap ? 第一,下載 WinPcap,並妥善安裝完畢。( 下載連結 ) 第二,下載 SharpPcap 。( 下載連結 ) 第三,將 PacketDotNet.dll 和 SharpPcap.dll 加入到應用程式的參考中。 using SharpPcap; using SharpPcap.LibPcap; using PacketDotNet;
留言
張貼留言