Wireshark

Wireshark

網絡封包分析軟件
Wireshark(前稱Ethereal)是目前應用最廣泛的網絡數據包分析軟件之一,功能十分強大。[1]網絡封包分析軟件的功能是撷取網絡封包,并盡可能顯示出最為詳細的網絡封包資料。Wireshark使用WinPCAP作為接口,直接與網卡進行數據報文交換。網絡封包分析軟件的功能可想像成"電工技師使用電表來量測電流、電壓、電阻"的工作-隻是将場景移植到網絡上,并将電線替換成網絡線。在過去,網絡封包分析軟件是非常昂貴,或是專門屬于營利用的軟件。Ethereal的出現改變了這一切。在GNUGPL通用許可證的保障範圍底下,使用者可以以免費的代價取得軟件與其源代碼,并擁有針對其源代碼修改及客制化的權利。Ethereal是目前全世界最廣泛的網絡封包分析軟件之一。
    軟件名稱: 軟件平台: 軟件語言: 開發商: 軟件授權: 軟件版本: 軟件大小: 中文名:Wireshark 前稱:Ethereal 分類:軟件 用途:數據報文交換

軟件介紹

網絡封包分析軟件的功能可想像成"電工技師使用電表來量測電流、電壓、電阻"的工作-隻是将場景移植到網絡上,并将電線替換成網絡線。在過去,網絡封包分析軟件是非常昂貴,或是專門屬于營利用的軟件。Ethereal的出現改變了這一切。在GNUGPL通用許可證的保障範圍底下,使用者可以以免費的代價取得軟件與其源代碼,并擁有針對其源代碼修改及客制化的權利。Ethereal是目前全世界最廣泛的網絡封包分析軟件之一。

Wireshark的前世今生

PeimanLin2013-7-11上午1:42

故事要從上世紀90年代開始說起。那時的IT業欣欣向榮:摩托羅拉正野心勃勃地實施銥星計劃;Google的兩位創始人還在房東的車庫裡研究搜索引擎;最受國人關注的王安電腦也找到了一位靠譜的CEO。而故事的主人公GeraldCombs當時還默默無聞。和那個時代的很多IT青年一樣,Gerald熱情、上進、動手能力極強。那時他在一家小型網絡提供商就職,時常需要分析軟件來輔助工作。可惜這樣的軟件極少,而且一個license就價值80,000美金。

Gerald沒有下載盜版軟件,而是決定自己寫一個。他單槍匹馬奮戰了幾個月的時間,專業人士都能想見其中的艱辛。但是Gerald至今還是輕描淡寫,”Ispentseveralmonthsdoingresearchandmakingnotes.”終于在1998年7月,第一版Ethereal面世了。Gerald擁有代碼的版權,而Ethereal商标屬于他所在的公司NIS(NetworkIntegrationServices)。由于Ethereal是以GNUGPL開源許可證發布的,世界各地的開發者紛紛參與到這個項目中。沒過多久,它就涵蓋了世界上大多數通信協議,成為廣受歡迎的網絡分析軟件。如果它當年進入中國,也許會被用來盜取QQ(當時的QQ密碼還是明文的)。當然它的真正用途是在企業環境裡診斷各種問題,從網絡到WindowsDomain,再到各種網絡應用都用得上。而且它是完全免費的,每個願意學習的工程師都可以受益。頗具喜感的是,eBay上居然有人在銷售,還真的賣出去了。

世界的變化總是超乎我們的想象,尤其是在IT業裡。沒過幾年,銥星計劃徹底破産;Google成了最大的網絡公司;而王安電腦也賣了個好價錢。隻有Gerald沒有變化,一直在兢兢業業地為Ethereal添加新協議。中間僅僅發生過一個小插曲。2006年他離開NIS,加入了CACETechnologies。由于和老東家在Ethereal的商标問題上無法達成一緻,Gerald把項目改名為Wireshark,從此代碼都更新到Wirenshark裡。Ethereal這個風靡多年的項目停止了,隻留下www.ethereal.com域名。至今還能訪問它,但是會被重定向到一家叫AOS的公司。為什麼不是重定向到NIS呢?因為NIS在2011年被AOS合并了。AOS的一項業務就是實施EMC和Vmware解決方案,而這兩家IT巨頭的董事會主席叫JoeTucci,他就是王安電腦在90年代的CEO。

