抓包(packet capture)就是將網(wǎng)絡(luò)傳輸發(fā)送與接收的數(shù)據(jù)包進(jìn)行截獲、分析,甚至可以用來(lái)轉(zhuǎn)發(fā),重傳等等,抓包可使用的場(chǎng)景很多,排錯(cuò)、驗(yàn)證、測(cè)試、核對(duì)等,我就舉幾個(gè)例子來(lái)說明吧。
場(chǎng)景一、在一臺(tái)存儲(chǔ)上啟用了SNMP服務(wù),隨后想通過驗(yàn)證UDP161/162的偵聽狀態(tài)來(lái)確認(rèn)服務(wù)是否確實(shí)啟動(dòng)了。
詳情:最簡(jiǎn)單的方式就是用進(jìn)入存儲(chǔ)的OS運(yùn)行類似netstat –anop查看UDP端口狀態(tài),還有些同學(xué)會(huì)條件反射的說telnet一下唄或者用nmap的工具做端口掃描,但是最后發(fā)現(xiàn)結(jié)果是Open | Filtered,這又有什么意思?除非找到這些工具的使用說明,否則無(wú)法明白其輸出的意思。但有的時(shí)候就是沒有太多參考文檔,比如netstat顯示的UDP端口狀態(tài)列都是空的,沒有任何狀態(tài),這代表什么呢?其實(shí)網(wǎng)絡(luò)抓包可以幫助我們。你可以在telnet的同時(shí)抓包,結(jié)果會(huì)發(fā)現(xiàn)telnet發(fā)起了TCP SYN包,立刻就被對(duì)端給Reset掉了,所以用telnet的提議是錯(cuò)誤的,用TCP去驗(yàn)證一個(gè)UDP端口是否在偵聽,顯然是南轅北轍了。同樣,做nmap掃描的同時(shí)抓包,你會(huì)發(fā)現(xiàn)原來(lái)UDP使用ICMP返回消息來(lái)判斷端口狀態(tài)。如果端口關(guān)閉,那么對(duì)端會(huì)返回port unreachable,如果沒有任何ICMP返回呢?那就說明中間存在包過濾邏輯,這也是為什么nmap掃描顯示open | filtered,nmap也無(wú)法確認(rèn)端口狀態(tài),因?yàn)闆]有任何ICMP消息返回。所以,nmap的掃描結(jié)果不能判斷端口狀態(tài),必須采取其它手段。不過這不是這個(gè)場(chǎng)景的重點(diǎn),我們的重點(diǎn)是可以通過抓包看到應(yīng)用程序的行為。
總結(jié):判斷端口狀態(tài)的方式很多,但你是否采用了正確的方式,完全可以通過抓包來(lái)判斷,它會(huì)告訴你一個(gè)應(yīng)用程序的行為,幫助你發(fā)現(xiàn)原因。
場(chǎng)景二、發(fā)現(xiàn)應(yīng)用程序與服務(wù)器之間的通信很慢。
詳情:為什么拿這個(gè)場(chǎng)景來(lái)說,因?yàn)樽グ蛯?duì)TCP的分析在這個(gè)場(chǎng)景里幾乎就直接問題原因所在了。通過分析TCP分段,我們發(fā)現(xiàn)了traffic pattern的變化,延遲由正常的幾個(gè)ms逐漸轉(zhuǎn)變?yōu)榱耸畮讉€(gè)ms,并在之后的流量中看到了Window Full以及最終的ZeroWindow消息。對(duì)TCP熟悉的同學(xué)立馬能夠判斷出接收端存在處理能力的問題,導(dǎo)致無(wú)法及時(shí)清理TCP接收緩存,使得隊(duì)列長(zhǎng)度越來(lái)越長(zhǎng),根據(jù)Little Law和Utilization Law,響應(yīng)時(shí)間會(huì)呈指數(shù)上升,這也為什么我們會(huì)觀察到響應(yīng)時(shí)間的變化。還有同學(xué)提問中間的交換機(jī)/路由器是否有可能發(fā)生這樣的過載?當(dāng)然是肯定的,但我們這個(gè)場(chǎng)景里不是這個(gè)問題,為什么?因?yàn)槲覀冏グ鼪]有看到任何重傳。
總結(jié):抓包在這個(gè)case幫你排除了看起來(lái)最有可能是網(wǎng)絡(luò)問題的問題,TCP的行為非常清晰的指出了問題所在。
最后,給到大家一些建議:
網(wǎng)絡(luò)包在大部分時(shí)候能夠告訴你真相,所以用好它很有價(jià)值。
網(wǎng)絡(luò)包告訴你發(fā)生了什么,但不會(huì)告訴你為什么發(fā)生,理解協(xié)議行為和分析是你的任務(wù)。
不要只看文檔,嘗試抓一下包,因?yàn)檎嫦嗫赡芎臀臋n是不同的。
面對(duì)海量數(shù)據(jù)包,需要訓(xùn)練你的眼睛和大腦來(lái)過濾消息
TCP其實(shí)是老好人,不要總是責(zé)怪它。理解它,分析它,你會(huì)發(fā)現(xiàn)錯(cuò)誤大部分時(shí)候是在別的地方。
新一代數(shù)據(jù)中心網(wǎng)絡(luò)十分復(fù)雜,用好工具,會(huì)幫你解決很多難題。
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。
網(wǎng)頁(yè)名稱:工欲善其事,必先利其器–網(wǎng)絡(luò)抓包-創(chuàng)新互聯(lián)
文章來(lái)源:http://www.rwnh.cn/article14/cegede.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)建站、App設(shè)計(jì)、網(wǎng)站建設(shè)、域名注冊(cè)、微信小程序、微信公眾號(hào)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容
營(yíng)銷型網(wǎng)站建設(shè)知識(shí)