大家好!歡迎大家參加Sniffer的認(rèn)證課程!
先自我介紹一下!我叫范偉導(dǎo),這是我的郵件,我現(xiàn)在沒(méi)有工作(同學(xué)們:自由職業(yè)者)可以這么說(shuō)。 介紹一下我的經(jīng)歷:畢業(yè)后我在一個(gè)臺(tái)資電腦廠(chǎng)工作了一年,做硬件的。 后來(lái)到了日本三洋工作,作X400的軟件開(kāi)發(fā),做ERP,用RPG開(kāi)發(fā),做了4年 后來(lái)到了神州數(shù)碼,作CISCO網(wǎng)絡(luò),原來(lái)在技術(shù)中心做實(shí)施,后來(lái)在培訓(xùn)中心做講師,一共做了5年。 現(xiàn)在我是CISCO和Sniffer的授權(quán)講師,不過(guò)現(xiàn)在我不想做CISCO了,想做Sniffer,因?yàn)槲矣X(jué)得網(wǎng)絡(luò)分析是一個(gè)很好的技術(shù)方向。等一下我還會(huì)跟大家聊一聊我們?cè)撏囊粋€(gè)方向發(fā)展。 先看一下我們這個(gè)課程,這個(gè)課程事實(shí)上是兩門(mén)課,第一門(mén)我們介紹怎樣用Sniffer來(lái)做網(wǎng)絡(luò)故障診斷,還有網(wǎng)絡(luò)管理的一些方法和思路,第二門(mén)課我們介紹如何做應(yīng)用的分析,這是Sniffer的新課程,我個(gè)人覺(jué)得非常好,以前的幾個(gè)班學(xué)員也很喜歡。第一門(mén)課我們會(huì)講3天,第二門(mén)課我們會(huì)講2天。 接下來(lái)的半個(gè)小時(shí)我們不講書(shū)本知識(shí),講講我的經(jīng)歷和Sniffer究竟能用來(lái)做什么,我們?yōu)槭裁匆獙W(xué)Sniffer,其實(shí)我的目的是提起大家的學(xué)習(xí)興趣,大家愿意學(xué),我才講的起勁。要不我一邊講,大家在噼噼啪啪上網(wǎng),那我就講不下去了(同學(xué)們笑)。 大家做網(wǎng)絡(luò)都很多年了,想想我們以前的10兆以太網(wǎng),現(xiàn)在的萬(wàn)兆以太網(wǎng),想想14.4k的modem,現(xiàn)在的2M寬帶,以前的x25,楨中繼,現(xiàn)在的SDH,MSTP,裸光纖。大家都經(jīng)歷這些,但我們才工作幾年?就這幾年,變化這么大,我不知道大家的工資有沒(méi)有變化這么大,(同學(xué)們大笑),從10兆到萬(wàn)兆,1000倍,幾年工資張1000倍。有點(diǎn)難(同學(xué)們:不是有點(diǎn)難,是很難,不可能)。 再看看我們工作的變化,以前能配配路由器就很牛了,現(xiàn)在似乎誰(shuí)都會(huì)了,記得幾年前,我?guī)鸵粋€(gè)小集成商配一臺(tái)4000系列交換機(jī),收了2000元,15分鐘搞定。(同學(xué)們:好爽,介紹一些給我們做),沒(méi)有了 說(shuō)說(shuō)你們的工作。平常工作中做些什么(同學(xué)們:做做網(wǎng)線(xiàn),殺病毒,幫領(lǐng)導(dǎo)裝機(jī)器) 大家想想,這是我們想做的工作嗎,以前這些都不用我們做,現(xiàn)在大家感覺(jué)是不是地位在下降,工資也不漲,好歹我們也是蜘蛛級(jí)的人物呀,不是有個(gè)笑話(huà)說(shuō)蜜蜂是空姐,做網(wǎng)絡(luò)的是蜘蛛嗎。(同學(xué)們笑) 我們?cè)撛趺崔k? 現(xiàn)在說(shuō)說(shuō)我的觀點(diǎn),我們都希望工資能年年漲,不要求1000倍,(同學(xué)們:不要求那么高,一年20%就行了), 20%?不止吧,從畢業(yè)到現(xiàn)在,你們工資不止年均漲不止20%吧。 (同學(xué)們:我們不能跟您比) 也有可能,你們的起點(diǎn)高,我畢業(yè)的時(shí)候才有650元。 大家回顧一下,做IT的誰(shuí)的收入高? 1、銷(xiāo)售 2、領(lǐng)導(dǎo) 3、咨詢(xún)專(zhuān)家 4、售前工程師 5、售后工程師 我們?cè)谧挠?個(gè)是網(wǎng)絡(luò)中心的主任或科長(zhǎng),他們的收入肯定比一般工程師高,我祝愿你們步步高升,收入節(jié)節(jié)高。 在座大多數(shù)是網(wǎng)絡(luò)工程師,我們?cè)撛趺醋?,其?shí)你們現(xiàn)在的單位都很好,但將來(lái)怎樣很難知道,比如前幾年銀行的收入令人羨慕,現(xiàn)在他們卻擔(dān)心降工資,現(xiàn)在移動(dòng)的收入不錯(cuò)吧,我有汽車(chē)廠(chǎng)商的學(xué)員,他告訴我他們的收入比移動(dòng)好點(diǎn),(同學(xué)們:哇)這是他們自己說(shuō)的,好多少就沒(méi)說(shuō)了,還有某政府單位的,什么單位不便說(shuō),他們沒(méi)告訴我他們的收入,只說(shuō),價(jià)格少于4萬(wàn)的筆記本他們不用,哇靠,4萬(wàn)的筆記本,什么配置?(同學(xué)們:那是服務(wù)器) 我們不能比,人比人,氣死人。我們沒(méi)法進(jìn)入這些公司的,還是腳踏實(shí)地一點(diǎn)好,但我們做技術(shù)的也要考慮如何提高我們的收入,做技術(shù)的要提高收入,地位是關(guān)鍵,前面大家說(shuō)只做做線(xiàn),殺殺病毒,我們的地位在下降,工資怎么長(zhǎng)得起來(lái)呢?想想我們做技術(shù)的,誰(shuí)的收入高,做數(shù)據(jù)庫(kù)的比做服務(wù)器的高,為什么Oracle那么火,做服務(wù)器的比寫(xiě)程序的高,寫(xiě)程序的比做網(wǎng)絡(luò)高,這是普遍現(xiàn)象,不說(shuō)特殊情況。其實(shí)大家發(fā)現(xiàn)一個(gè)特點(diǎn)沒(méi)有,凡是掌握企業(yè)關(guān)鍵業(yè)務(wù)的收入都很高,你看作數(shù)據(jù)庫(kù)的,數(shù)據(jù)庫(kù)壞了,企業(yè)完蛋了,領(lǐng)導(dǎo)當(dāng)然重視,現(xiàn)在不僅講存儲(chǔ),還講災(zāi)備,你看很多銀行,北京一個(gè)數(shù)據(jù)中心,上海一個(gè)數(shù)據(jù)中心。 我們網(wǎng)絡(luò)怎樣,設(shè)計(jì)的都是高可靠性的端到端備份,出問(wèn)題的機(jī)會(huì)很少,而當(dāng)應(yīng)用出什么問(wèn)題,都說(shuō)是網(wǎng)絡(luò)問(wèn)題。舉個(gè)例子,有個(gè)單位(稅務(wù)的學(xué)員告訴我的),有一天應(yīng)用突然變慢,大家都說(shuō)網(wǎng)絡(luò)慢了,我們用盡troubleshooting的技術(shù)也發(fā)現(xiàn)不了問(wèn)題,結(jié)果作數(shù)據(jù)庫(kù)的工程師偷偷改一下表空間,好了,沒(méi)問(wèn)題了,我們不知道怎么好了,做數(shù)據(jù)庫(kù)的不說(shuō)他們有問(wèn)題,還說(shuō)網(wǎng)絡(luò)好了,領(lǐng)導(dǎo)問(wèn)我網(wǎng)絡(luò)怎么好的,我不知道呀,領(lǐng)導(dǎo)說(shuō):趕快查出原因,避免再出現(xiàn)類(lèi)似問(wèn)題,哇塞,怎么查,本來(lái)網(wǎng)絡(luò)就沒(méi)問(wèn)題,查什么查。(同學(xué)們笑) 所以現(xiàn)在大家用一個(gè)字來(lái)形容我們的工作?你們會(huì)用什么字(同學(xué)們:累、苦) 很貼切,苦、累 所以我們不能一直停留在網(wǎng)絡(luò)的troubleshooting,我們必須提高我們的地位,要不我們會(huì)累死。 怎么提高地位,我們必須了解我們的業(yè)務(wù),也就是要了解應(yīng)用,了解應(yīng)用在我們網(wǎng)絡(luò)上的行為特征,很重要的一個(gè)詞行為特征。當(dāng)我們了解了業(yè)務(wù)的行為特征,我們能定位某一個(gè)問(wèn)題的真正故障點(diǎn),舉個(gè)例子:網(wǎng)絡(luò)應(yīng)用變慢,可能的原因有什么?網(wǎng)絡(luò)問(wèn)題,服務(wù)器問(wèn)題,數(shù)據(jù)庫(kù)問(wèn)題,應(yīng)用程序問(wèn)題,客戶(hù)機(jī)問(wèn)題。如果我們能夠判斷是哪一部分問(wèn)題,我們就有發(fā)言權(quán)了,比如說(shuō)剛才那種情況,如果我們直接說(shuō)這是數(shù)據(jù)庫(kù)問(wèn)題,不是網(wǎng)絡(luò)問(wèn)題,領(lǐng)導(dǎo)會(huì)問(wèn),你憑什么說(shuō)是數(shù)據(jù)庫(kù)問(wèn)題,你可以拿出Sniffer,專(zhuān)家系統(tǒng)上寫(xiě)著,DB Slow Server response診斷,(范老師在演示)再看解碼,做一個(gè)用戶(hù)驗(yàn)證操作,花了1.731秒,有根有據(jù),大家想一想,有了Sniffer我們可以了解我們的業(yè)務(wù)行為特征,可以排除我們的責(zé)任,不但工作輕松了,地位也提高了。(同學(xué)們笑) 以前我們應(yīng)用出現(xiàn)問(wèn)題的時(shí)候我們總是分頭查找問(wèn)題,結(jié)果往往是沒(méi)有結(jié)果,因?yàn)檫@種查找方式范圍太大了,我們做troubleshooting第一步應(yīng)該是:隔離故障。
如果我們有了Sniffer,首先用Sniffer看一下,最有可能是哪一部分問(wèn)題,再安排檢查,這樣不但節(jié)省人力,速度會(huì)更快,效率也更高。
如果有人問(wèn)我們Sniffer是什么?大家都會(huì)說(shuō)是協(xié)議分析儀,你看sniffer網(wǎng)站([url]www.networkgeneral.com[/url]) 上說(shuō)的是應(yīng)用和網(wǎng)絡(luò)分析系統(tǒng)。究竟Sniffer是什么樣的一個(gè)東西,我們要了解他的發(fā)展過(guò)程。其實(shí)很多類(lèi)似的產(chǎn)品比如ethereal,netscout,wildpacket等都有類(lèi)似的發(fā)展過(guò)程 第一階段是抓包和解碼,也就是把網(wǎng)絡(luò)上的數(shù)據(jù)包抓下來(lái),然后進(jìn)行解碼,那時(shí)候誰(shuí)能解開(kāi)的協(xié)議多,誰(shuí)就是老大,Sniffer當(dāng)時(shí)能解開(kāi)的協(xié)議最多,也就理所當(dāng)然地成了老大,現(xiàn)在Sniffer能解開(kāi)550種協(xié)議,還是業(yè)界最多的, 第二階段是專(zhuān)家系統(tǒng),也就是通過(guò)抓下來(lái)的數(shù)據(jù)包,根據(jù)他的特征和前后時(shí)間戳的關(guān)系,判斷網(wǎng)絡(luò)的數(shù)據(jù)流有沒(méi)有問(wèn)題,是哪一層的問(wèn)題,有多嚴(yán)重,專(zhuān)家系統(tǒng)都會(huì)給出建議和解決方案,現(xiàn)在Sniffer的專(zhuān)家系統(tǒng)還是業(yè)界最強(qiáng)的 第三階段:是把網(wǎng)絡(luò)分析工具發(fā)展成網(wǎng)絡(luò)管理工具,為什么要這樣,如果Sniffer知識(shí)用作網(wǎng)絡(luò)分析,那Sniffer的軟件就夠用了,現(xiàn)在軟件的portable基本上都是盜版的,sniffer沒(méi)錢(qián)賺了,所以它必須往網(wǎng)絡(luò)管理方向轉(zhuǎn),要作為網(wǎng)絡(luò)管理工具,就必須能部署在網(wǎng)絡(luò)中心,能長(zhǎng)期監(jiān)控,能主動(dòng)管理網(wǎng)絡(luò),能排除潛在問(wèn)題,要做到這些,就要求有更高的性能,所以Sniffer就有了相應(yīng)的硬件產(chǎn)品,比如說(shuō)分布式硬件平臺(tái),InfiniStream等,我知道在座各位都買(mǎi)了Sniffer的硬件,這時(shí)候如果用軟件的Sniffer性能就不行了。
#p#
我們來(lái)看一下Sniffer的七大monitor功能,有Dashboard,hosttable,matrix,ART,protocol distribution,history sample,global statistics 我們一個(gè)一個(gè)來(lái)看,先看dashboard。 這個(gè)大家很熟悉了,我不用多講,dashboard有3個(gè)儀表,分別是使用率,每秒鐘包數(shù)量,每秒鐘錯(cuò)誤率,下面都有兩個(gè)數(shù)字,前面一個(gè)表示當(dāng)前值,后面一個(gè)表示最大值。 下面還有l(wèi)ong term,和short term Long term 每30分鐘采樣一次,一共可以采樣24小時(shí),short term 每30秒鐘采樣一次,可以采樣25分鐘 大家自己試一下,首先把file里面的loopback 選上,這樣我們發(fā)的數(shù)據(jù)包就不會(huì)發(fā)到網(wǎng)絡(luò)中去,然后打開(kāi)101目錄里的TCPdemo7a那個(gè)trace file ,再用packet general 發(fā)包,選send current buffer,連續(xù)發(fā)送。(我們是跟著范老師做的) 好了,大家試了一遍,感覺(jué)應(yīng)該是一樣的,就是這有什么用?沒(méi)用,對(duì)吧,我也這樣覺(jué)得(同學(xué)們笑) 但如果你要監(jiān)控某一臺(tái)服務(wù)器的時(shí)候,這個(gè)是有用的,比如你把一臺(tái)服務(wù)器的接口monitor 過(guò)來(lái),這樣你就可以看到這臺(tái)服務(wù)器的流量狀況了,這就是一個(gè)很好的基準(zhǔn)線(xiàn)呀。當(dāng)然大家用的是硬件產(chǎn)品,就更方便了。 大家注意到下面還有錯(cuò)誤報(bào)的統(tǒng)計(jì),要注意的是一般的網(wǎng)卡是抓不了錯(cuò)誤包的,要用專(zhuān)用網(wǎng)卡,一塊網(wǎng)卡上萬(wàn)塊,NG好黑呀(同學(xué)們笑) 其實(shí)大家知道通過(guò)交換機(jī)的存儲(chǔ)轉(zhuǎn)發(fā),基本上很少錯(cuò)誤包,所以不用關(guān)注它。 在這里我想解釋一下以太網(wǎng)的錯(cuò)誤包,這對(duì)大家學(xué)習(xí)網(wǎng)絡(luò)是很有幫助的,特別是了解一下封裝的概念。
(請(qǐng)看下一頁(yè):以太網(wǎng)為什么要64個(gè)字節(jié))
(這是范老師的板書(shū),我畫(huà)不出來(lái),大家將就點(diǎn)吧) (這是范老師的板書(shū),我畫(huà)不出來(lái),大家將就點(diǎn)吧) 以太網(wǎng)是無(wú)連接的,不可靠的服務(wù),采用盡力傳輸?shù)臋C(jī)制。以太網(wǎng)CSMA/CD我就不多講了,我相信大家都了解這個(gè)原理。 以太網(wǎng)是不可靠的,這意味著它并不知道對(duì)方有沒(méi)有收到自己發(fā)出的數(shù)據(jù)包,但如果他發(fā)出的數(shù)據(jù)包發(fā)生錯(cuò)誤,他會(huì)進(jìn)行重傳。以太網(wǎng)的錯(cuò)誤主要是發(fā)生碰撞,碰撞是指兩臺(tái)機(jī)器同時(shí)監(jiān)聽(tīng)到網(wǎng)絡(luò)是空閑的,同時(shí)發(fā)送數(shù)據(jù),就會(huì)發(fā)生碰撞,碰撞對(duì)于以太網(wǎng)來(lái)說(shuō)是正常的。 我們來(lái)看一下,假設(shè)A檢測(cè)到網(wǎng)絡(luò)是空閑的,開(kāi)始發(fā)數(shù)據(jù)包,盡力傳輸,當(dāng)數(shù)據(jù)包還沒(méi)有到達(dá)B時(shí),B也監(jiān)測(cè)到網(wǎng)絡(luò)是空閑的,開(kāi)始發(fā)數(shù)據(jù)包,這時(shí)就會(huì)發(fā)生碰撞,B首先發(fā)現(xiàn)發(fā)生碰撞,開(kāi)始發(fā)送碰撞信號(hào),所謂碰撞信號(hào),就是連續(xù)的01010101或者10101010,十六進(jìn)制就是55或AA。這個(gè)碰撞信號(hào)會(huì)返回到A,如果碰撞信號(hào)到達(dá)A時(shí),A還沒(méi)有發(fā)完這個(gè)數(shù)據(jù)包,A就知道這個(gè)數(shù)據(jù)包發(fā)生了錯(cuò)誤,就會(huì)重傳這個(gè)數(shù)據(jù)包。但如果碰撞信號(hào)會(huì)返回到A時(shí),數(shù)據(jù)包已經(jīng)發(fā)完,則A不會(huì)重傳這個(gè)數(shù)據(jù)包。 我們先看一下,以太網(wǎng)為什么要設(shè)計(jì)這樣的重傳機(jī)制。首先,以太網(wǎng)不想采用連接機(jī)制,因?yàn)闀?huì)降低效率,但他又想有一定的重傳機(jī)制,因?yàn)橐蕴W(wǎng)的重傳是微秒級(jí),而傳輸層的重傳,如TCP的重傳達(dá)到毫秒級(jí),應(yīng)用層的重傳更達(dá)到秒級(jí),我們可以看到越底層的重傳,速度越快,所以對(duì)于以太網(wǎng)錯(cuò)誤,以太網(wǎng)必須有重傳機(jī)制。 要保證以太網(wǎng)的重傳,必須保證A收到碰撞信號(hào)的時(shí)候,數(shù)據(jù)包沒(méi)有傳完,要實(shí)現(xiàn)這一要求,A和B之間的距離很關(guān)鍵,也就是說(shuō)信號(hào)在A和B之間傳輸?shù)膩?lái)回時(shí)間必須控制在一定范圍之內(nèi)。IEEE定義了這個(gè)標(biāo)準(zhǔn),一個(gè)碰撞域內(nèi),最遠(yuǎn)的兩臺(tái)機(jī)器之間的round-trip time 要小于512bit time.(來(lái)回時(shí)間小于512位時(shí),所謂位時(shí)就是傳輸一個(gè)比特需要的時(shí)間)。這也是我們常說(shuō)的一個(gè)碰撞域的直徑。 512個(gè)位時(shí),也就是64字節(jié)的傳輸時(shí)間,如果以太網(wǎng)數(shù)據(jù)包大于或等于64個(gè)字節(jié),就能保證碰撞信號(hào)到達(dá)A的時(shí)候,數(shù)據(jù)包還沒(méi)有傳完。 這就是為什么以太網(wǎng)要最小64個(gè)字節(jié),同樣,在正常的情況下,碰撞信號(hào)應(yīng)該出現(xiàn)在64個(gè)字節(jié)之內(nèi),這是正常的以太網(wǎng)碰撞,如果碰撞信號(hào)出現(xiàn)在64個(gè)字節(jié)之后,叫 late collision。這是不正常的。 我們以前學(xué)習(xí)CISCO網(wǎng)絡(luò)的時(shí)候,CISCO交換機(jī)有一種轉(zhuǎn)發(fā)方式叫fragment-free,叫無(wú)碎片轉(zhuǎn)發(fā),他就是檢查64個(gè)字節(jié)之內(nèi)有沒(méi)有錯(cuò)誤,有的話(huà)不轉(zhuǎn)發(fā),這樣就排除了正常的以太網(wǎng)錯(cuò)誤包。 (這是范老師的板書(shū),我畫(huà)不出來(lái),大家將就點(diǎn)吧) 我們?cè)賮?lái)看一看以太網(wǎng)的幀結(jié)構(gòu)。 要講幀結(jié)構(gòu),就要說(shuō)一說(shuō)OSI七層參考模型。七層參考模型大家很熟悉,以前我們看書(shū)的時(shí)候會(huì)覺(jué)得不知所云,我剛學(xué)的時(shí)候就是這感覺(jué),其實(shí)我們只要掌握兩點(diǎn)就行了。 一個(gè)是訪(fǎng)問(wèn)服務(wù)點(diǎn),每一層都對(duì)上層提供訪(fǎng)問(wèn)服務(wù)點(diǎn)(SAP),或者我們可以說(shuō),每一層的頭里面都有一個(gè)字段來(lái)區(qū)分上層協(xié)議。 比如說(shuō)傳輸層對(duì)應(yīng)上層的訪(fǎng)問(wèn)服務(wù)點(diǎn)就是端口號(hào),比如說(shuō)23端口是telnet,80端口是http。IP層的SAP是什么?(同學(xué)們沒(méi)說(shuō)話(huà)) 其實(shí)就是protocol字段,17表示上層是UDP,6是TCP,89是OSPF,88是EGIRP,1是ICMP等等。 以太網(wǎng)對(duì)應(yīng)上層的SAP是什么呢?就是這個(gè)type或length。比如 0800表示上層是IP,0806表示上層是ARP。我后面還會(huì)將各種以太網(wǎng)的幀類(lèi)型。 第二個(gè)要了解的就是對(duì)等層通訊,對(duì)等層通訊比較好理解,發(fā)送端某一層的封裝,接收端要同一層才能解封裝。 我們?cè)賮?lái)看看幀結(jié)構(gòu),以太網(wǎng)發(fā)送方式是一個(gè)幀一個(gè)幀發(fā)送的,幀與幀之間需要間隙。這個(gè)叫幀間隙IFG—InterFrame Gap IFG長(zhǎng)度是96bit。當(dāng)然還可能有Idle時(shí)間。 以太網(wǎng)的幀是從目的MAC地址到FCS,事實(shí)上以太網(wǎng)幀的前面還有preamble,我們把它叫做先導(dǎo)字段。作用是用來(lái)同步的,當(dāng)接受端收到preamble,就知道以太網(wǎng)幀就要來(lái)了。preamble有8個(gè)字節(jié)前面7個(gè)字節(jié)是10101010也就是16進(jìn)制的AA,最后一個(gè)字節(jié)是10101011,也就是AB,當(dāng)接受端接受到連續(xù)的兩個(gè)高點(diǎn)平,就知道接著來(lái)的就是D_mac。所以最后一個(gè)字節(jié)AB我們也叫他SFD(幀開(kāi)始標(biāo)示符)。 所以在以太網(wǎng)傳輸過(guò)程中,即使沒(méi)有idle,也就是連續(xù)傳輸,也有20個(gè)字節(jié)的間隔。對(duì)于大量64字節(jié)數(shù)據(jù)來(lái)說(shuō),效率也就顯得不高。 所以,有時(shí)我們用下載數(shù)據(jù)來(lái)檢查我們的網(wǎng)速,這是不完全準(zhǔn)確地,我們要了解他的傳輸特征,才能準(zhǔn)確判斷電信究竟給了你多少帶寬。我有一個(gè)移動(dòng)的學(xué)員,他說(shuō)用戶(hù)總懷疑我給他的帶寬不夠,其實(shí)我肯定給他兩兆了,所以有時(shí)運(yùn)營(yíng)商也挺不容易(同學(xué)們笑)。后來(lái)我告訴他怎么樣用sniffer來(lái)測(cè)帶寬,不知道他后來(lái)成功了嗎,我沒(méi)有得到反饋。后面我會(huì)介紹怎樣用Sniffer來(lái)做帶寬測(cè)試,非常精確的喔。我給很多用戶(hù)作過(guò)帶寬測(cè)試,他們大多都是懷疑電信給的帶寬不夠。(同學(xué)們問(wèn):有沒(méi)有不夠的時(shí)候?)我測(cè)試的案例里還沒(méi)有。還有就是幫集成商作方案驗(yàn)證,比如,集成商給用戶(hù)作了多鏈路捆綁,或路由負(fù)載均衡,用戶(hù)說(shuō)比原來(lái)更慢了,我去證明給用戶(hù)看,負(fù)載均衡確實(shí)做起來(lái)了,流量分擔(dān)很正常。(同學(xué)們問(wèn):那為什么會(huì)慢呢),這就涉及到應(yīng)用的特征和不同廠(chǎng)商采用均衡的機(jī)制。我還沒(méi)試過(guò)作進(jìn)一步分析。因?yàn)檫@是集成商的朋友叫我去幫忙的,我只要證明給用戶(hù)看方案沒(méi)問(wèn)題,并告訴集成商如何給用戶(hù)解釋就行了,在做下去,就會(huì)畫(huà)蛇添足了,因?yàn)榭赡茏層脩?hù)覺(jué)得我的水平比我朋友高,那不是幫倒忙了。(同學(xué)們笑)所以幫忙也要適可而止。 (同學(xué)們笑) 好了,有點(diǎn)扯遠(yuǎn)了。前面講這些主要是幫大家復(fù)習(xí)以下以太網(wǎng)知識(shí),大家別擔(dān)心,時(shí)間是足夠的,因?yàn)檫@門(mén)課里有很一些基礎(chǔ)的知識(shí),比如交換原理、vlan原理,那些知識(shí)我都會(huì)跳過(guò),我第一天的內(nèi)容不會(huì)很難,考慮到大家遠(yuǎn)道而來(lái),第一天都很累。但后面回越來(lái)越難,大家要有心理準(zhǔn)備。晚上要早點(diǎn)睡覺(jué)(同學(xué)們笑)。還有一個(gè),就是大家別指望能記得住我講得全部?jī)?nèi)容,今天講得明天還記得一點(diǎn),后天就全忘了,(同學(xué)們笑),到了課程結(jié)束的時(shí)候,基本上全忘光了,(同學(xué)們大笑),所以做筆記很重要,我建議大家把筆記寫(xiě)在書(shū)上,到時(shí)才對(duì)得起來(lái)。我也注意到一些同學(xué)在錄音,我知道的,不用放在桌子底下(同學(xué)們笑),那樣效果不好,(同學(xué)們大笑),其實(shí)這是不允許的,不過(guò)沒(méi)關(guān)系,只有一個(gè)要求,不要放在互聯(lián)網(wǎng)上。 (編者:寫(xiě)到這里,有點(diǎn)寫(xiě)不下去了,覺(jué)得很內(nèi)疚,覺(jué)得對(duì)不起范老師。我參加過(guò)很多培訓(xùn),范老師是我很喜歡的一個(gè)老師,他講課不會(huì)非常幽默,但很實(shí)用,這是因?yàn)樗泻芏嘟?jīng)歷,他在講課過(guò)程中,會(huì)補(bǔ)充很多課程以外的東西,比如很多網(wǎng)絡(luò)中的細(xì)節(jié)知識(shí),很多工作中的思路,我覺(jué)得這方面收獲很大,我個(gè)人覺(jué)得是對(duì)我知識(shí)的全面補(bǔ)充,學(xué)完之后覺(jué)得不僅學(xué)會(huì)了Sniffer,網(wǎng)絡(luò)管理的思路更清晰了,現(xiàn)在我指導(dǎo)工程師時(shí),套了很多范老師的話(huà),我覺(jué)得范老師很好。怎么辦?我在進(jìn)行思想斗爭(zhēng)。。。該不該再寫(xiě)下去。我想在論壇里發(fā)起投票,聽(tīng)聽(tīng)大家的意見(jiàn),我該不該再寫(xiě)下去。) (編者:范老師的課程內(nèi)容: 第一天 monitor功能,Sniffer的部署 第二天 expert,capture filter ,troubleshooting 第三天 decode,display filter ,trigger 第四天 應(yīng)用的類(lèi)型,應(yīng)用的剖析,應(yīng)用的分析思路 第五天 應(yīng)用性能的分析,應(yīng)用性能預(yù)測(cè))
#p#
我們看一下,Sniffer究竟有什么用? 第一,Sniffer可以幫助我們?cè)u(píng)估業(yè)務(wù)運(yùn)行狀態(tài),如果你能告訴老板說(shuō),我們的業(yè)務(wù)運(yùn)行正常,性能良好,比起你跟老板報(bào)告說(shuō)網(wǎng)絡(luò)沒(méi)有問(wèn)題,我想老板會(huì)更愿意聽(tīng)前面的報(bào)告,但我們要做這樣的報(bào)告,光說(shuō)是不行的,必須有根據(jù),我們能提供什么樣的根據(jù)呢。比如各個(gè)應(yīng)用的響應(yīng)時(shí)間,一個(gè)操作需要的時(shí)間,應(yīng)用帶寬的消耗,應(yīng)用的行為特征,應(yīng)用性能的瓶頸等等,到第二門(mén)課,我會(huì)告訴大家怎么做到有根有據(jù)。 第二,Sniffer能夠幫助我們?cè)u(píng)估網(wǎng)絡(luò)的性能,比如,各連路的使用率,網(wǎng)絡(luò)的性能的趨勢(shì),網(wǎng)絡(luò)中哪一些應(yīng)用消耗最多帶寬,網(wǎng)絡(luò)上哪一些用戶(hù)消耗最多帶寬,各分支機(jī)構(gòu)流量狀況,影響我們網(wǎng)絡(luò)性能的主要因素,我們可否做一些相應(yīng)的控制,等等 第三,Sniffer幫助我們快速定位故障,這個(gè)大家比較有經(jīng)驗(yàn),我們記住Sniffer的三大功能:monitor,expert,decode這三大功能都可以幫助我們快速定位故障,我后面通過(guò)案例演示給大家看,大家再做做實(shí)驗(yàn),很快就上手了(同學(xué)問(wèn):范老師,是否要學(xué)Sniffer必須對(duì)協(xié)議很熟,)不一定,我們可以通過(guò)Sniffer來(lái)學(xué)習(xí)各種協(xié)議,比如ospf,以前學(xué)網(wǎng)絡(luò)的時(shí)候,講OSPF的LSA好像很復(fù)雜,你用Sniffer看看,其實(shí)他的協(xié)議結(jié)構(gòu)還是不復(fù)雜的,一般情況下,我會(huì)要求學(xué)Sniffer的學(xué)員有CCNP的基礎(chǔ),或者有幾年的網(wǎng)絡(luò)管理經(jīng)驗(yàn),我自己也是這樣,剛開(kāi)始只是用Sniffer抓抓包,抓下來(lái)也不知道怎么分析,當(dāng)我學(xué)完CCNP后,學(xué)了CIT,以為自己不錯(cuò)了,會(huì)排除很多網(wǎng)絡(luò)故障,但實(shí)際上很多問(wèn)題我還是解決不了,比如網(wǎng)絡(luò)慢,他又不斷,斷了我很快能解決,網(wǎng)絡(luò)慢,或者丟包,一般的排錯(cuò)知識(shí)還是很難的,那時(shí)候開(kāi)始學(xué)Sniffer,才發(fā)現(xiàn)很好用 第四,Sniffer可以幫助我們排除潛在的威脅,我們網(wǎng)絡(luò)中有各種各樣的應(yīng)用,有一些是關(guān)鍵應(yīng)用,有一些是OA,有一些是非業(yè)務(wù)應(yīng)用,還有一些就是威脅,他不但對(duì)我們的業(yè)務(wù)沒(méi)有幫助,還可能帶來(lái)危害,比如病毒、木馬、掃描等,Sniffer可以快速地發(fā)現(xiàn)他們,并且發(fā)現(xiàn)攻擊的來(lái)源,這就為我們做控制提供根據(jù),比如我們要做QOS,不是說(shuō)隨便根據(jù)應(yīng)用去分配帶寬就解決了,我們要知道哪一些應(yīng)用要多少帶寬,帶寬如何分配,要有根有據(jù)。我們?cè)倩剡^(guò)頭看一下Sniffer什么時(shí)候開(kāi)始流行的,再2003年沖擊波發(fā)作的時(shí)候,很多Sniffer的用戶(hù)通過(guò)Sniffer快速定位受感染的機(jī)器,后來(lái)很多人都知道Sniffer可以用來(lái)發(fā)現(xiàn)病毒,Sniffer的知名度暴漲,盜版用戶(hù)也暴漲(同學(xué)們大笑),后來(lái)震蕩波發(fā)作的時(shí)候,很多人用Sniffer來(lái)協(xié)助解決問(wèn)題。我想強(qiáng)調(diào)的是Sniffer不是防病毒工具,這也只是他的一個(gè)用途,而且只對(duì)蠕蟲(chóng)類(lèi)型對(duì)網(wǎng)絡(luò)影響大的病毒有效,對(duì)于文件型的病毒,他很難發(fā)現(xiàn)。 另外要說(shuō)明的事,Sniffer還可以用來(lái)排除來(lái)自?xún)?nèi)部的威脅,現(xiàn)在我們網(wǎng)絡(luò)中有各種各樣的網(wǎng)絡(luò)安全產(chǎn)品,防火墻、IDS、防病毒軟件,他們都有相應(yīng)的功能,但真的有效嗎,能解決全部威脅嗎,我們要進(jìn)行評(píng)估,用Sniffer就能評(píng)估內(nèi)網(wǎng)的安全狀況,有沒(méi)有病毒,有沒(méi)有攻擊,有沒(méi)有掃描,像防火墻、IDS、防病毒軟件他們都是后知后覺(jué)的,它必須有特征才能阻絕,而Sniffer是即時(shí)監(jiān)控的工具,通過(guò)發(fā)現(xiàn)網(wǎng)絡(luò)中的行為特征,判斷網(wǎng)絡(luò)是否有異常流量,所以Sniffer可能比防病毒軟件更快地發(fā)現(xiàn)病毒。我在神州數(shù)碼的時(shí)候,沖擊波震蕩波都是我縣發(fā)現(xiàn)的,有趣的是當(dāng)時(shí)我都在上Sniffer的課,中午休息,我把sniffer駕到公司網(wǎng)絡(luò),再Hosttable看到廣州一臺(tái)機(jī)器很多廣播,接著廣州另外一臺(tái)機(jī)器也開(kāi)始發(fā)廣播,接著深圳也感染了,我馬上通知IT管理人員,他們把這幾臺(tái)機(jī)器斷網(wǎng),后來(lái)才知道有沖擊波病毒,防病毒軟件還不能殺。 剛才講到異常流量,這是一個(gè)很重要的概念,什么是異常流量?我們?cè)趺磁袛嗍欠癞惓?,這又涉及另外一個(gè)概念,叫基準(zhǔn)線(xiàn)分析,什么是基準(zhǔn)線(xiàn),基準(zhǔn)線(xiàn)是指我們網(wǎng)絡(luò)正常情況下的行為特征,包括利用率、應(yīng)用響應(yīng)時(shí)間、協(xié)議分布,各用戶(hù)貸款消耗等,不同工程師會(huì)有不同基準(zhǔn)線(xiàn),因?yàn)樗P(guān)心的內(nèi)容不同,只有知道我們網(wǎng)絡(luò)正常情況下的行為特征,我們才能判斷什么是異常流量。 第五,做流量的趨勢(shì)分析,通過(guò)長(zhǎng)期監(jiān)控,可以發(fā)現(xiàn)網(wǎng)絡(luò)流量的發(fā)展趨勢(shì),為我們將來(lái)網(wǎng)絡(luò)改造提供建議和依據(jù) 第六點(diǎn)就是應(yīng)用性能預(yù)測(cè),這點(diǎn)很有用,會(huì)用的人不多,我們第二門(mén)課會(huì)講,Sniffer能夠根據(jù)捕獲的流量分析一個(gè)應(yīng)用的行為特征,比如,你現(xiàn)在有一個(gè)新的應(yīng)用,還沒(méi)有上線(xiàn),我能評(píng)估他上線(xiàn)后的性能,比如在用戶(hù)在網(wǎng)絡(luò)中心有多快,用戶(hù)在省中心有多快,用戶(hù)在市中心有多快,都可以提供量化的預(yù)測(cè),準(zhǔn)確率挺高的,誤差不超過(guò)10%。我們還可以用她來(lái)評(píng)估應(yīng)用的瓶頸在哪,不同應(yīng)用瓶頸不同,比如有些應(yīng)用慢了,增加網(wǎng)絡(luò)帶寬效果很明顯,比如FTP這種應(yīng)用,有些應(yīng)用慢了增加帶寬沒(méi)什么效果,比如TELNET應(yīng)用,我們還可以預(yù)測(cè)網(wǎng)絡(luò)帶寬增加的效果,比如我將2兆提高到8兆應(yīng)用性能有多大的提升,Sniffer能比較準(zhǔn)確地預(yù)測(cè) 在這里我們提到三個(gè)重要概念,網(wǎng)絡(luò)行為特征,異常流量,基準(zhǔn)線(xiàn),大家理解了嗎
在這里,我不想太多介紹產(chǎn)品,我不是來(lái)推銷(xiāo)Sniffer的(同學(xué)們笑),我們主要探討網(wǎng)絡(luò)分析技術(shù) Sniffer的便攜式就是我們用的那種盜版軟件(同學(xué)們笑),我不用介紹了,這門(mén)課我們用Sniffer的便攜式來(lái)講,因?yàn)榉植际胶虸nfiniStream也有一樣的界面,上課的時(shí)候我們都是用便攜式。 Sniffer的分布式包括4100和6040,主要是放在網(wǎng)絡(luò)核心可以長(zhǎng)期監(jiān)控、分析,4100可以處理千兆流量,6040可以處理8千兆流量,這是業(yè)界性能最高的產(chǎn)品 Sniffer的InfiniStream的特點(diǎn)是可以長(zhǎng)期抓包,最多有4個(gè)T的存儲(chǔ)空間,可以長(zhǎng)期抓包,可以進(jìn)行回溯性分析,這點(diǎn)對(duì)有些用戶(hù)來(lái)說(shuō)很重要,比如今天早上10點(diǎn)半,某個(gè)應(yīng)用很慢,十分鐘后又正常了,如果沒(méi)有InfiniStream,流量沒(méi)有保存,我們就很難分析問(wèn)題在哪,如果有了InfiniStream,這些流量都會(huì)保存下來(lái),自動(dòng)的,就是長(zhǎng)期抓包,我們就可以找出當(dāng)時(shí)的流量,進(jìn)行分析,一個(gè)很好的設(shè)備,現(xiàn)在支持1800兆線(xiàn)速捕獲,這也是其他廠(chǎng)商沒(méi)有的。 這些你們買(mǎi)設(shè)備的時(shí)候代理都給你們說(shuō)清楚了,我就不多講了。
怎么樣,聽(tīng)了這么久,感覺(jué)如何?有興趣嗎? 其實(shí)我個(gè)人是很喜歡Sniffer的,我當(dāng)時(shí)從三洋出來(lái)的時(shí)候,錯(cuò)過(guò)了去IBM的機(jī)會(huì),去了神州數(shù)碼才知道,他們IBM需要做X400的人,去了神州數(shù)碼,老板問(wèn)我想做網(wǎng)絡(luò)還是想做主機(jī),我說(shuō)做網(wǎng)絡(luò)吧,那時(shí)一個(gè)CCIE 23十萬(wàn)的收入是有的,結(jié)果到我考過(guò)CCIE筆試的時(shí)候,CCIE就值10萬(wàn)吧,真是絕望了,(同學(xué)們笑)為什么當(dāng)時(shí)不做主機(jī)呢,我那些做6000的同事現(xiàn)在都不錯(cuò),又不累。做網(wǎng)絡(luò)不就一個(gè)字:累嗎(同學(xué)們笑)我也沒(méi)有去考實(shí)驗(yàn)了,01年的時(shí)候我考了CCSI,就是CISCO授權(quán)講師,后來(lái)講了很多cisco的課,我CISCO的學(xué)員有1000個(gè),后來(lái)又講Sniffer的課,Sniffer的學(xué)員有300個(gè),我的學(xué)員不少,有不少關(guān)系不錯(cuò)的,他們過(guò)的比我好(同學(xué)們笑,你做講師也不錯(cuò)呀,收入不低吧),以前講CISCO的時(shí)候收入不高,一天也就1000到1500,講Sniffer會(huì)好一些,(同學(xué)們:講Sniffer一天多少)這還不好公開(kāi),如果你們有興趣開(kāi)班,我們?cè)倭模ㄍ瑢W(xué)們笑)。后來(lái)我考過(guò)了SCM,Sniffer的最高級(jí)認(rèn)證,叫Sniffer大師。中國(guó)就我一個(gè)人,(同學(xué)們:哇,難不難考,考幾門(mén)),Sniffer的考試不難,這個(gè)我后面會(huì)講,考過(guò)SCM的全球也只有62個(gè),亞太區(qū)只有5個(gè),所以Sniffer原廠(chǎng)的課程都是我講的。在今年,我會(huì)去協(xié)助組建Sniffer中國(guó)技術(shù)服務(wù)中心,以后你們有什么問(wèn)題都可以聯(lián)系我,我在那里是技術(shù)總監(jiān)。我們還有在各行各業(yè)的Sniffer專(zhuān)家小組,都是喜歡使用Sniffer的人在一起交流使用心得,分享一些案例,你們?nèi)缬信d趣,到時(shí)我可以邀請(qǐng)你們參加,不過(guò)首先要認(rèn)真聽(tīng)課。(同學(xué)們笑) 好了,講了這么多,目標(biāo)只有一個(gè),提起大家的學(xué)習(xí)興趣,接下來(lái)講課程的內(nèi)容,首先把Sniffer打開(kāi)。 |
這時(shí)候,大家可能只看到一個(gè)local 下面是你的網(wǎng)卡,這就叫做一個(gè)local agent。事實(shí)上,一個(gè)local agent 就像一個(gè)探針。我們知道Sniffer的工作原理很簡(jiǎn)單,就是把網(wǎng)卡設(shè)成混雜模式(叫做promiscuous),所謂混雜模式,就是把所有數(shù)據(jù)包接受下來(lái)放入內(nèi)存,大家知道一般情況下,PC機(jī)只接受目的mac地址為自己網(wǎng)卡或廣播、組播的數(shù)據(jù)包。sniffer就是這樣把所有數(shù)據(jù)包都接收下來(lái),在進(jìn)行分析。大家看我這里有多個(gè)agent,怎樣可以做多個(gè)agent呢,可以不同網(wǎng)卡做不同的agent,就像你們的分布式sniffer一樣,有多個(gè)網(wǎng)卡,那就是多個(gè)agent,infinistream也一樣。其實(shí)一個(gè)網(wǎng)卡,也可以做多個(gè)agent,大家試一下,new一個(gè),給他加上說(shuō)明,就叫101把,選中你們的網(wǎng)卡,下面選no pod,copy setting留空,那個(gè)pod是你外接sniffer book時(shí)候用的。大家看看你們的agent多了一個(gè),101括號(hào)local_2。對(duì)不對(duì)(同學(xué)們:對(duì))好,不錯(cuò)。我們?yōu)槭裁唇⒍鄠€(gè)agent 呢。不同的agent可以定義不同的閥值,可以有不同的過(guò)濾器,可以有不同的觸發(fā)器,不同的地址本。比如說(shuō),你們有一臺(tái)筆記本裝著sniffer,大家都用它,那不同的工程師可以自己定義一個(gè)agent,自己定義自己的過(guò)濾器,互不干涉,比如不同的網(wǎng)段有不同的閥值,也可以定義不同的agent。那agent的參數(shù)保存在哪里呢,大家打開(kāi)c:\program files\nai\sniffernt\program,大家看到local local_2,這就是兩個(gè)不同的agent保存參數(shù)的地方。大家看到兩個(gè)CSF文件,一個(gè)是sniffer.csf,另外一個(gè)是Snifferdisplay.csf。這是過(guò)濾器文件,當(dāng)我們使用sniffer一段時(shí)間之后,大家會(huì)累積許多好的過(guò)濾器,一定記得保存下來(lái),就是把這兩個(gè)文件考出來(lái)就行了,如果你看到別人那里有好的過(guò)濾器,也可以拷過(guò)來(lái)。不過(guò)當(dāng)你要倒回去的時(shí)候,4.8比較好辦直接倒入就行了,4.75比較麻煩,我后面講定義過(guò)濾器的時(shí)候再教大家。過(guò)濾器是sniffer最難、最有意思、最重要的一部分,大家放心,我能讓大家成為高手。(同學(xué)們笑)好,local agent講完了,local agent是什么?事實(shí)上就是定義一個(gè)環(huán)境變量,不同的環(huán)境不同的參數(shù)。好,休息一下,待會(huì)兒講monitor功能。
中間休息的時(shí)候,我問(wèn)了范老師一個(gè)問(wèn)題:我看書(shū)上說(shuō),TCP是可靠的,UDP是不可靠的,那要不可靠UDP來(lái)干什么?(各位:我的問(wèn)題是不是很傻?但我確實(shí)不知道呀)
范老師:不錯(cuò),這個(gè)問(wèn)題非常好!(嘿嘿?。㏕CP叫傳輸控制協(xié)議,他的特點(diǎn)是:有連接,有流控,有順序號(hào)/確認(rèn)號(hào),開(kāi)銷(xiāo)比較大,一般是20個(gè)字節(jié)的頭。UDP叫用戶(hù)數(shù)據(jù)報(bào)協(xié)議,開(kāi)銷(xiāo)小,8個(gè)字節(jié)的頭,無(wú)可靠保證。我后面有詳細(xì)介紹TCP和UDP,我們先看您的問(wèn)題。首先,UDP,不可靠,是指,在傳輸層不提供可靠保證,并不意味著所有使用UDP的應(yīng)用都不可靠。我們來(lái)比較幾個(gè)應(yīng)用(范老師用他的trace file 給我演示)
DNS,53端口,進(jìn)行查詢(xún)時(shí),用的是UDP,因?yàn)橐笏俣瓤?,比如我要查networkgeneral的地址,你只要告訴我ip是多少就行了,如果要進(jìn)行3次握手建立連接,再去取到IP,那就慢了,所以用的是UDP,一個(gè)字:快。沒(méi)響應(yīng)怎么辦,事實(shí)你看(他在演示)它會(huì)同時(shí)向多個(gè)DNS查詢(xún),所以沒(méi)響應(yīng)也沒(méi)關(guān)系,你看這個(gè)響應(yīng)名字錯(cuò)誤,找不到。所以UDP還是有用的,特別是像DNS查詢(xún)這種應(yīng)用,丟了也就丟了,我再查。但DNS也有用TCP的時(shí)候,比如DNS服務(wù)器的同步,用的就是TCP的53端口
TFTP,您所了解的TFTP,用的是UDP吧,他不可靠嗎,事實(shí)上文件傳輸,必須保證可靠。不但要保證能知道丟包重傳,還要有順序號(hào),應(yīng)付錯(cuò)序到達(dá)的情況,也就是我們常說(shuō)的后發(fā)先至。事實(shí)上TFTP是怎樣工作的,你看(他在演示),每一個(gè)數(shù)據(jù)塊都有Id號(hào),一塊512字節(jié),一次傳輸,一次確認(rèn),這就相當(dāng)于TCP的順序號(hào)和確認(rèn)號(hào)。所以UDP是不可靠的,但很多使用UDP協(xié)議的應(yīng)用是可靠的,只是在應(yīng)用層去保證可靠性,很多人說(shuō)用UDP效率高,事實(shí)上TFTP在傳輸大文件的時(shí)候,比FTP效率更地,我們后面有專(zhuān)門(mén)的實(shí)驗(yàn)。
視頻流量,(沒(méi)有演示)對(duì)于視頻流量,也是需要可靠保證的,但要求不是很高,所以不會(huì)像TFTP那樣每一個(gè)數(shù)據(jù)報(bào)都確認(rèn),而是傳多個(gè)數(shù)據(jù)包確認(rèn)一次,要不效率就太低了,究竟多少個(gè)數(shù)據(jù)包確認(rèn)一次,開(kāi)發(fā)人員需要不斷測(cè)試。
我的解釋清楚嗎,(我說(shuō):明白了!謝謝?。? (確實(shí)看著演示,很容易就理解了,中間我們有許多對(duì)話(huà),我省略了,確實(shí)如果只聽(tīng)錄音是不明白的,這是我為什么要整理成文字給大家看,好累呀!大家給我加油?。?好,我們繼續(xù)!
#p#
我們來(lái)看一下Sniffer的七大monitor功能,有Dashboard,hosttable,matrix,ART,protocol distribution,history sample,global statistics我們一個(gè)一個(gè)來(lái)看,先看dashboard。
![]() |
好,我們繼續(xù)看第二個(gè)monitor功能,Host table,我們叫他主機(jī)列表 這是非常好用的一個(gè)功能,有什么用呢? 第一看流量最大的TOP10主機(jī), 第二看廣播量有多少,當(dāng)時(shí)我發(fā)現(xiàn)沖擊波、振蕩波的時(shí)候,就是看這個(gè)host table,發(fā)現(xiàn)有大量的全子網(wǎng)廣播 第三可以快速過(guò)濾單一主機(jī)流量。 第四通過(guò)過(guò)濾功能可以看到單一業(yè)務(wù)主機(jī)的流量分布,當(dāng)然也可以通過(guò)鏡像接口去實(shí)現(xiàn) 我們一個(gè)一個(gè)來(lái)看。 首先TOP10主機(jī), 我們可以點(diǎn)擊各列的標(biāo)題來(lái)排序,方便我們分析,比如收發(fā)包情況。大家可以試一下。 第二廣播量有多少 我們點(diǎn)擊broadcast或multicast的標(biāo)題,查看廣播量,有一點(diǎn)要注意,不要忘記看MAC層的廣播和組播,因?yàn)镸AC的廣播不一定有IP頭,比如ARP,同樣IP的廣播在MAC也可能是單播,比如子網(wǎng)廣播。 MAC層的廣播是目的MAC為48個(gè)1,MAC層的組播為目的MAC第一個(gè)字節(jié)最低位是1。(范老師有板書(shū),我的本子上有,懶得畫(huà)了) IP的廣播有三種:255.255.255.255叫本地廣播,也叫直播,direct broadcast,不跨路由器。 172.16.33.255叫子網(wǎng)廣播,廣播給172.16.33.0這個(gè)子網(wǎng),可以跨路由器。 172.16.255.255叫全子網(wǎng)廣播,廣播給172.16.0.0這個(gè)主網(wǎng),可以跨路由器。 大家以前學(xué)網(wǎng)絡(luò)的時(shí)候,老師會(huì)給一個(gè)概念,說(shuō)路由器是三層設(shè)備,隔離廣播,對(duì)吧,我也是這樣給同學(xué)介紹的,但我在后面會(huì)告訴同學(xué),并不是所有廣播都隔離。 事實(shí)上只有255.255.255.255這類(lèi)本地廣播,路由器才不轉(zhuǎn)發(fā),對(duì)于子網(wǎng)廣播和全子網(wǎng)廣播,路由器是轉(zhuǎn)發(fā)的,這是為什么呢? 我們來(lái)看4個(gè)255的廣播,在MAC的封裝中,對(duì)應(yīng)的目的MAC是廣播,而子網(wǎng)廣播和全子網(wǎng)廣播,對(duì)應(yīng)的目的MAC是單播,所以路由器會(huì)轉(zhuǎn)發(fā)。(范老師在演示)所以我們注意到,路由器隔離的廣播是目的MAC為全1的廣播,對(duì)于目的MAC是單播的上層廣播,路由器是不能隔離的。 現(xiàn)在想想沖擊波震蕩波為什么影響那么大,因?yàn)樗捎玫氖侨泳W(wǎng)廣播,可以跨路由感染。所以對(duì)于這種流量我們要小心,希望下次再出現(xiàn)蠕蟲(chóng)病毒時(shí),大家能快速發(fā)現(xiàn),做個(gè)世界第一(同學(xué)們笑),同樣我們要關(guān)注MAC層的廣播。 第三,就是我們可以關(guān)注單一主機(jī)流量。 第一種辦法,抓包。選中主機(jī),點(diǎn)一下抓蝴蝶的工具,這樣通過(guò)專(zhuān)家系統(tǒng)和解碼你就可以分析他在干什么了。這個(gè)我們后面再講 第二種辦法,用single station。選中主機(jī),點(diǎn)一下下面這個(gè)電腦的圖標(biāo),你可以看到他在跟誰(shuí)通信,如果你看到他跟幾十臺(tái)、上百臺(tái)機(jī)器同時(shí)通訊,可能是什么?(同學(xué)們:BT),對(duì),像BT,電驢等P2P應(yīng)用會(huì)有這個(gè)特征。 第四,就是我們?nèi)绻覀儼褑我粯I(yè)務(wù)服務(wù)器的接口鏡像過(guò)來(lái),我們就可以看到這臺(tái)機(jī)器的流量狀況,我們也可以采用過(guò)濾的方式。 Sniffer有一種叫Monitor 過(guò)濾器。大家選中一臺(tái)機(jī)器,假設(shè)這是你要關(guān)心的業(yè)務(wù)主機(jī),再點(diǎn)一下這個(gè)定義過(guò)濾器的圖標(biāo),(范老師在演示),你看他自動(dòng)產(chǎn)生一個(gè)叫NEW1的過(guò)濾器,就是這臺(tái)機(jī)器跟任何機(jī)器通訊這樣的一個(gè)過(guò)濾器。我們點(diǎn)一下確定。 我們?cè)谶x擇monitor菜單上的select filter,選apply monitor filter,再選new1,確定。 大家注意到,現(xiàn)在host table就只有和這臺(tái)機(jī)器通訊的所有主機(jī)流量情況。要注意一點(diǎn)是,monitor filter應(yīng)用的時(shí)候,對(duì)所有monitor功能生效,所以在分析單一業(yè)務(wù)的時(shí)候,特別好用。當(dāng)然如果你們買(mǎi)的是InfiniStream的話(huà),就更方便了,想分析那個(gè)業(yè)務(wù)就分析哪個(gè)業(yè)務(wù)。 怎么樣?Host table好用吧? (同學(xué)問(wèn):為什么廣播也是一臺(tái)主機(jī)?不是說(shuō)廣播地址不會(huì)作為主機(jī)地址嗎?)(編者:這個(gè)問(wèn)題好像比較低級(jí)) 這是流量分析技術(shù)的特點(diǎn),再流量分析中,它純粹從包結(jié)構(gòu)中去取得主機(jī)信息,也就是目的MAC,源MAC,目的IP,源IP,他都作為主機(jī)處理,廣播地址不會(huì)在原地址中出現(xiàn),但在目的地址中出現(xiàn),也是一臺(tái)主機(jī)。這并不影響我們分析。 好。還有什么問(wèn)題嗎?大家用5分鐘自己試一下。
![]() 好,我們繼續(xù)看第3個(gè)monitor功能,Matrix,我們叫他矩陣,其實(shí)就是主機(jī)會(huì)話(huà)情況,很多人用他來(lái)發(fā)現(xiàn)病毒,其實(shí)用他來(lái)評(píng)估網(wǎng)絡(luò)狀況,和異常流量,是一個(gè)很好用的工具。 大家看,一下子就滿(mǎn)了,大多數(shù)網(wǎng)絡(luò)中都是這樣的,我們可以按一下嶄停。 然后來(lái)分析 分析什么呢? 看那一臺(tái)主機(jī)的連接數(shù)最多,要注意這個(gè)連接數(shù)不是傳輸層的連接數(shù),是指誰(shuí)跟最多的主機(jī)連接 按右建選zoom,放大。 找到對(duì)外連接最多的機(jī)器,選中,按右建,選show select nodes,大家自己試一下。
![]() 我們注意到這臺(tái)機(jī)器跟很多機(jī)器通訊,這正常嗎?(同學(xué)們:不正常) 這要看實(shí)際情況,如果這時(shí)一臺(tái)業(yè)務(wù)主機(jī),太正常了,如果這時(shí)一臺(tái)PC機(jī),或許在作P2P。 究竟在作什么呢
|
我們注意到這臺(tái)機(jī)器向公網(wǎng)發(fā)出大量的ICMP包,那是在作什么?(同學(xué)們:在ping) 對(duì)!PING采用ICMP協(xié)議,ping可以用來(lái)掃描,也可以用來(lái)攻擊。 掃描就是看那一臺(tái)機(jī)器活著,接著掃描端口,在攻擊,所以?huà)呙枋枪糁鳈C(jī)的前奏。 另外,還可以用ping 來(lái)沖擊路由器,或占用帶寬,是一種DOS攻擊。 大家看這個(gè)過(guò)程更像哪一種類(lèi)型。 (同學(xué)們:掃描,DOS攻擊) 一般情況下,掃描會(huì)是比較連續(xù)的地址,我們看這個(gè)地址并不連續(xù),我們先排除掃描,當(dāng)然不是絕對(duì)的,也有比較聰明的掃描。 有同學(xué)說(shuō),這是DOS攻擊,那是沖擊路由器,還是占用帶寬? (同學(xué)們:沖擊路由器) 嘿,這次比較統(tǒng)一,我也覺(jué)得他在沖擊路由器,我們看,他的目標(biāo)地址基本不在一個(gè)網(wǎng)段,這樣路由器收到這樣的數(shù)據(jù)包會(huì)消耗大量資源在查找路由表上面。所以對(duì)路由器有一定沖擊。 一般來(lái)說(shuō),如果他想占用帶寬的話(huà),會(huì)發(fā)大包,我們發(fā)現(xiàn),包的長(zhǎng)度不大,并且一秒鐘才發(fā)10幾個(gè)包,所以對(duì)貸款沖擊不大。 或許大家會(huì)覺(jué)得這沒(méi)秒10幾個(gè)包對(duì)路由器沖擊也不大呀。大家想像一下,如果有很多機(jī)器在作這個(gè)操作,那影響就會(huì)很大。 大家自己在找一找,是否還有其他機(jī)器在作同類(lèi)事情。 (同學(xué)們找出7臺(tái)這樣的機(jī)器) 好大家找出7臺(tái)這樣的機(jī)器,怎么找出來(lái)的?有同學(xué)用鋼材的辦法,有同學(xué)用過(guò)濾,都市好辦法。 現(xiàn)在假設(shè)在你們的網(wǎng)絡(luò)中出現(xiàn)這樣的情況,我們發(fā)現(xiàn)了異常,接下來(lái)怎么做? (同學(xué)們:找到這臺(tái)機(jī)器) 然后呢? 我們可以看看這臺(tái)機(jī)器的任務(wù)管理器,看看有什么不常見(jiàn)的進(jìn)程,把他去掉,看是否解決。在看其他的機(jī)器,是否有類(lèi)似的特征。 這是我的一個(gè)學(xué)員發(fā)給我的,當(dāng)時(shí)他發(fā)現(xiàn)這7臺(tái)機(jī)器都有一個(gè)特殊的進(jìn)程,但是他的防病毒軟件沒(méi)有查出來(lái)。他手工解決了。 這很好說(shuō)明用Sniffer可以比防病毒軟件更快發(fā)現(xiàn)病毒,因?yàn)榉啦《拒浖呛笾笥X(jué)得,什么意思?防病毒軟件必須有相應(yīng)的特征才能查病毒。而Sniffer通過(guò)流量可以發(fā)現(xiàn)一些特征,一些異常。 但是有一點(diǎn),我們不能拿Sniffer當(dāng)防病毒軟件用,那不是他的特長(zhǎng),同時(shí)也太低沽Sniffer的功能了(同學(xué)們笑) 好我們?cè)诳纯磼呙枋窃趺匆换厥拢蠹铱催@個(gè)trace file(范老師在演示,我就不寫(xiě)了) 先是ARP掃描,再端口掃描,接下來(lái)就是攻擊了。 (編者:接著我們做了一個(gè)游戲,范老師讓大家用Sniffer攻擊他的機(jī)器,結(jié)果1臺(tái)機(jī)器就把他的機(jī)器搞死了,這個(gè)就不細(xì)說(shuō)了)
![]()
#p#7、多用鼠標(biāo)拷貝與粘貼來(lái)提高操作速度 Linux系統(tǒng)安裝后,每次啟動(dòng)到字符界面時(shí)都會(huì)自動(dòng)運(yùn)行一個(gè)叫“gpm”的程序,該程序運(yùn)行后就可以用鼠標(biāo)來(lái)拷貝與粘貼了。具體做法是按住鼠標(biāo)左鍵拖動(dòng)使要拷貝的地方突出顯示,這時(shí)突出顯示的區(qū)域已經(jīng)被拷貝,再按鼠標(biāo)右鍵拷貝的內(nèi)容就會(huì)被粘貼在光標(biāo)所在位置了。如果我們?cè)赬window下運(yùn)行Linux系統(tǒng),拷貝與粘貼的操作與在Windows 9x系統(tǒng)下一樣?! ?、快速啟動(dòng)Linux系統(tǒng) 在DOS下,有一種簡(jiǎn)單快速啟動(dòng)Linux的方法,那就是load Linux。loadlin.exe是DOS下的可執(zhí)行程序,它可以在純DOS環(huán)境下迅速啟動(dòng)Linux,而且無(wú)需重啟計(jì)算機(jī),通常我們可以在光盤(pán)的“/kernels”目錄下找到這個(gè)程序。如果不知這個(gè)程序被放置于安裝盤(pán)的何處,可以使用“find -name loadlin*”命令來(lái)尋找。找到之后將其復(fù)制到DOS分區(qū)中,同時(shí)還需要復(fù)制一份你所使用的Linux內(nèi)核文件??梢酝ㄟ^(guò)Windows直接從光盤(pán)復(fù)制,也可在Linux環(huán)境下使用“mcopy”命令將文件復(fù)制到DOS分區(qū);接著再編寫(xiě)一個(gè)名為“Linux.bat”的批處理文件,文件內(nèi)容如下:c:loadlin c:vmlinuz root=/dev/hda1 ro(我們假設(shè)loadlin.exe和vmlinuz這兩個(gè)內(nèi)核文件都在c盤(pán)根目錄下,“root”為L(zhǎng)inux的根設(shè)備,而且Linux處于硬盤(pán)第一分區(qū),所以設(shè)備名為“/dev/hda1”,“ro”意為readonly)。以后在DOS下要啟動(dòng)Linux時(shí),運(yùn)行“Linux.bat”就可以了。
9、增加虛擬緩存 使用命令:mkswap /dev/hda(假設(shè)Linux的驅(qū)動(dòng)器是/dev/hda),swapon /dev/hda;要自動(dòng)啟動(dòng)Swap,可以把新的分區(qū)加入到etc/fstab中去,照著原來(lái)swap的寫(xiě)就行了。用"free"檢查swap的大小,Linux支持最多16個(gè)交換分區(qū),每個(gè)交換分區(qū)最大128M,沒(méi)有空閑分區(qū)的時(shí)候,可以用個(gè)大文件來(lái)建立?! ∠旅媸菆?zhí)行的一系列命令: #dd if=/dev/zero of=swapfile bs=1024 count=8192 #mkswap swapfile 8192 #sync #swapon swapfile 10、巧妙使用Tab鍵 大家知道在Linux字符界面中輸入命令時(shí),有時(shí)需要輸入很多字符,如果經(jīng)常這樣逐個(gè)逐個(gè)地輸入字符,比較煩瑣。假設(shè)鍵入的字符足以確定目錄下一個(gè)唯一的文件時(shí),我們只須按鍵盤(pán)上的Tab 鍵就可以自動(dòng)補(bǔ)齊該文件名的剩下部分,例如要把目錄/ccc 下的文件ddddddd-1.2.3.tar.gz 解包時(shí),當(dāng)我們?cè)诿钚兄墟I入到tar xvfz /ccc/d時(shí),如果該文件是該目錄下唯一以d起頭的文件的話(huà)就可以直接按下鍵盤(pán)上的Tab鍵,這時(shí)命令會(huì)被自動(dòng)補(bǔ)齊為:tar xvfz /ccc/ddddddd-1.2.3.tar.gz,從而提高了輸入效率。 11、多用拷貝與粘貼來(lái)提高操作速度 Linux系統(tǒng)安裝后,每次啟動(dòng)到字符界面時(shí)都會(huì)自動(dòng)運(yùn)行一個(gè)叫g(shù)pm的程序,該程序運(yùn)行后就可以用鼠標(biāo)來(lái)拷貝與粘貼了。具體做法是按住鼠標(biāo)左鍵拖動(dòng)讓要拷貝的地方突出顯示,這時(shí)突出顯示的區(qū)域已經(jīng)被拷貝, 再按鼠標(biāo)右鍵拷貝的內(nèi)容就會(huì)被粘貼在光標(biāo)所在位置了。如果我們?cè)赬window下運(yùn)行Linux系統(tǒng),拷貝與粘貼的操作與在普通的Win9x系統(tǒng)下一樣。 12、提高讀盤(pán)速度 在Linux下進(jìn)行一些設(shè)置,讓Linux在32位輸入輸出方式和DMA通道方式下進(jìn)行工作。設(shè)置時(shí),在Linux命令界面中輸入命令/sbin/hdparm -cl /dev/hda來(lái)打開(kāi)32bit傳輸方式,輸入命令/sbin/hdparm -dl /dev/hda來(lái)打開(kāi)DMA傳輸方式,接著再輸入命令/sbin/hdparm -kl /dev/hda來(lái)使硬盤(pán)在Reset之后仍然保持上述的設(shè)置,通過(guò)這些設(shè)置,我們就能提高Linux的讀盤(pán)速度到1倍以上。
#p#我還真想實(shí)現(xiàn)唐無(wú)敵的假設(shè):動(dòng)動(dòng)網(wǎng)絡(luò)結(jié)構(gòu):所有設(shè)備都接HUB假設(shè)把PC2的網(wǎng)關(guān)設(shè)置為10.41.221.2,而PC1的IP改為10.41.222.6,也許能實(shí)現(xiàn)唐無(wú)敵的設(shè)想,PC1發(fā)出到PC2的請(qǐng)求,可以獲得IP,經(jīng)過(guò)重定向后達(dá)到PC2,而PC2并不直接回復(fù)PC1,因?yàn)椴辉谝粋€(gè)網(wǎng)段,于是發(fā)到網(wǎng)關(guān),NAT轉(zhuǎn)發(fā),而PC1由于同“上級(jí)”網(wǎng)關(guān)(外網(wǎng)網(wǎng)關(guān))同MAC,于是可以得到報(bào)文,于是就建立連接了,嬉嬉 ![]()
#p#4 用防火墻封QQ廣告 流行的木子版QQ客戶(hù)端具備去廣告功能,本文提供另外的方法,使用防火墻也可以達(dá)到禁止QQ廣告的目的。用防火墻攔截所有來(lái)自下面網(wǎng)址的數(shù)據(jù)報(bào)文,QQ就無(wú)法訪(fǎng)問(wèn)服務(wù)器的廣告網(wǎng)頁(yè)了。這些地址是QQ成功登錄后在QQ通訊過(guò)程中通過(guò)SNIFFER PRO抓到的。61.172.249.13361.172.249.13461.172.249.135218.17.217.105218.17.217.106219.133.40.154219.133.40.152219.133.40.153219.133.40.155219.133.40.15 qqshow-ufs.tencent.com219.133.40.157 qqring.clent.tencent.com 不過(guò),QQ仍然彈出系統(tǒng)消息等窗口也非常討厭,找到QQ的安裝目錄(默認(rèn)在C:\Program Files\Tencent\qq),把其中的可執(zhí)行文件QQexternal.exe文件改名為QQexternalb.exe。再登錄QQ就沒(méi)有窗口彈出來(lái)了。以上實(shí)驗(yàn)在騰訊QQ2003III Build0117簡(jiǎn)體中文版下通過(guò)。5 關(guān)于QQ安裝目錄下的Config.db文件 用記事本打開(kāi)Config.db文件,發(fā)現(xiàn)跟上面提到的域名極為相似的域名:61.144.238.146:8000 sz.tencent.com:8000 sz2.tencent.com:8000 sz3.tencent.com:8000 sz4.tencent.com:8000 sz5.tencent.com:8000 sz6.tencent.com:8000 sz7.tencent.com:8000 tcpconn.tencent.com:80tcpconn2.tencent.com:80 tcpconn3.tencent.com:80 tcpconn4.tencent.com:80 tcpconn2.tencent.com:80 tcpconn3.tencent.com:80 tcpconn4.tencent.com:80 http2.tencent.com:80 http.tencent.com:443 也許這就是QQ記錄服務(wù)器地址的文件,不過(guò),最后兩項(xiàng)用普通QQ賬號(hào)沒(méi)有涉及到,根本就沒(méi)有發(fā)起連接包。也許是收費(fèi)用戶(hù)的服務(wù)器吧,這里也提供出他們的IP地址:http.tencent.com 218.17.209.42 http2.tencent.com 61.144.238.149結(jié)束語(yǔ) 如果騰訊增加新的QQ服務(wù)器,QQ也還是可以登錄的。另外,用第三方的代理軟件如NEC E-BORDER等,支持Anonymous的Socks5代理還是可能繞過(guò)去,登陸使用QQ。終結(jié)實(shí)驗(yàn),溫故知新,網(wǎng)關(guān)的作用在實(shí)驗(yàn)中,利用ping命令來(lái)檢驗(yàn)主機(jī)間能否進(jìn)行正常的雙向通信。在“ping”的過(guò)程中,源主機(jī)向目標(biāo)主機(jī)發(fā)送ICMP的Echo Request報(bào)文,目標(biāo)主機(jī)收到后,向源主機(jī)發(fā)回ICMP的Echo Reply報(bào)文,從而可以驗(yàn)證源與目標(biāo)主機(jī)能否進(jìn)行正確的雙向通信。 A與B為實(shí)驗(yàn)用的PC機(jī),使用Windows2000 Professional作操作系統(tǒng)。 實(shí)驗(yàn)方案: 步驟1: 設(shè)置兩臺(tái)主機(jī)的IP地址與子網(wǎng)掩碼: A: 10.2.2.2 255.255.254.0 B: 10.2.3.3 255.255.254.0 兩臺(tái)主機(jī)均不設(shè)置缺省網(wǎng)關(guān)。 用arp -d命令清除兩臺(tái)主機(jī)上的ARP表,然后在A與B上分別用ping命令與對(duì)方通信,在A與B上分別顯示, A: Reply from 10.2.3.3: bytes=32 time<10ms TTL=128 B: Reply from 10.2.2.2: bytes=32 time<10ms TTL=128 用arp -a命令可以在兩臺(tái)PC上分別看到對(duì)方的MAC地址。 分析:由于主機(jī)將各自通信目標(biāo)的IP地址與自己的子網(wǎng)掩碼相“與”后,發(fā)現(xiàn)目標(biāo)主機(jī)與自己均位于同一網(wǎng)段(10.2.2.0),因此通過(guò)ARP協(xié)議獲得對(duì)方的MAC地址,從而實(shí)現(xiàn)在同一網(wǎng)段內(nèi)網(wǎng)絡(luò)設(shè)備間的雙向通信。 步驟2: 將A的子網(wǎng)掩碼改為:255.255.255.0,其他設(shè)置保持不變。 操作1:用arp -d命令清除兩臺(tái)主機(jī)上的ARP表,然后在A上ping B,在A上顯示結(jié)果為:Destination host unreachable 用arp -a命令在兩臺(tái)PC上均不能看到對(duì)方的MAC地址。 分析1:A將目標(biāo)設(shè)備的IP地址(10.2.3.3)和自己的子網(wǎng)掩碼(255.255.255.0)相“與”得10.2.3.0,和自己不在同一網(wǎng)段(A所在網(wǎng)段為:10.2.2.0),則A必須將該IP分組首先發(fā)向缺省網(wǎng)關(guān)。由于A的缺省網(wǎng)關(guān)沒(méi)有配置,無(wú)法對(duì)分組進(jìn)行正確發(fā)送,因此顯示“目標(biāo)主機(jī)不可到達(dá)”。 操作2:接著在B上ping A,在B上顯示結(jié)果為:Request timed out 此時(shí)用arp -a命令可以在兩臺(tái)PC上分別看到對(duì)方的MAC地址。 分析2:B將目標(biāo)設(shè)備的IP地址(10.2.2.2)和自己的子網(wǎng)掩碼(255.255.254.0)相“與”,發(fā)現(xiàn)目標(biāo)主機(jī)與自己均位于同一網(wǎng)段(10.2.2.0),因此,B通過(guò)ARP協(xié)議獲得A的MAC地址,并可以正確地向A發(fā)送Echo Request報(bào)文。但由于A不能向B正確地發(fā)回Echo Reply報(bào)文(原因見(jiàn)分析1),故B上顯示ping的結(jié)果為“請(qǐng)求超時(shí)”。在該實(shí)驗(yàn)操作中,通過(guò)觀察A與B的ARP表的變化,可以驗(yàn)證:在一次ARP的請(qǐng)求與響應(yīng)過(guò)程中,通信雙方就可以獲知對(duì)方的MAC地址與IP地址的對(duì)應(yīng)關(guān)系,并保存在各自的ARP表中。 步驟3: 在前面實(shí)驗(yàn)的基礎(chǔ)上,把A的缺省網(wǎng)關(guān)設(shè)為:10.2.2.1,網(wǎng)關(guān)的子網(wǎng)掩碼為:255.255.0.0。 在A與B上分別用ping命令與對(duì)方通信,各自的顯示結(jié)果為: A: Reply from 10.2.3.3: bytes=32 time<10ms TTL=128 B: Reply from 10.2.2.2: bytes=32 time<10ms TTL=127 在A與B上分別用tracert命令追蹤數(shù)據(jù)的傳輸路徑,結(jié)果分別為: A: tracert 10.2.3.3 Tracing route to 10.2.3.3 over a maximum of 30 hops: 1 <10 ms <10 ms <10 ms 10.2.2.1 2 <10 ms <10 ms <10 ms 10.2.3.3 Trace complete. B: tracert 10.2.2.2 Tracing route to 10.2.2.2 over a maximum of 30 hops: 1 <10 ms <10 ms <10 ms 10.2.2.2 Trace complete. 分析:如步驟2中的分析,由于A認(rèn)為B與其不在同一個(gè)網(wǎng)段,故從A發(fā)向B的報(bào)文需要經(jīng)過(guò)網(wǎng)關(guān)轉(zhuǎn)發(fā);而B(niǎo)認(rèn)為A與其在同一個(gè)網(wǎng)段,故B不需要經(jīng)過(guò)網(wǎng)關(guān)直接向A發(fā)送報(bào)文,從而可以觀察到A與B雙向通信時(shí)傳輸路徑的不對(duì)稱(chēng)性。由于ping命令結(jié)果顯示的是從目標(biāo)主機(jī)返回的Echo Reply報(bào)文的TTL的值,而B(niǎo)收到從A返回的Echo Reply報(bào)文經(jīng)過(guò)了網(wǎng)關(guān)的轉(zhuǎn)發(fā),所以在B中顯示該IP報(bào)文的TTL值降為了127(從A發(fā)出的IP分組的TTL的初始值為128,每經(jīng)過(guò)一個(gè)網(wǎng)關(guān),TTL值減1)。 步驟4: 用arp -d命令清除A中的ARP表,在A上ping一臺(tái)外網(wǎng)段的主機(jī),如中大的WWW Server(202.116.64.8),再用arp -a可觀察到A的ARP表中只有缺省網(wǎng)關(guān)的MAC地址信息。 分析:當(dāng)源主機(jī)要和外網(wǎng)段的主機(jī)進(jìn)行通信時(shí),它并不需要獲取遠(yuǎn)程主機(jī)的MAC地址,而是把IP分組發(fā)向缺省網(wǎng)關(guān),由網(wǎng)關(guān)IP分組的完成轉(zhuǎn)發(fā)過(guò)程。如果源主機(jī)沒(méi)有缺省網(wǎng)關(guān)MAC地址的緩存記錄,則它會(huì)通過(guò)ARP協(xié)議獲取網(wǎng)關(guān)的MAC地址,因此在A的ARP表中只觀察到網(wǎng)關(guān)的MAC地址記錄,而觀察不到遠(yuǎn)程主機(jī)的MAC地址。 步驟5: 使用典型的NAT結(jié)構(gòu)ADSL----NAT(10.41.221.2/24)-----PC在PC上做如下改變:網(wǎng)關(guān):無(wú)網(wǎng)關(guān)/網(wǎng)關(guān)為自己/網(wǎng)關(guān)為未使用的本網(wǎng)段IP/網(wǎng)關(guān)為未使用的網(wǎng)段IP(10.42.22.10或/11.22.33.44)Y表示能通訊,N表是不能建立通訊改變MASK 內(nèi)部 外部10.41.221.10/24/30/16 Y N10.41.222.10/8/24/16/25 N N網(wǎng)關(guān)為10.41.221.2/24改變MASK 內(nèi)部 外部10.41.221.10/24/30/16 Y Y10.41.222.10/8/24/16/25 N N網(wǎng)關(guān)為10.41.221.2/255.255.0.0改變MASK 內(nèi)部 外部10.41.221.10/24/30/16 Y Y10.41.222.10/8/16/24/25 Y Y以最后一個(gè)例子分析,當(dāng)PC的MASK設(shè)置為8和24時(shí),雖然它們都可以上網(wǎng),但是走路的方式1卻不同以8位做MASK時(shí),10.41.222.10經(jīng)過(guò)與運(yùn)算認(rèn)為10.41.221.2在一個(gè)網(wǎng)段,于是直接發(fā)起連接,經(jīng)過(guò)NAT,回應(yīng)的報(bào)文經(jīng)過(guò)10.41.221.2時(shí),它經(jīng)過(guò)運(yùn)算也認(rèn)為PC在自己的網(wǎng)段,通訊就建立了。以24位做MASK時(shí),PC10.41.222.10經(jīng)過(guò)與運(yùn)算認(rèn)為10.41.221.2不在一個(gè)網(wǎng)段,于是發(fā)起ARP請(qǐng)求得到網(wǎng)關(guān)的MAC,并把報(bào)文發(fā)送給網(wǎng)關(guān),經(jīng)過(guò)NAT,回應(yīng)的報(bào)文經(jīng)過(guò)10.41.221.2時(shí),它經(jīng)過(guò)運(yùn)算認(rèn)為PC在自己的網(wǎng)段,通訊就建立了。
#p#
毫無(wú)疑問(wèn),一個(gè)好的及時(shí)通訊軟件必須具備良好的穿越防火墻的能力,隨著微軟加強(qiáng)MSN的開(kāi)發(fā)步伐,MSN的用戶(hù)對(duì)其闖關(guān)能力提出了更高的要求,了解MSN怎樣本節(jié)內(nèi)容介紹了對(duì)受NAT和防火墻問(wèn)題影響的Windows Messenger功能,這些功能包括:即時(shí)消息和出席(Presence) 、音頻和視頻、應(yīng)用程序共享和白板、文件傳輸以及遠(yuǎn)程協(xié)助。 一、防火墻或者NAT組件的具備通用即插即用(UpnP)能力如果通信雙方使用的是具有通用即插即用(UpnP)能力的防火墻或者NAT組件,所有的Windows Messenger功能都可以正常使用。如果使用的是WINME/XP/2003的ICS共享,那么具備UpnP功能,而2000的NAT共享就不具備UpnP功能。具有UPnP能力的防火墻 比如Windows XP防火墻,即Internet Connection Firewall(Internet連接防火墻),便是具有UPnP能力的防火墻。 Windows XP 中的Windows Messenger可以通過(guò)打開(kāi)數(shù)據(jù)發(fā)送、連接或媒體流所需的端口對(duì)這種能力加以利用。 這是由于UPnP規(guī)格中具有"NAT Traversal"功能,使用該功能可以使WindowsXP中標(biāo)準(zhǔn)安裝的聊天軟件"Windows Messenger"在運(yùn)行中不會(huì)出現(xiàn)任何問(wèn)題。 所謂的NAT(network address translation),是指在因特網(wǎng)中使用的全球IP地址可以同在LAN內(nèi)使用的私人IP地址互換的功能。所謂連續(xù)Traversal,則意味著"完全搜索"。Windows Messenger雖然具IP電話(huà)及視頻聊天功能,但這種功能無(wú)法經(jīng)由使用NAT的寬帶路由器使用。這是由于在使用此項(xiàng)功能時(shí),Windows Messenger在數(shù)據(jù)部分也嵌入了IP地址的緣故。在NAT功能中,雖然位于IP數(shù)據(jù)包頭部的收信方及發(fā)信方的IP地址可以更換,但數(shù)據(jù)內(nèi)的地址無(wú)法更換,因此前后不統(tǒng)一,無(wú)法進(jìn)行通信。NAT Traversal 由路由器將服務(wù)提供商分配的全球IP地址等信息通知給LAN內(nèi)的計(jì)算機(jī)。LAN內(nèi)的個(gè)人電腦收到來(lái)自路由器的信息后,可以向因特網(wǎng)應(yīng)用方傳送WAN方面的IP地址等信息。如果因特網(wǎng)應(yīng)用方采用這一結(jié)構(gòu),可以在一開(kāi)始就將WAN方面分配到的IP地址寫(xiě)入分組的數(shù)據(jù)中,所以在通過(guò)NAT進(jìn)行通信時(shí),IP數(shù)據(jù)包頭部和數(shù)據(jù)部可以使用相同的全球IP地址,從而便可以進(jìn)行通信。 Windows Messenger使用了Windows XP及較早期Windows版本中的UPnP架構(gòu)。隨著越來(lái)越多的Internet網(wǎng)關(guān)設(shè)備開(kāi)始為UPnP提供支持,這種解決方案的可用性將變得越來(lái)越強(qiáng)。實(shí)驗(yàn):驗(yàn)證ICS的UPnP自動(dòng)端口映射功能(來(lái)自info521)MSN Messenger中已經(jīng)使用了UPnP自動(dòng)端口映射,我們不妨先來(lái)看看MSN Messenger中的UPnP自動(dòng)端口映射究竟是什么樣子的。網(wǎng)絡(luò)絡(luò)環(huán)境:網(wǎng)關(guān):192.168.0.1,Windows XP Professional SP1,中國(guó)電信ADSL,速率1M,使用ICS讓內(nèi)網(wǎng)電腦共享上網(wǎng)。內(nèi)網(wǎng)電腦192.168.0.99,Windows XP Professional SP1,使用MSN Messenger 6.1。圖截于網(wǎng)關(guān),注意我們關(guān)閉了“允許其他網(wǎng)絡(luò)用戶(hù)控制禁用共享的Internet連接”。與此同時(shí),我們?cè)趦?nèi)網(wǎng)電腦192.168.0.99上運(yùn)行MSN Messenger 6.1的截圖。請(qǐng)注意,在關(guān)閉了網(wǎng)關(guān)上“允許其他網(wǎng)絡(luò)用戶(hù)控制禁用共享的Internet連接”的情況下,內(nèi)網(wǎng)電腦192.168.0.99上MSN Messenger 6.1的高級(jí)連接信息顯示為“您是通過(guò)非UPnP IP受限的NAT連接到Internet的。”如果我們打開(kāi)網(wǎng)關(guān)上的“允許其他網(wǎng)絡(luò)用戶(hù)控制禁用共享的Internet連接”,情況又將如何?打開(kāi)網(wǎng)關(guān)上的“允許其他網(wǎng)絡(luò)用戶(hù)控制禁用共享的Internet連接”后,內(nèi)網(wǎng)電腦192.168.0.99上MSN Messenger 6.1的高級(jí)連接信息顯示為“您是通過(guò)UPnP IP受限的NAT連接到Internet的。”這時(shí)候,如果你使用內(nèi)網(wǎng)電腦上的MSN Messenger 6.1與其他朋友語(yǔ)音聊天或傳輸文件的同時(shí),再看看網(wǎng)關(guān)上的ICS的高級(jí)選項(xiàng),請(qǐng)注意奇妙的變化,如圖4(在4樓)。我們可以驚奇地發(fā)現(xiàn)在ICS的“高級(jí)設(shè)置”中,比圖1多了一項(xiàng)“msnmsgr(192.168.0.99:2292)16328 TCP”。etuotech以BTFans的人格擔(dān)保,這一項(xiàng)并非我手動(dòng)加上去的,而是由內(nèi)網(wǎng)電腦192.168.0.99上運(yùn)行的MSN Messenger 6.1向網(wǎng)關(guān)發(fā)出的UPnP自動(dòng)端口映射指令自動(dòng)添加的。經(jīng)由這項(xiàng)實(shí)驗(yàn),可以得出以下幾個(gè)結(jié)論:1、ICS確實(shí)支持UPnP自動(dòng)端口映射;2、ICS中有權(quán)限設(shè)置,可以手動(dòng)設(shè)置網(wǎng)關(guān)是否接受內(nèi)網(wǎng)電腦發(fā)起的端口映射的請(qǐng)求;3、MSN Messenger 6.1的確具備UPnP自動(dòng)端口映射功能,而且不用在MSN Messenger 6.1中進(jìn)行任何設(shè)定。二、防火墻或者NAT組件不具備通用即插即用(UpnP)能力1、在防火墻同一側(cè)的通信雙方可以使用Windows Messenger的所有特性。 2、不同的應(yīng)用需要映射不同的端口即時(shí)消息和出席(Presence)功能,不需要映射任何端口。一般來(lái)說(shuō),防火墻和NAT設(shè)備對(duì)IM和出席功能不會(huì)有任何的影響。如果Windows XP客戶(hù)機(jī)可以創(chuàng)建并維護(hù)一條到服務(wù)器的連接,那么其它的IM和出席也能夠沿著相同的途徑進(jìn)行通信。如果在SIP客戶(hù)端與服務(wù)器間存在一個(gè)NAT設(shè)備,那么,反映在SIP消息中的端口和地址可能會(huì)與實(shí)際的端口和地址有所不同。Windows Messenger擁有的某些機(jī)制可以解決這些問(wèn)題。音頻和視頻 在協(xié)商進(jìn)行一個(gè)音頻-視頻會(huì)話(huà)的時(shí)候,音頻-視頻流會(huì)選擇使用動(dòng)態(tài)端口。在使用動(dòng)態(tài)端口時(shí),應(yīng)用程序無(wú)需考慮系統(tǒng)中還運(yùn)行了哪些其它的應(yīng)用程序以及這些程序都使用哪些端口資源即可正常工作。用來(lái)傳輸應(yīng)用程序共享(AS)和白板(WB)數(shù)據(jù)的TCP連接使用1503端口,您需要啟用該端口,以便數(shù)據(jù)能夠通過(guò)所有的防火墻。 因?yàn)門(mén)CP數(shù)據(jù)連接使用一個(gè)特定的端口(1503),如果客戶(hù)端位于一個(gè)不具備UPnP能力的NAT設(shè)備之后,該端口必須被映射到該客戶(hù)端上。以確保能夠通過(guò)最常見(jiàn)的NAT設(shè)備進(jìn)行通信。這還意味著:該端口一般不能被NAT設(shè)備后面的其它客戶(hù)端所使用;在一個(gè)時(shí)間中,只有位于相同NAT設(shè)備后面的一個(gè)客戶(hù)端能夠擁有一個(gè)AS或WB會(huì)話(huà)。文件傳輸 外來(lái)和外出的TCP連接都使用6891到6900間的端口。這使得每個(gè)發(fā)送方最多只能建立10條文件傳輸連接。在通信雙方之間的所有防火墻上,這些端口都必須被開(kāi)放。如果您僅僅開(kāi)放6891端口,用戶(hù)每次只能建立起一條文件傳輸連接。 遠(yuǎn)程協(xié)助 遠(yuǎn)程協(xié)助使用遠(yuǎn)程桌面協(xié)議(Remote Desktop Protocol,RDP);與Microsoft Terminal Services使用同一個(gè)協(xié)議。RDP建立在TCP連接之上。Windows Messenger使用基于服務(wù)器的會(huì)話(huà)邀請(qǐng)邏輯(與FT類(lèi)似)建立遠(yuǎn)程協(xié)助會(huì)話(huà)。所以,它同樣會(huì)因?yàn)镹AT產(chǎn)生與FT同樣的問(wèn)題。 遠(yuǎn)程協(xié)助包括了一個(gè)附加邏輯,以應(yīng)對(duì)可能遇到的NAT環(huán)境。該邏輯會(huì)簡(jiǎn)單地嘗試從會(huì)話(huà)雙方兩個(gè)方向上建立TCP連接。如果只有一個(gè)客戶(hù)端位于NAT設(shè)備之后,那么連接仍然可以建立,遠(yuǎn)程協(xié)助會(huì)話(huà)也依然可以進(jìn)行。如果兩個(gè)客戶(hù)端都位于(不具備UPnP能力)NAT設(shè)備的后面,那么連接將不能建立。只有在遠(yuǎn)程協(xié)助中加入了語(yǔ)音會(huì)話(huà)時(shí),這個(gè)附加的SIP邀請(qǐng)邏輯才會(huì)被加入。 除了由NAT地址轉(zhuǎn)換產(chǎn)生的問(wèn)題(只有在通信路徑中存在多個(gè)NAT設(shè)備才會(huì)出現(xiàn)問(wèn)題)之外,遠(yuǎn)程協(xié)助協(xié)議需要 使用3389端口建立TCP連接。這意味著,通信雙方之間的所有防火墻都必須開(kāi)放3389端口。三、總結(jié)IM 和出席功能在大多數(shù)防火墻配置中都可以使用。 要想為處于防火墻兩側(cè)的通信雙方提供AV支持,5004到65535之間的所有UDP端口都必須打開(kāi),以允許SIP和媒體流(RTP)數(shù)據(jù)通過(guò)防火墻。這種設(shè)置是必需的,因?yàn)檫@些操作使用動(dòng)態(tài)端口。AS 和 WB也使用動(dòng)態(tài)端口進(jìn)行通信。 Ft可以通過(guò)在防火墻上開(kāi)放6891到6900間的端口得以實(shí)現(xiàn)。使用遠(yuǎn)程協(xié)助功能需要開(kāi)放3389端口。 為了使Windows Messenger的語(yǔ)音和視頻通信能夠通過(guò)一個(gè)不支持UPnP的防火墻,您需要對(duì)防火墻進(jìn)行配置,使其允許UDP端口5004 – 65535間的外來(lái)流量能夠通過(guò)防火墻。 對(duì)于其它通信目的,您可以相應(yīng)啟用以下端口: 文件傳輸:tcp 6891(如果想實(shí)現(xiàn)10條并發(fā)的文件傳輸連接,您需要開(kāi)放6891到6900間的所有端口) 應(yīng)用程序和白板共享:tcp1503 遠(yuǎn)程協(xié)助:3389 縮略術(shù)語(yǔ)表ALG–應(yīng)用程序?qū)泳W(wǎng)關(guān) AS–應(yīng)用程序共享 AV–音頻和視頻 FT–文件傳輸 ICF–Internet連接防火墻 ICS–Internet連接共享 IM–即時(shí)消息 ISA–Internet Security and Acceleration ISP–Internet 服務(wù)提供商 NAT–網(wǎng)絡(luò)地址轉(zhuǎn)換 RDP–遠(yuǎn)程桌面協(xié)議 RTC–實(shí)時(shí)通信 RTP–實(shí)時(shí)傳輸協(xié)議 SDP–會(huì)話(huà)描述協(xié)議 SIP–會(huì)話(huà)初始化協(xié)議 SSL–安全套接字層 TCP–傳輸控制協(xié)議 UDP–用戶(hù)數(shù)據(jù)報(bào)協(xié)議 UPnP–通用即插即用 WB–白板(共享)
#p#好,我們?cè)倏吹谒膫€(gè)monitor功能,ART,Application Response Time,應(yīng)用響應(yīng)時(shí)間。 應(yīng)用響應(yīng)時(shí)間是分析應(yīng)用的一個(gè)很好工具,主要用來(lái)分析應(yīng)用的性能。 ART是指一個(gè)客戶(hù)端發(fā)出一個(gè)請(qǐng)求,到服務(wù)器響應(yīng)回來(lái)的時(shí)間差。 一般來(lái)說(shuō),應(yīng)用響應(yīng)的快慢,是應(yīng)用性能的一個(gè)重要指標(biāo)。 應(yīng)用性能主要決定于幾個(gè)因素:網(wǎng)絡(luò)因素、服務(wù)器因素、客戶(hù)端因素、應(yīng)用協(xié)議因素 我們先看看如何操作,再來(lái)看看應(yīng)用這個(gè)功能。 我們打開(kāi)ART,大家看到Http的應(yīng)用響應(yīng)時(shí)間分析,這里有幾個(gè)列,server Address,Client Address. 他是怎么知道誰(shuí)是Server,誰(shuí)是Client?其實(shí)也就是看端口號(hào)和IP的對(duì)應(yīng)關(guān)系,比如如果一個(gè)數(shù)據(jù)包的目的IP是1.1.1.1,目的端口是80,Sniffer就會(huì)認(rèn)為1.1.1.1就是Http服務(wù)器。對(duì)應(yīng)的源IP就是Client。 AvgRsp—平均響應(yīng)時(shí)間 90%Rsp—90%響應(yīng)時(shí)間,去掉頭尾個(gè)5%,其實(shí)我個(gè)人覺(jué)得去掉最大的10%更合理一些。 還有最大最小的響應(yīng)時(shí)間,這些都是以毫秒為單位。 接著就是TotalRsp,這個(gè)是響應(yīng)次數(shù),單位是次。 接著是0到25毫秒的響應(yīng)有多少次,25到50毫秒的響應(yīng)有多少次。。等等。 后面還有server發(fā)送子節(jié)數(shù),client發(fā)送子節(jié)數(shù),timeout次數(shù)等等,5秒不響應(yīng)則Timeout。 我們?cè)倏纯丛趺丛黾悠渌麘?yīng)用,按屬性,選擇display protocol,添加你關(guān)心的協(xié)議,再確定,ART會(huì)重新刷新(范老師在演示) 你看我這里就有了telnet,Oracle。 (同學(xué)們:我們沒(méi)有Oracle) 我知道,其實(shí)平時(shí)我們更關(guān)心的是我們關(guān)鍵業(yè)務(wù),所以我們要把我們關(guān)鍵業(yè)務(wù)的端口添加進(jìn)來(lái),怎么添加?大家跟我來(lái), 選菜單上的toolsàoptionsàprotocol,拉到下面,添加一種應(yīng)用,比如Oracle,端口1521。 再在屬性里把這個(gè)新協(xié)議選上,有了嗎?(跑去解答問(wèn)題去了) 好,大家都做出來(lái)了,我們平常分析關(guān)鍵業(yè)務(wù)就行了,有一點(diǎn)要說(shuō)明,一種業(yè)務(wù)可能有多個(gè)應(yīng)用,也就是多個(gè)端口,需要同時(shí)分析。 有些同學(xué)喜歡把所有well known的協(xié)議添加到協(xié)議列表里,我在共享目錄上有兩個(gè)注冊(cè)表注入工具,大家只要運(yùn)行以下就可以將這些常用端口都注入到協(xié)議列表里,就不用一個(gè)一個(gè)敲了。其實(shí)我個(gè)人覺(jué)得不太必要,多了反而亂。 大家打開(kāi)注冊(cè)表,我們看一下協(xié)議列表,找到這兩項(xiàng): HKEY_LOCAL_MACHINE\SOFTWARE\Network Associates, Inc.\Sniffer\4.7\1CommonSettings\Protocols\IP Protocols\TCP HKEY_LOCAL_MACHINE\SOFTWARE\Network Associates, Inc.\Sniffer\4.7\1CommonSettings\Protocols\IP Protocols\UDP 這就是協(xié)議列表。注意不要有重復(fù)的,否則會(huì)報(bào)錯(cuò)。
![]() |
聯(lián)系客服