Wireshark延續着Ethereal的成功,2011年在SecTools排行第一,2012年被Insecure.org評為”No.1PacketSniffers”。美國的技術作家們開始為它着書立說,中國的出版社也在引進。值得一提的是,CACE後來被Riverbed收購了。很多中國工程師可能覺得Riverbed名不見經傳,但說到Linux裡常用的tcpdump命令就不會陌生了。Tcpdump的開發者之一就是Riverbed的CTOSteveMcCannE。而Wincap的開發者LorisDegioanni也在Riverbed服務,似乎冥冥之中自有天意。

Gerald不久前在Twitter上宣布,“Wiresharkis,andwillalwaysbeopensource。”其實在我眼裡,就算走向商業化也無妨。開源當然高尚,商業也不是罪惡。一個IT人的成功,可以像Joe一樣帶領一個出色的公司;也可以向Gerald一樣,創造一個傳世的作品。

應用

Wireshark使用目的

以下是一些使用Wireshark目的的例子:

網絡管理員使用Wireshark來檢測網絡問題,網絡安全工程師使用Wireshark來檢查資訊安全相關問題,開發者使用Wireshark來為新的通訊協定除錯,普通使用者使用Wireshark來學習網絡協定的相關知識。當然,有的人也會“居心叵測”的用它來尋找一些敏感信息……

Wireshark不是入侵偵測系統(IntrusionDetectionSystem,IDS)。對于網絡上的異常流量行為,Wireshark不會産生警示或是任何提示。然而,仔細分析Wireshark撷取的封包能夠幫助使用者對于網絡行為有更清楚的了解。Wireshark不會對網絡封包産生内容的修改,它隻會反映出目前流通的封包資訊。Wireshark本身也不會送出封包至網絡上。

發展曆程

1997年底,GeraldCombs需要一個能夠追蹤網絡流量的工具軟件作為其工作上的輔助。因此他開始撰寫Ethereal軟件。Ethereal在經過幾次中斷開發的事件過後,終于在1998年7月釋出其第一個版本v0.2.0。自此之後,Combs收到了來自全世界的修補程式、錯誤回報與鼓勵信件。Ethereal的發展就此開始。不久之後,GilbertRamirez看到了這套軟件的開發潛力并開始參予低階程式的開發。

1998年10月,來自NetworkAppliance公司的GuyHarris在尋找一套比tcpview(另外一套網絡封包撷取程式)更好的軟件。于是他也開始參與Ethereal的開發工作。1998年底,一位在教授TCP/IP課程的講師RichardSharpe,看到了這套軟件的發展潛力,而後開始參與開發與加入新協定的功能。在當時,新的通訊協定的制定并不複雜,因此他開始在Ethereal上新增的封包撷取功能,幾乎包含了當時所有通訊協定。

自此之後,數以千計的人開始參與Ethereal的開發,多半是因為希望能讓Ethereal撷取特定的,尚未包含在Ethereal默認的網絡協定的封包而參予新的開發。2006年6月,因為商标的問題,Ethereal更名為Wireshark。

工作流程

(1)确定Wireshark的位置。如果沒有一個正确的位置,啟動Wireshark後會花費很長的時間捕獲一些與自己無關的數據。

(2)選擇捕獲接口。一般都是選擇連接到Internet網絡的接口,這樣才可以捕獲到與網絡相關的數據。否則,捕獲到的其它數據對自己也沒有任何幫助。

(3)使用捕獲過濾器。通過設置捕獲過濾器,可以避免産生過大的捕獲文件。這樣用戶在分析數據時,也不會受其它數據幹擾。而且,還可以為用戶節約大量的時間。

(4)使用顯示過濾器。通常使用捕獲過濾器過濾後的數據,往往還是很複雜。為了使過濾的數據包再更細緻,此時使用顯示過濾器進行過濾。

(5)使用着色規則。通常使用顯示過濾器過濾後的數據,都是有用的數據包。如果想更加突出的顯示某個會話,可以使用着色規則高亮顯示。

(6)構建圖表。如果用戶想要更明顯的看出一個網絡中數據的變化情況,使用圖表的形式可以很方便的展現數據分布情況。

(7)重組數據。Wireshark的重組功能,可以重組一個會話中不同數據包的信息,或者是一個重組一個完整的圖片或文件。由于傳輸的文件往往較大,所以信息分布在多個數據包中。為了能夠查看到整個圖片或文件,這時候就需要使用重組數據的方法來實現。

相關詞條

相關搜索

其它詞條