賈翔+秦雯++嚴沛
【摘要】目前Windows環境下的數據包捕獲器已有很多,但Linux環境下的數據包捕獲器還未成熟。這里利用Libpcap這一數據包捕獲開發包工具,在網卡為混雜模式時對數據包進行捕獲,通過使用BPF過濾機制,過濾掉網絡上不需要的數據包,而只捕獲用戶感興趣的數據包,并對數據包進行分析。
【關鍵詞】網絡協議Libpcap數據包捕獲
一、引言
現如今,隨著Linux操作系統的推廣,Linux下的相關監控、維護需求也逐漸增多,本捕獲器正是利用了這一優勢。數據包捕獲開發包Libpcap(The Packet Capture Library)是一個平臺獨立的網絡數據包捕獲開發包。它是一個高層的編程接口,隱藏了操作系統的細節,可以捕獲網絡上的所有數據包,包括到達其他主機的數據包。Libpcap中使用了BPF過濾機制,這部分是基于內核的過濾模塊,它使得Libpcap具有捕獲特定數據包的功能。
二、系統結構設計
總體思想:根據以太網協議類型字段ethernet _type,判斷數據包協議類型是ARP、IP還是RARP,若為IP協議數據包,則繼續分析其類型字段,判斷數據包協議是TCP、UDP還是ICMP。若為TCP、UDP,即可根據其端口號判斷在其基礎上的應用層協議。若為ICMP可根據其類型進一步分析ICMP數據包。
本網絡數據包捕獲器可對以太網協議數據包、ARP協議數據包、RARP協議數據包、IP協議數據包、ICMP協議數據包、TCP協議數據包、UDP協議數據包進行抓捕并分析,應用層協議數據包的分析可在后續開發中追加。
函數回調關系如圖1所示。
三、實現
本網絡捕獲器主要通過Libpcap實現,利用Qt制作一個界面。
在文字“請輸入命令”下面的輸入框中輸入所要捕捉的數據包類型(如./ip),點擊“運行”。即可對IP數據包進行捕獲、分析。如圖2所示。
四、結束語
網絡數據包捕獲器是對網絡進行后續分析、診斷、安全防范的基礎,對網絡進行更深層次的探究、分析具有重要意義。
參考文獻
[1]吳功宜,董大凡,王[王][君],劉乾. 計算機網絡高級軟件編程技術. 北京:清華大學出版社,2011
[2]程光,楊望. 網絡安全實驗教程. 北京:北京交通大學出版社,2013
[3]劉文濤. 網絡安全開發包詳解. 北京:電子工業出版社,2005
【摘要】目前Windows環境下的數據包捕獲器已有很多,但Linux環境下的數據包捕獲器還未成熟。這里利用Libpcap這一數據包捕獲開發包工具,在網卡為混雜模式時對數據包進行捕獲,通過使用BPF過濾機制,過濾掉網絡上不需要的數據包,而只捕獲用戶感興趣的數據包,并對數據包進行分析。
【關鍵詞】網絡協議Libpcap數據包捕獲
一、引言
現如今,隨著Linux操作系統的推廣,Linux下的相關監控、維護需求也逐漸增多,本捕獲器正是利用了這一優勢。數據包捕獲開發包Libpcap(The Packet Capture Library)是一個平臺獨立的網絡數據包捕獲開發包。它是一個高層的編程接口,隱藏了操作系統的細節,可以捕獲網絡上的所有數據包,包括到達其他主機的數據包。Libpcap中使用了BPF過濾機制,這部分是基于內核的過濾模塊,它使得Libpcap具有捕獲特定數據包的功能。
二、系統結構設計
總體思想:根據以太網協議類型字段ethernet _type,判斷數據包協議類型是ARP、IP還是RARP,若為IP協議數據包,則繼續分析其類型字段,判斷數據包協議是TCP、UDP還是ICMP。若為TCP、UDP,即可根據其端口號判斷在其基礎上的應用層協議。若為ICMP可根據其類型進一步分析ICMP數據包。
本網絡數據包捕獲器可對以太網協議數據包、ARP協議數據包、RARP協議數據包、IP協議數據包、ICMP協議數據包、TCP協議數據包、UDP協議數據包進行抓捕并分析,應用層協議數據包的分析可在后續開發中追加。
函數回調關系如圖1所示。
三、實現
本網絡捕獲器主要通過Libpcap實現,利用Qt制作一個界面。
在文字“請輸入命令”下面的輸入框中輸入所要捕捉的數據包類型(如./ip),點擊“運行”。即可對IP數據包進行捕獲、分析。如圖2所示。
四、結束語
網絡數據包捕獲器是對網絡進行后續分析、診斷、安全防范的基礎,對網絡進行更深層次的探究、分析具有重要意義。
參考文獻
[1]吳功宜,董大凡,王[王][君],劉乾. 計算機網絡高級軟件編程技術. 北京:清華大學出版社,2011
[2]程光,楊望. 網絡安全實驗教程. 北京:北京交通大學出版社,2013
[3]劉文濤. 網絡安全開發包詳解. 北京:電子工業出版社,2005
【摘要】目前Windows環境下的數據包捕獲器已有很多,但Linux環境下的數據包捕獲器還未成熟。這里利用Libpcap這一數據包捕獲開發包工具,在網卡為混雜模式時對數據包進行捕獲,通過使用BPF過濾機制,過濾掉網絡上不需要的數據包,而只捕獲用戶感興趣的數據包,并對數據包進行分析。
【關鍵詞】網絡協議Libpcap數據包捕獲
一、引言
現如今,隨著Linux操作系統的推廣,Linux下的相關監控、維護需求也逐漸增多,本捕獲器正是利用了這一優勢。數據包捕獲開發包Libpcap(The Packet Capture Library)是一個平臺獨立的網絡數據包捕獲開發包。它是一個高層的編程接口,隱藏了操作系統的細節,可以捕獲網絡上的所有數據包,包括到達其他主機的數據包。Libpcap中使用了BPF過濾機制,這部分是基于內核的過濾模塊,它使得Libpcap具有捕獲特定數據包的功能。
二、系統結構設計
總體思想:根據以太網協議類型字段ethernet _type,判斷數據包協議類型是ARP、IP還是RARP,若為IP協議數據包,則繼續分析其類型字段,判斷數據包協議是TCP、UDP還是ICMP。若為TCP、UDP,即可根據其端口號判斷在其基礎上的應用層協議。若為ICMP可根據其類型進一步分析ICMP數據包。
本網絡數據包捕獲器可對以太網協議數據包、ARP協議數據包、RARP協議數據包、IP協議數據包、ICMP協議數據包、TCP協議數據包、UDP協議數據包進行抓捕并分析,應用層協議數據包的分析可在后續開發中追加。
函數回調關系如圖1所示。
三、實現
本網絡捕獲器主要通過Libpcap實現,利用Qt制作一個界面。
在文字“請輸入命令”下面的輸入框中輸入所要捕捉的數據包類型(如./ip),點擊“運行”。即可對IP數據包進行捕獲、分析。如圖2所示。
四、結束語
網絡數據包捕獲器是對網絡進行后續分析、診斷、安全防范的基礎,對網絡進行更深層次的探究、分析具有重要意義。
參考文獻
[1]吳功宜,董大凡,王[王][君],劉乾. 計算機網絡高級軟件編程技術. 北京:清華大學出版社,2011
[2]程光,楊望. 網絡安全實驗教程. 北京:北京交通大學出版社,2013
[3]劉文濤. 網絡安全開發包詳解. 北京:電子工業出版社,2005