網絡協議是用於不一樣計算機之間進行網絡通訊的。網絡協議是網絡上全部設備(如網絡服務器、計算機、交換機、路由器等)之間通訊規則的集合,它規定了通訊時信息必須採用的格式和這些格式的意義。常見的協議有TCP/IP協議、IPX/SPX協議、NetBEUI協議等。本章將介紹將簡要講解TCP/IP網絡協議。本文選自《Wireshark數據抓包分析(網絡協議篇)》安全
抓包工具就是用來將網絡傳輸發送與接收的數據包進行截獲、重發、編輯、轉存等操做,也用來檢查網絡安全,但也每每被某些人用來網遊做弊等。抓包工具能夠在Windows、Unix等各類平臺運行網絡監聽軟件,主要是針對TCP/IP協議的不安全性對運行該協議的機器進行監聽。本節將介紹數據抓包原理及工具。服務器
數據在網絡上以很小的稱爲幀的單位傳輸的。幀由幾部分構成,不一樣的部分執行不一樣的功能。幀經過特定的稱爲網絡驅動程序的軟件進行成型,而後經過網卡發送到網線上,經過網線到達它們的目的機器,在目的機器的一端執行相反的過程。接收端機器的以太網卡捕獲到這些幀,並告訴操做系統幀已到達,而後對其進行存儲。就在這個傳輸和接收過程當中,嗅探器(抓包工具)會帶來安全方面的問題。本文選自《Wireshark數據抓包分析(網絡協議篇)》網絡
每個在局域網(LAN)上的工做站都有其硬件地址,這些地址唯一地表示了網絡上的機器(這一點與Internet地址系統比較類似)。當用戶發送一個數據包時,若是爲廣播包,則可達到局域網中的全部機器。若是爲單播包,則只能到達處於同一碰撞域中的機器。tcp
在通常狀況下,網絡上全部的機器均可以「聽」到經過的流量,但對不屬於本身的數據包則不予響應。換句話說,工做站A不會捕獲屬於工做站B的數據,而是簡單地忽略這些數據。若是某個工做站的網絡接口處於混雜模式,那麼它就能夠捕獲網絡上全部的數據包和幀。工具
在計算機中,可以使用的抓包工具備不少,如SmartSniff、Sniffer、HTTP Analyzer、Wireshark等。目前最經常使用的數據抓包工具就是Wireshark,因此本書以Wireshark抓包工具爲例,捕獲各類TCP/IP協議數據包。本節將詳細介紹Wireshark工具。本文選自《Wireshark數據抓包分析(網絡協議篇)》佈局
1.Wireshark簡史spa
Wireshark的歷史至關久遠,其最初的版本叫作Ethereal,由畢業於密蘇里大小堪薩斯城分校計算機科學專業的Gerald Combs出於項目須要而開發,並與1998年以GNU Public Licence(GPL)開源許可證發佈。操作系統
在發佈了Ethereal 8年以後,Combs辭職另謀高就,可是在那個時候他的僱主公司掌握着Ethereal的商標權,而Combs也沒能和其僱主就取得Ethereal商標達成協議。因而Combs和整個開發團隊在2006年中的時候將這個項目從新命名爲Wireshark。命令行
Wireshark隨後迅速地取得了大衆的青睞,而其合做開發團隊也壯大到500人以上。然而以前的Ethereal項目卻再也沒有前進過一步。orm
2.Wireshark的優勢
Wireshark在平常應用中具備許多優勢,不管是針對初學者仍是數據包分析專家,Wireshark都能經過豐富的功能來知足用戶的須要。下面將介紹Wireshark的一些優勢,以下所示:本文選自《Wireshark數據抓包分析(網絡協議篇)》
q 支持的協議:Wireshark在支持協議的有不少,目前已經支持超過850種協議。這些協議包括從最基礎的IP協議和DHCP協議到高級的專用協議,如AppleTalk和BitTorrent等。因爲Wireshark在開源模式下進行開發,每次更新都會增長一些新協議的支持。
q 用戶友好度:Wireshark的界面是數據包嗅探工具中最容易理解的工具之一。它基於GUI,並提供了清晰的菜單欄和簡明的佈局。爲了加強實用性,它還提供了不一樣協議的彩色高亮,以及經過圖形展現原始數據細節等不一樣功能。與tcpdump使用複雜命令行的那些數據包嗅探工具相比,Wireshark的圖形化界面對於那些數據包分析的初學者而言,是十分方便的。
q 價格:因爲Wireshark是開源的,它在價格上面是無以匹敵的。Wireshark是遵循GPL協議發佈的自由軟件,任何人不管出於私人仍是商業目的,均可如下載而且使用Wireshark。
q 程序支持:一個軟件的成敗一般取決於其程序支持的好壞。雖然像Wireshark這樣的自由分發軟件不多會有正式的程序支持,而是依賴於開源社區的用戶羣。可是幸運的是,Wireshark社區是最活躍的開源項目社區之一。Wireshark網頁上給出了許多程序支持的相關連接,包括在線文檔、支持與開發wiki、FAQ,並能夠註冊Wireshark開發者都關注的郵件列表。CACE Technologes經過SharkNet項目也對外提供付費支持。
q 支持的操做系統:Wireshark對主流的操做系統都提供了支持,其中包括Windows、MAC OS X以及基於Linux的系統。本文選自《Wireshark數據抓包分析(網絡協議篇)》