數(shù)據(jù)包捕獲與解析_第1頁(yè)
數(shù)據(jù)包捕獲與解析_第2頁(yè)
數(shù)據(jù)包捕獲與解析_第3頁(yè)
數(shù)據(jù)包捕獲與解析_第4頁(yè)
數(shù)據(jù)包捕獲與解析_第5頁(yè)
已閱讀5頁(yè),還剩29頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、數(shù)據(jù)包捕獲與分析摘要 本課程設(shè)計(jì)通過(guò)Ethereal捕捉實(shí)時(shí)網(wǎng)絡(luò)數(shù)據(jù)包,并根據(jù)網(wǎng)絡(luò)協(xié)議分析流程對(duì)數(shù) 據(jù)包在TCP/IP各層協(xié)議中進(jìn)行實(shí)際解包分析,讓網(wǎng)絡(luò)研究人員對(duì)數(shù)據(jù)包的認(rèn)識(shí)上升到 一個(gè)感性的層面,為網(wǎng)絡(luò)協(xié)議分析提供技術(shù)手段。最后根據(jù)Ethereal的工作原理,用Visual C+編寫(xiě)一個(gè)簡(jiǎn)單的數(shù)據(jù)包捕獲與分析軟件。關(guān)鍵詞 協(xié)議分析;Ethereal;數(shù)據(jù)包;Visual C + +1引言本課程設(shè)計(jì)通過(guò)技術(shù)手段捕獲數(shù)據(jù)包并加以分析,追蹤數(shù)據(jù)包在TCP/IP各層的封 裝過(guò)程,對(duì)于網(wǎng)絡(luò)協(xié)議的研究具有重要的意義。Ethereal是當(dāng)前較為流行的圖形用戶接 口的抓包軟件,是一個(gè)可以用來(lái)監(jiān)視所有在網(wǎng)絡(luò)上

2、被傳送的包,并分析其內(nèi)容的程序。它 通常被用來(lái)檢查網(wǎng)絡(luò)工作情況,或是用來(lái)發(fā)現(xiàn)網(wǎng)絡(luò)程序的bugs。通過(guò)ethereal對(duì)TCP、 UDP、SMTP, telnet和FTP等常用協(xié)議進(jìn)行分析,非常有助于網(wǎng)絡(luò)故障修復(fù)、分析以及 軟件和協(xié)議開(kāi)發(fā)。,它以開(kāi)源、免費(fèi)、操作界面友好等優(yōu)點(diǎn)廣為世界各地網(wǎng)絡(luò)研究人員 使用為網(wǎng)絡(luò)協(xié)議分析搭建了一個(gè)良好的研究平臺(tái)。1.1課程設(shè)計(jì)的內(nèi)容掌握數(shù)據(jù)包捕獲和數(shù)據(jù)包分析的相關(guān)知識(shí);掌握Ethreal軟件的安裝、啟動(dòng),并熟悉用它進(jìn)行局域網(wǎng)數(shù)據(jù)捕獲和分析的功能;設(shè)計(jì)一個(gè)簡(jiǎn)單的數(shù)據(jù)包捕獲與分析軟件。1.2課程設(shè)計(jì)的要求按要求編寫(xiě)課程設(shè)計(jì)報(bào)告書(shū),能正確闡述設(shè)計(jì)結(jié)果。通過(guò)課程設(shè)計(jì)培養(yǎng)學(xué)

3、生嚴(yán)謹(jǐn)?shù)目茖W(xué)態(tài)度,認(rèn)真的工作作風(fēng)和團(tuán)隊(duì)協(xié)作精神。學(xué)會(huì)文獻(xiàn)檢索的基本方法和綜合運(yùn)用文獻(xiàn)的能力。在老師的指導(dǎo)下,要求每個(gè)學(xué)生獨(dú)立完成課程設(shè)計(jì)的全部?jī)?nèi)容。1.3課程設(shè)計(jì)平臺(tái)Windows XP; Ethereal; Visual C + +2使用Ethereal對(duì)數(shù)據(jù)包進(jìn)行捕獲與分析2.1軟件Ethereal簡(jiǎn)介Ethereal (Ethereal: A Network Packet Sniffing Tool)是當(dāng)前較為流行的一種計(jì)算機(jī) 網(wǎng)絡(luò)調(diào)試和數(shù)據(jù)包嗅探軟件。Ethereal基本類(lèi)似于tcpdump,但Ethereal還具有設(shè)計(jì)完 美的GUI和眾多分類(lèi)信息及過(guò)濾選項(xiàng)。用戶通過(guò)Ethereal,

4、同時(shí)將網(wǎng)卡插入混合模式, 可以查看到網(wǎng)絡(luò)中發(fā)送的所有通信流量。Ethereal應(yīng)用于故障修復(fù)、分析、軟件和協(xié) 議開(kāi)發(fā)以及教育領(lǐng)域。它具有用戶對(duì)協(xié)議分析器所期望的所有標(biāo)準(zhǔn)特征,并具有其它同 類(lèi)產(chǎn)品所不具備的有關(guān)特征。Ethereal主要具有以下特征:在實(shí)時(shí)時(shí)間內(nèi),從網(wǎng)絡(luò)連接處捕獲數(shù)據(jù),或者從被捕獲文件處讀取數(shù)據(jù); Ethereal可以讀取從tcpdump (libpcap )、網(wǎng)絡(luò)通用嗅探器(被壓縮和未被壓縮)、 SnifferTM 專(zhuān)業(yè)版、NetXrayTM、Sun snoop 和 atmsnoop、Shomiti/Finisar 測(cè)試員、 AIX 的 iptrace、Microsoft 的網(wǎng)

5、絡(luò)監(jiān)控器、Novell 的 LANalyzer、RADCOM 的 WAN/LAN 分析器、ISDN4BSD 項(xiàng)目的 HP-UX nettl 和 i4btrace、Cisco 安全 IDS iplog 和 pppd 日志(pppdump 格式)、WildPacket 的 EtherPeek/TokenPeek/AiroPeek或者可視網(wǎng)絡(luò)的可視 UpTime 處捕獲的文件。此外Ethereal也能從 Lucent/Ascend WAN 路由器和 Toshiba ISDN 路由器中讀取跟 蹤報(bào)告,還能從 VMS的TCPIP讀取輸出文本和 DBS Etherwatch。 從以太網(wǎng)、 FDDI、PPP

6、、令牌環(huán)、IEEE 802.11、ATM 上的IP和回路接口(至少是某些系統(tǒng), 不是所有系統(tǒng)都支持這些類(lèi)型)上讀取實(shí)時(shí)數(shù)據(jù)。通過(guò)GUI或TTY模式tethereal程序,可以訪問(wèn)被捕獲的網(wǎng)絡(luò)數(shù)據(jù)。通過(guò)editcap程序的命令行交換機(jī),有計(jì)劃地編輯或修改被捕獲文件。當(dāng)前602協(xié)議可被分割。輸出文件可以被保存或打印為純文本或PostScript格式。通過(guò)顯示過(guò)濾器精確顯示數(shù)據(jù)。顯示過(guò) 濾器也可以選擇性地用于高亮區(qū)和顏色包摘要信息。所有或部分被捕獲的網(wǎng)絡(luò)跟 蹤報(bào)告都會(huì)保存到磁盤(pán)中1。2.2利用Ethereal捕獲數(shù)據(jù)包安裝完Ethereal后,單擊Capture下的Option菜單,打開(kāi)捕獲選項(xiàng)對(duì)話

7、框,設(shè)置好 捕捉接口(interface)和過(guò)濾器(capture filter),設(shè)置混雜模式(promiscuous mode)選項(xiàng) (此選項(xiàng)使得網(wǎng)卡并不檢驗(yàn)數(shù)據(jù)幀的目的地址,用以截獲網(wǎng)上的任何幀),其他選項(xiàng)可采 用默認(rèn)設(shè)置如圖2-1,再單擊Start按鈕即可實(shí)時(shí)截獲數(shù)據(jù)包。用Ethereal的捕獲窗口如 圖2-2,捕獲到的實(shí)時(shí)網(wǎng)絡(luò)數(shù)據(jù)包的部分截圖見(jiàn)圖2-3。所截獲的數(shù)據(jù)包分別在包列表 (PackList)、包細(xì)節(jié)(Packet Details)和包字節(jié)(PackeBytes)三欄窗口中顯示。其中上欄的 包列表窗口按截獲的時(shí)間順序顯示出數(shù)據(jù)包的基本信息:編號(hào)(代表收到數(shù)據(jù)包的次 序)、時(shí)間

8、、源地址、目的地址協(xié)議名稱以及關(guān)于此數(shù)據(jù)包的摘要信息;中間欄的包細(xì) 節(jié)窗口以樹(shù)形顯示當(dāng)前數(shù)據(jù)包在各協(xié)議層的封裝細(xì)節(jié),包括首部和數(shù)據(jù);下欄的包字節(jié) 窗口則以十六進(jìn)制和ASCII碼顯示被截獲數(shù)據(jù)包的詳細(xì)內(nèi)容左邊一欄顯示偏移量,中間 一欄顯示十六進(jìn)制數(shù)值,右邊一欄顯示解碼后相對(duì)應(yīng)的字符(控制字符示為1個(gè)點(diǎn))。圖2-1Ethereal的設(shè)置No.,TimeSourceDestinationProtocolInfo10.000000433UDPsource port: 5000 Destinationport:800020.000070492ICQ30.014033334UDPsource port:

9、8000 Desfinationport:500040.014054924ICQ50.017242419UDPSource port: 5001 Destinationport:800060.031015194UDPSource port: 8000 Destinationport:5001y0.284210055NBNSName query nb 80. 315470055NBNSName query nb g0.475350055UDPSource port: 2445 Destinationport:9997101.034160010.28. 23. 255NBNSName query

10、NB ACM.ASUS.COM.CNii1.06538510.28.22. 2010.28.23. 255NBNSName query NB 121.08960310.28.23. 25210.28.23. 255NBNSName query NB SYZX095131.0904225255NBNSName query NB SYZX095141.195396Huav/eiTe_12: 34 : 56spanning-tree-(forSTPMST. Root = 0/00:03:0f:10:48:05 Cost=40020 Port151.277332478OICQoicq Protocol

11、161.39869300:lb:b9:8f:2f:59BroadcastARPWho has 1? Tell 5017 1.7296153055 BROWSE Host Announcement NSYZX10030, workstation, SQL servt18:784125010.28.23. 255nbns Name query NB ACM.CN田 Frame 18 (92 bytes on wire, 92 bytes captured)ffi Ethernet II, src: 00:24:8c:8a:05:81 (00:24:8c:8a:05:81), D

12、st: Broadcast (ff:ff:ff:ff:ff:ff) 田 internet Protocol, src: 10,28,22,20 (0), Dst: 55 (10.28.23,255)田 user Datagram protocol, src port: netbios-ns (137), Dst port: netbios-ns (137)田 NetBIOS Name service000000100020003000400050ff ff00 4e17 ff00 0042 464f 454 1 3 5 3 0 2 13 4 4 0 0 0 0 0 4 1 0 4 0 2 4

13、4 f o 9 o 6 1 f o 8 o 4 4 f o o of o o o 4 4 fC9 o 6 5 f 1 8 o 4 4OCL5B 0 10-44 5ao fe0 0 4 4 0 4 0 3 5 0 114 4 s 6 1 e o 0 10 4 5 1 c 9 5 5 1 8 14 4 4 0-a o 4 4 o 0 0 8 4 4 0 d 8 4 5 5 o 8 3 5 4 4 2 cbf 2f o 8 3 8 4-0J E.N;8E BEDENCOEBFDFFFDC OEDEPENCOEDEOAA.圖2-3捕獲的數(shù)據(jù)包2.2利用Ethereal對(duì)捕獲數(shù)據(jù)包進(jìn)行分析Etherea

14、l是當(dāng)前較為流行的一種計(jì)算機(jī)網(wǎng)絡(luò)調(diào)試和數(shù)據(jù)包嗅探軟件,是一個(gè)可以用來(lái) 監(jiān)視所有在網(wǎng)絡(luò)上被傳送的包,并分析其內(nèi)容的程序。它通常被用來(lái)檢查網(wǎng)絡(luò)工作情況, 或是用來(lái)發(fā)現(xiàn)網(wǎng)絡(luò)程序的bugs。通過(guò)ethereal對(duì)TCP、UDP、SMTP、telnet和FTP等常 用協(xié)議進(jìn)行分析,非常有助于網(wǎng)絡(luò)故障修復(fù)、分析以及軟件和協(xié)議開(kāi)發(fā)。(1)ARP協(xié)議分析ARP,全稱Address Resolution Protocol,地址解析協(xié)1它工作在數(shù)據(jù)鏈路層,在 本層和硬件接口聯(lián)系,同時(shí)對(duì)上壓供服務(wù)。TP數(shù)據(jù)包常通過(guò)以太網(wǎng)發(fā)送,以太網(wǎng)設(shè)備 并不識(shí)別32IP地址,它們是以48位以太網(wǎng)地址傳輸以太網(wǎng)數(shù)據(jù)包。必須把IP目的

15、地址 轉(zhuǎn)換成以太網(wǎng)目的地址。因此,在以太網(wǎng)中,一個(gè)主機(jī)要和另一個(gè)主機(jī)進(jìn)行直接通信, 必須要知道目標(biāo)主機(jī)的MAC地址。但這個(gè)目標(biāo)MAC地址是如何獲得的呢?它就是通過(guò) 地址解析協(xié)議獲得的。圖2-4就是對(duì)ARP捕獲的狀態(tài)窗口。ARP協(xié)議用于將網(wǎng)絡(luò)中的 IP地址解析為的硬件地址(MAC地址),以保證通信的順利進(jìn)行。網(wǎng)絡(luò)當(dāng)中經(jīng)常會(huì)使用 到ARP協(xié)議,所以可以使用Ethereal抓取網(wǎng)絡(luò)中的ARP數(shù)據(jù)包,如圖2-5,從圖2-5中 看到,已經(jīng)捕獲到了一些ARP的數(shù)據(jù)包,每個(gè)數(shù)據(jù)包占一行,比如第1個(gè)ARP數(shù)據(jù)包, 從它的info信息里面可以看到對(duì)于這個(gè)數(shù)據(jù)包的簡(jiǎn)要的說(shuō)明:Who has 40? Tell 50

16、。這個(gè)info表明ARP協(xié)議的主要功能:通過(guò)IP地址找對(duì)方的MAC地 址。針對(duì)ARP協(xié)議還可以具體分析它的結(jié)構(gòu),以往的教學(xué)中學(xué)生只能從課本上看到ARP 協(xié)議的圖,如圖6,學(xué)生容易產(chǎn)生疑問(wèn),難道真的是這樣嗎?在我們可以通過(guò)分析抓取到的數(shù)據(jù)包來(lái)切切實(shí)實(shí)地看一下它的結(jié)構(gòu)到底是什.么樣的,對(duì)照?qǐng)D2-6看一下到底是不是一致。隨便找一個(gè)ARP的數(shù)據(jù)包,將其展開(kāi)可以看到圖2-7的結(jié)構(gòu),對(duì)比圖2-7中框部 分與圖2-6中框部分,可以發(fā)現(xiàn)兩者是一致的,通過(guò)對(duì)比學(xué)生就會(huì)對(duì)ARP的結(jié)構(gòu)有更深 刻的認(rèn)識(shí)。圖2-4ARP捕獲狀態(tài)窗口No.,TimeSourceDestinationProtocolInfo110.000

17、00000:lb:b9:8t::2t::59BroadcastARPwhohas40?Te 1 110. 28.23.25q23.8797650:ld:7d:c7fd79BroadcastARPwhohas63?Tell4538.03873300:lb:b9:8f2f59BroadcastARPwhohas6?Tell50412.8107270:lb:b9:8f2f59BroadcastARPwhohas8?Tell10.28.23. 2 50513.62289100:24:8c:8a0544BroadcastARPwhohas36?Tell413.67109700:lb:b9:8f2f59B

18、roadcastARPwhohas09?Tell5013.734681o:lb:b9:8f2f59BroadcastARPwhohas29?Tell10.28.23. 25023.59566200:lb:b9:8f2f59BroadcastARPwhohas6?Tell5024.0166060:lb:b9:alfc5dBroadcastARPwhohas4?Tell10.28.23. 2411024.68196200:lb:b9:8f2fBroadcastARPwhohas75?Tell501126.591200DigitalC-02baBroadcastARPwhohas44?Tell541

19、228.61134300:lb:b9:8f2fBroadcastARPwhohas4?Tell501329.04035000:lb:b9:alfcBroadcastARPwhohas42?Tell411429.80577100:24:8c:8a05BroadcastARPwhohas41?Tell41529.82325500:ld:7d:c7fdBroadcastARPwhohas4?Tell451634.2710090:lb:b9:8f2fBroadcastARPwhohas8?Tell10.28.23. 2 501735.28938400:lb:b9:8f2f59BroadcastARPw

20、hohas32?Tell500 Frame 1 (106 bytes on wire, 106 bytes captured)田 Ethernet II, Src: 00:1b:b9:fif:2f:59 (00:1b:b9:8f:2f:59)a Dst: Broadcast (ff:ff:ff:ff:ff:ff) E Address Resolution Protocol (request)a o o o o uf o o o o u 7 o o o o u 1 o o o o b c o o o o u 1 o o o oa o o o o u o o o o o9 0 0 0 0 -T15

21、OOOO t f o o o o2 0 0 0 0 rf c o o o o 8 8 8 0 0 0 0 9 9 7 0 0 0 0 Db 1 o o o oDb c o o o o 111o o o o u o a o o o o u o o o o o o t 1 o o o o o r o o o o o o o o o o o o t o o o o o o t 4 o o o o o r o o o o o o 6 o o o o o t o o o o o o r o o o o o o T o o o o o o 800000 t o o o o o ouuuu001000200

22、030004 000500060硬件地址長(zhǎng)度l協(xié)議地址長(zhǎng)度以太網(wǎng) 目的地址以太網(wǎng)源 地址幀類(lèi) 型硬件類(lèi) 型協(xié)議類(lèi)型OP發(fā)送端以太 網(wǎng)地址發(fā)送端IP 地址目的以太網(wǎng) 地址目的IP地 址圖2-6ARP報(bào)文結(jié)構(gòu)TimeSourceDestination0.00000000:lb:b9:8f:2f:59BroadcastProtocolARPInfoWho has 10.2S.23.140?Tell 50g Frame 1 (106 bytes on wire, 106 bytes captured)00000010002Q00300040005000602f000000000400000000000

23、100000000001 1 Do o oc o o o o 1 o o o o ao o o o o D o o o99700002 0 0008f 8c 00 0000 0016 c o o o O O 1 o o o O 8 a o o o O o o o o o oo o o O ofoooo 070000 O 1 o o o OArrival Time: Jul 2, 2010 15:20:14.311771000Ti nie delta from previous packet: 0. 000000000 secondsTinie since reference or first

24、frame: 0. 000000000 secondsFrame Number: 1Packet Length: 106 bytes capture Length: 106 bytes protocols in frame: eth:arp col or1 mg Rule Name: arp Colorimg Rule Strimg: arp日 Ethernet lla src: 00:1b:b9:8f:2f:59 (00:1b:b9:8f:2f:59), Dst: Broadcast (ff:ff:ff:ff:ff:ff)E) Destination: Broadcast (ff:ff:ff

25、:ff:ff:ff)Address: Broadcast (ff:ff:ff:ff:ff:ff)1=Multicast: This is a multicast frame1=Locally Administrated Address: This is not a factory default address 0 source: 00:1b:b9:8f:2f:59 (00:lb:b9:8f:2f:59)Address: 00:1b:b9:8f:2f:59 (00:1b:b9:8f:2f:59)0=Multicast: This is a unicast frame0=Locally Admi

26、nistrated Address: This is a factory default address Type: ARP (0 x0806) Trail er: 000000000000000000000000000000000000000000000000.Frame check sequence: 0 x00000000 1 incorrect, should be 0 xfi64b29bb 日 Address Resolution Protocol (request)Hardware type: Ethernet (0 x0001)Protocol type: IP (0 x0800

27、)Hardware size: 6Protocol size: 4 opcode: request (0 x0001) sender MAC address: 00:lb:b9:fif:2f:59 (00:1b:b9:8f:2f:59) Sender IP address: 50 (10.2S.23.250)Target MAC address: 00:00:00.00:00:00 (00:00:00:00:00:00)Target IP address: 40 (40)圖2-7ARP結(jié)構(gòu)(2)利用Ethereal分析TCP/IP機(jī)制TCP是一種面向連接的、可靠的傳輸層協(xié)議,TCP數(shù)據(jù)傳(只有

28、連接建立后才可進(jìn)行 數(shù)據(jù)傳輸)需要通過(guò)在客戶端和服端建立特定的虛電路連接來(lái)完成,該過(guò)程通常被稱為 “三次握手”,如圖2-8,即發(fā)送方先發(fā)送連接請(qǐng)求,然后接受方進(jìn)行連接確認(rèn),最發(fā)送方對(duì)接 受方再次進(jìn)確認(rèn)。下面就以Ethereal捕獲的建TCP連接過(guò)程的三個(gè)數(shù)據(jù)包為例對(duì)TCP/IP 協(xié)議進(jìn)行分析。SYN,SEQ=xSYN,SEQ=y,ACK=x+1ACK=y+1圖2-8三次握手示意圖為了能夠捕獲到“三次握手”過(guò)程中的數(shù)據(jù)包,首先讓Ethereal 一直保持捕獲狀態(tài)(圖 2-9),因?yàn)槭峭ㄟ^(guò)TCP來(lái)建立的,可以將Ethereal的過(guò)濾器設(shè)置為T(mén)CP,此時(shí)只捕獲所 有經(jīng)過(guò)計(jì)算機(jī)的TCP協(xié)議數(shù)據(jù)包。圖2

29、-9TCP捕獲狀態(tài)窗口在保持捕獲的狀態(tài)下,打開(kāi)一個(gè)新的網(wǎng)頁(yè),如,由于訪問(wèn)網(wǎng)頁(yè) 首先需要通過(guò)“三次握手”建立連接,然后才能進(jìn)行數(shù)據(jù)的傳輸,此時(shí),Ethereal就可以 捕獲到在訪問(wèn)網(wǎng)頁(yè)過(guò)程中建立連接的TCP數(shù)據(jù)包(圖2-10)圖2-10 TCP捕獲狀態(tài)窗口在捕獲狀態(tài)窗口中點(diǎn)擊停止,將所有捕獲到的數(shù)抿所顯示出圖2-11顯示的就是所 捕到的前4個(gè)數(shù)據(jù)包,從圖中可以看到1號(hào)數(shù)據(jù)包一 3號(hào)數(shù)據(jù)包是連接建立過(guò)程中的數(shù) 據(jù)包,4號(hào)數(shù)據(jù)包是在連接建立完成以后開(kāi)始傳輸數(shù)據(jù)。圖2-11捕獲到的數(shù)據(jù)包客戶端發(fā)送連接請(qǐng)求,從圖2-12可以看出,該數(shù)據(jù)包封裝了三個(gè)頭信息:以太網(wǎng) (Eth-ernet)幀、IP數(shù)據(jù)報(bào)(I

30、P數(shù)據(jù)報(bào)首部格式如圖2-12)和TCP報(bào)文段(TCP報(bào)文段固 定首部格式如圖2-13)。在物理鏈路層,數(shù)據(jù)以幀的方式進(jìn)行傳輸。以太網(wǎng)幀頭信息中,描 述了該數(shù)據(jù)包的接收方MAC(MAC的結(jié)構(gòu)如圖2-14)地址為00:03:0f:00:0c:4b發(fā)起連 接請(qǐng)求的源主機(jī)MAC為00:03:0d:a4:0f:72,在幀中封裝的協(xié)議類(lèi)型type值為0 x0800,即IP 數(shù)據(jù)報(bào)。在網(wǎng)絡(luò)層,加工的主要數(shù)據(jù)對(duì)象是IP數(shù)據(jù)報(bào)。IP協(xié)議是TCPIP協(xié)議族中的核心 協(xié)議之一,所有的TCP、UDP、ICMP數(shù)據(jù)都以IP數(shù)據(jù)報(bào)格式傳輸。從以上請(qǐng)求數(shù)據(jù)包 的IP首部可以看出,此IP數(shù)據(jù)報(bào)版本號(hào)(version)為4(即

31、這個(gè)數(shù)據(jù)報(bào)為IPv4),首部(head length)為 20bytes,服務(wù)類(lèi)型(services field)為 0 x00,數(shù)據(jù)報(bào)總長(zhǎng)(total length,即 IP 首部+數(shù)據(jù) 載荷)為48,標(biāo)識(shí)(identification)為0 x96b53,標(biāo)志(flags)為0 x04表示報(bào)文不分段,段偏移 (fragmen offset)為0,生存時(shí)間(time to live)為128,數(shù)據(jù)報(bào)中上層協(xié)議類(lèi)型protocol值為 0 x06 (即TCP報(bào)文段),頭部校驗(yàn)和0 x1206表示正確,請(qǐng)求主機(jī)的IP地址為26, 目的主機(jī)的IP地址為0。在運(yùn)輸層,主要數(shù)據(jù)對(duì)象是TCP報(bào)文。在以上

32、的 TCP報(bào)文段中,描述了請(qǐng)求方源端口號(hào)(source port)為1615;目的端口號(hào)(destination port)為 80,其中0是HTTP協(xié)議的保留端口號(hào);序列號(hào)SEQ是本次連接的初始序號(hào),因此在連接請(qǐng) 求時(shí)相對(duì)初始值是0,其實(shí)際值是24 68 15 a1;確認(rèn)號(hào)是00 00 00 70;頭部長(zhǎng)度(header length)為28bytes;標(biāo)志位(flags)為0 x0002,指示ACK標(biāo)志為0表明確認(rèn)號(hào)被忽略,SYN=1 表示正在進(jìn)行連接請(qǐng)求,通過(guò)SYN和ACK也可以用來(lái)區(qū)分 Connection Request和 Connection Accepted,在連接請(qǐng)求中,SYN

33、=1、ACK=0,連接響應(yīng)時(shí),SYN=1、ACK=1;PSH 為0;窗口字段(window size)指示發(fā)送 方想要接收的最大字節(jié)數(shù)為65535;校驗(yàn)和 (checksum)為0 xf6a表明正確;最后是8bytes的選項(xiàng)字段。比特 04816192431版本首部長(zhǎng)度服務(wù)類(lèi)型總長(zhǎng)度標(biāo)識(shí)標(biāo)志片偏移生存時(shí)間協(xié)議首部檢驗(yàn)和源地址目標(biāo)地址圖2-12 IP數(shù)據(jù)報(bào)首部格式比特 08162431源端口目的端口序號(hào)確認(rèn)號(hào)數(shù)據(jù)偏移保留UAPTNN窗口檢驗(yàn)和緊急指針字節(jié) 6246-1054目的MAC地址源MAC地址類(lèi)型數(shù)據(jù)FCS圖2-14以太網(wǎng)V2 MAC幀格式LJGL L IId. L I 5 I ;_L-1

34、 I g I L d 11- _U U : U :_ : 4 U_::00;iTotal Length: 48I dent i f i cat i on: 0 x96b 5 (38 5 81)E Fl ags : 0 x04 (Dor t FragmentFragment offset: 0Time to 1ive: 128Protoccil : TCP C0 x06;:iE Header checksum: 0 x1206 correctSource: 26 C10-10-23.226)Transmi Ccintcil FTUtdccil, Su 尸口1:: 1615 (1615), Dst

35、 Fint: http (80), Seq: 0, Len: 0Destination: 0 C- 0:iSource port: 1615 QLECL5)Destination port: http8。)sequence number : 0 Crel ative sequence number) Header 1ength: 28 bytes回 Flags: 0 x0002 (SYN)0c ngesti 0n wi ndow Reduced (cwr;:i : Not set.0ECN-Echo: Not set.0urgent: Not set.0 .Acknow-! edgment:

36、Not set0.Push: Not set0.Reset: Not set1.syn: setQFin: Not setwi ndow size: 65 53 5Checksum: Oxf06a cectH o pt i n s : (8 byt e s :)Maximum segment size: 1460 bytes nop -NOPSACK permitted00000010002000306 o o o o o 8 b oo c o o 4 o 5 o b6 _yO 8 of 5 _d 4 3 o 2 o e8 7 o 1 2 _d 7 oo4 6 a o d 2 o 1s 4 6

37、 o 42 o Q oo Q o o o f 3 牛6o pf1 4-dbr J 51 oo 2o oQ 4o o17oTransmission Control Protocol (tcp)j 28 bytes|p: 1673 D: 1673 M: 0 Drops: 0圖2-15發(fā)送方發(fā)出的連接請(qǐng)求數(shù)據(jù)包對(duì)此數(shù)據(jù)包的具體分析過(guò)程如圖2-12,在此我們僅涉及連接的過(guò)程中一些重要地方 的變化:數(shù)據(jù)包由服務(wù)端0發(fā)至客戶端26。在響應(yīng)TCP報(bào)文段中, 源端口和目的端口地址相對(duì)改變,相應(yīng)數(shù)據(jù)包的起始序列號(hào)SEQ為ef 84 c8 9b,確認(rèn)號(hào)為 24 68 17 a2(實(shí)際上是請(qǐng)求數(shù)據(jù)的起始序號(hào)加1,也

38、表示下一個(gè)希望接收的數(shù)據(jù)的起始位 置),標(biāo)志位0 x0010指示ACK標(biāo)志為1表明確認(rèn)號(hào)有效、SYN仍然為1。圖2-16服務(wù)端響應(yīng)數(shù)據(jù)包客戶端連接確認(rèn)在TCP連接建立的最后階段如圖2-17,客戶端對(duì)接受到的服務(wù)器相 應(yīng)進(jìn)行確認(rèn),到此為止建立完整的TCP連接,開(kāi)始全雙工模式的數(shù)據(jù)傳輸過(guò)程。圖2-17客 戶端確認(rèn)數(shù)據(jù)包在確認(rèn)階段,數(shù)據(jù)包由客戶端26發(fā)送至服務(wù)端 0,TCP中的序列號(hào)為24 68 15 a2(即上次服務(wù)器響應(yīng)報(bào)文的確認(rèn)號(hào)),報(bào)文段中 的本次確認(rèn)號(hào)為73 ff 17 ff(即上次的序列號(hào)加1)表示客戶端下一次希望從主機(jī)接收的數(shù) 據(jù)的起始位置;標(biāo)志位0 x0010指示ACK標(biāo)志為1表明確

39、認(rèn)號(hào)有效,SYN置為0表示連接 建立結(jié)束。通過(guò)上述利用Ethereal對(duì)TCP連接過(guò)程的三個(gè)數(shù)據(jù)包的分析,可以看出TCP/IP 協(xié)議的Three-way handshaking過(guò)程如下:第一步,客戶端發(fā)出連接請(qǐng)求,TCP數(shù)據(jù) 為:SEQ=24 68 15 a2,ACKNUM=00 00 00 00,SYN=1,ACK=0。第二步,服務(wù)端確認(rèn)可以連 接,TCP 數(shù)據(jù)為:SEQ=ef 84 c8 9b,ACKNUM=24 68 15 a2,SYN=1,ACK=1。第三步,客戶端 建立連接,TCP 數(shù)據(jù)為:SEQ=24 68 15 a2,ACKNUM=ef 84 c8 9b,SYN=0,ACK=1。

40、TCP/IP 協(xié)議是一個(gè)協(xié)議族,包含大小上百個(gè)協(xié)議和標(biāo)準(zhǔn)。通過(guò)以上對(duì)TCP連接過(guò)程的分析,只是 提出了使用Ethereal進(jìn)行協(xié)議分析的思路和方法,使用Ethereal也可方便地對(duì)其它協(xié)議進(jìn) 行分析,例如分析HTTP協(xié)議的客戶端請(qǐng)求與服務(wù)器應(yīng)答過(guò)程及它們的頭部格式,分析 ICMP協(xié)議的錯(cuò)誤報(bào)告和信息反饋機(jī)制等,具體分析方法與上面的分析相似,這里不再贅述4。Filter: II Expression. Clear ApplyMo. TimeSourceDestinationProtocol Info3 0.70127126i TCP 1615 http ACK 5eq=l Ack=l Wln=6

41、5 53 5 TCP CHECKSE Frame 3 (54 bytes on wire, 54 bytes capturedjE Ethernet II, Src: Uni willC_a4:0f:72 Q00:03:Od:a4:Of:72), Dst: Di gitalc_00:0c:4 b Q00:03:Of:00:0c:4b:E internet Protocol, Src: 26 (26), Dst: 0 (0)S Transmission control Protocol, src Port: 1615 (1615), Dst Port: http (80), Seq: 1, Ac

42、k: 1, Len: 0Source port: 1615 (1615;)sequenee numbe: 1 (elatiuE sequence numbe)Desti nari on port: http (80)0000001000200030o o 5 o o o o o o 7f 7 o b 4 2 4-662 9 o 5 3 8 8f o 2 2 o o 5f o of f6 o o o o 0 8 b oo c o o 44 c a o d 2 o 10 8 0 of 1 5 _d o4 3 5 o 2 b o e 98 7 8 o 1 c 2 _d 47 0 8 t af o o

43、 eConqesti on Wi ndow Redljced (cwr) : Not set.0ECN-Echo: Nor set.0urgent: Nor set.1 .Acknow!edgment: set.0.Push: Nor set0.Reser: Nor set0.5yn: Nor setFin: Not setwi ndow size:65535Ac know! ed g em e nr num ber : 1(ve ar i v e a c k: num be)Header 1engrh: 20 bytes回 Flags: 0 x0010 (ACK)checksum: 0 x5

44、227 incorrect, should be 0 x64feSequence number (tcp.seq)., 4 byte5| P: 1673 D: 1673 M: 0圖2-17客戶端確認(rèn)數(shù)據(jù)包3用Visual C + +設(shè)計(jì)一個(gè)簡(jiǎn)單的數(shù)據(jù)包捕獲和分析軟件3.1 Visual C+簡(jiǎn)介Visual C + +即VC,微軟公司出品的高級(jí)可視化計(jì)算機(jī)程序開(kāi)發(fā)工具。他提 供了一套開(kāi)發(fā)環(huán)境:Visual Studio , Visual Studio本身包括一個(gè)文本編輯器、資源 編輯器、工程編譯工具、一個(gè)增量連接器、源代碼瀏覽器、集成調(diào)試工具,以及 一套聯(lián)機(jī)文檔,借助這套工具,用戶可以隨心所欲

45、地開(kāi)發(fā)出各種功能的應(yīng)用軟件 以及借助OpenGL和DirectX技術(shù)開(kāi)發(fā)游戲軟件。Visual C+可以識(shí)別C/C+并編 譯,支持MFC類(lèi)庫(kù),并提供了一系列模板,常用的MFC AppWizard(EXE/DLL),MFC ActiveXControlWizard,Win32Application,Win32ConsoleApplication,ATLCOMAppWi zard。這種可視化編程環(huán)境可以令程序員花更多精力在程序功能的實(shí)現(xiàn)上,而不是 底層的建設(shè)上,這就大大加快了程序開(kāi)發(fā)速度和效率,這也是Visual C+ 一個(gè)顯著的特點(diǎn)。利用Visual C+編譯出的程序空間小,運(yùn)行快,比其他的編譯

46、工具編譯出 的軟件占據(jù)較多優(yōu)勢(shì)?,F(xiàn)在常用的版本有Visual C+ 6.0/.Net/2005。3.2WinPcap 簡(jiǎn)介WinPcap是一個(gè)在Windows操作系統(tǒng)下的免費(fèi)、公開(kāi)的用于直接訪問(wèn)網(wǎng)絡(luò)的開(kāi)發(fā)工 具包(編程API)。大多數(shù)Windows網(wǎng)絡(luò)應(yīng)用程序都是通過(guò)Winsock API(Windows套接 口)這類(lèi)高級(jí)編程接口訪問(wèn)網(wǎng)絡(luò)的。這種方法允許在網(wǎng)絡(luò)上進(jìn)行簡(jiǎn)單的數(shù)據(jù)傳送,因?yàn)?操作系統(tǒng)的TCP/IP協(xié)議棧實(shí)現(xiàn)軟件會(huì)處理底層細(xì)節(jié)(協(xié)議操作、流程重組等等),并提 供一個(gè)類(lèi)似于讀寫(xiě)文件的函數(shù)接口。然而,有時(shí)候“簡(jiǎn)便方法”并不能滿足實(shí)際需要。有 些程序希望繞過(guò)TCP/IP協(xié)議棧,直接處理底層

47、網(wǎng)絡(luò)中的通信數(shù)據(jù),它們需要對(duì)網(wǎng)絡(luò)進(jìn) 行底層進(jìn)行直接訪問(wèn),即在沒(méi)有類(lèi)似協(xié)議棧(TCP/IP協(xié)議棧)的實(shí)體介入條件下對(duì)網(wǎng)絡(luò) 進(jìn)行原始訪問(wèn)。基于Winsock API編程,應(yīng)用程序是通過(guò)調(diào)用操作系統(tǒng)提供的編程接口 訪問(wèn)TCP/IP協(xié)議棧實(shí)現(xiàn)網(wǎng)絡(luò)通信的?;赪inPcap編程,網(wǎng)絡(luò)程序?qū)嶋H上是繞開(kāi)操作 系統(tǒng)的TCP/IP協(xié)議棧直接通過(guò)底層網(wǎng)絡(luò)發(fā)送數(shù)據(jù),因此網(wǎng)絡(luò)程序可以實(shí)現(xiàn)一些更低級(jí)、 更靈活的功能6。3.3建立工程在VC+ 6.0下創(chuàng)建一個(gè)單文檔的MFC應(yīng)用程序,工程名:Sniffer如圖3-1-圖3-2-圖 3-3。圖3-1建立工程L你喜愛(ài)你的資源使用什么語(yǔ)言?中文中國(guó)APPWZCHS.DLL圖3-

48、2選中單文檔圖3-3自動(dòng)生成的類(lèi)列表到 HYPERLINK /devel.htm /devel.htm 下載 WinPcap 4.0.2.zip,然后解壓,解壓縮就可 以看見(jiàn) Includelib ;在Project-Settings”標(biāo)簽欄中選擇C/C+,在Preprocessor definitions的輸入框里添加WPCAP;再選擇Link”,在Object/library modules的輸入 框里添加wpcap.lib 。然后再設(shè)置VC+環(huán)境變量:選擇Tools-options-Directories的 include里面加入下載的winpcap開(kāi)發(fā)包解壓以后的include文件選擇

49、 Tools-options-Directories的lib里面加入下載的winpcap開(kāi)發(fā)包解壓以后的lib文件夾 7。3.4進(jìn)行界面的設(shè)計(jì)工程建好了,下面進(jìn)行界面的設(shè)計(jì):首先,對(duì)菜單欄進(jìn)行修改,去掉原來(lái)單文檔所自帶的“文件”、“編輯”菜單選項(xiàng),保 留“查看”和“幫助”,新建“文件”,下面有“開(kāi)始抓包(ID_FILE_START)”、“停止抓包 (ID_FILE_STOP)”、“退出(ID_APP_EXIT)”三個(gè)菜單選項(xiàng)。再建“適配器”菜單,下 面有“選擇適配器(ID_ADP_CHOOSE)”選項(xiàng),并對(duì)每個(gè)新建的選項(xiàng)進(jìn)行注釋說(shuō)明。如文件適配器 查看M)蒂助虹:/開(kāi)貽抓包 停止抓包 退出圖3

50、-4菜單欄圖 3-4:然后,打開(kāi)Sniffer.rc文件,對(duì)工具欄進(jìn)行修改。自做了一個(gè)工具欄圖片Toolbar1.bmp來(lái)代替原來(lái)工程的Toolbar.bmp,然后將多余的復(fù)制粘貼等工具按鈕信息刪除掉,回到界面處,再對(duì)每個(gè)按鈕圖標(biāo)進(jìn)行ID設(shè)置。如圖:,從左向右依次是:開(kāi)始抓包、停止抓包、選擇適配器、幫助圖標(biāo)按鈕。最后,新建一個(gè)選擇適配器的基本對(duì)話框,ID標(biāo)識(shí)為IDD_ADP_DIALOG,雙擊此 對(duì)話框新建一個(gè)類(lèi):CAdpterDlg。在此基本對(duì)話框上拖入一個(gè)Tree Contrl控件和List Contrl控件,對(duì)控件屬性界面進(jìn)行調(diào)整,打開(kāi)類(lèi)向?qū)?,將Tree Contrl成員變量設(shè)置為: m

51、_treeCtrl,List Contrl 成員變量設(shè)置為 m_listCtrl。如圖 3-5:圖3-5選擇適配器對(duì)話框3.5程序設(shè)計(jì)思想本程序中,主要有四種類(lèi)型的類(lèi),主控類(lèi):CMainFrame,視圖類(lèi):CCapPackView、 CProTreeView,對(duì)話框類(lèi):CAdpterDlg以及報(bào)文類(lèi)。圖3-6為整體的類(lèi)之間的調(diào)用流程 圖。IPGram類(lèi):CMainFrame類(lèi):CCapPackViewEtherHeadARPGram RARPGram點(diǎn)擊:文件- 開(kāi)始抓包GetMacDestAddr() 包目的睥仁地址GetDestAddr() 獲取目的通知 ProTreeView刷新為新選中

52、的報(bào) 文內(nèi)容GetDestAddr() 獲取目的皿GetSrcHdwAddr() 包發(fā)送方MACGetService()獲取協(xié)議類(lèi)型可顯示所有抓到的包 修的簡(jiǎn)要信息GetMacSrcAddr()包源MAC地址GetDestHdwAddr()包接收方MACGetSrcPrtAddr() 包發(fā)送方IP點(diǎn)擊:適配器- 選 擇適配器OnInitDialog() OnClickAdpTree()選中適配器OnInitialUpdate()界面設(shè)置類(lèi):CAdpterDlgOnOK()點(diǎn)擊按鈕,綁定網(wǎng) 卡啟動(dòng)收包線程點(diǎn)擊:退出UOnInitialUpdate()界面設(shè)置1OnPacketSelect()以樹(shù)

53、形結(jié)構(gòu)顯示選 中的包的具體信息類(lèi):CProTreeViewGetDestPrtAddr()包接收方IPGetType() 獲取數(shù)據(jù)包類(lèi)型圖3-6總體類(lèi)調(diào)用流程圖CMainFrame,是用于主控的類(lèi),它起到分區(qū)、處理消息、傳遞消息的功能。將用 戶區(qū)分為兩個(gè)視圖,點(diǎn)擊菜單里的按鈕,觸發(fā)打開(kāi)適配器對(duì)話框或者開(kāi)始抓包、停止抓 包的動(dòng)作。圖3-7為CMainFrame類(lèi)中方法調(diào)用流程圖。表3-1 CMainFrame類(lèi)說(shuō)明為 CMainFrame函數(shù)成員的說(shuō)明。表 3-1 CMainFrame 類(lèi)說(shuō)明CMainFrame 類(lèi)父類(lèi)CFrameWnd 類(lèi)成員函數(shù)參數(shù)功能OnCreateClient()LPC

54、REATESTRUCTlpcs, CCreateContext* pContext將用戶區(qū)分為左右兩個(gè)視圖ProTreeView、CapPackViewOnAdpChoose()消息處理函數(shù)無(wú)為適配器對(duì)話框初始化值,即點(diǎn)擊選中適配器按鈕彈出適配器對(duì)話框OnFileStart()消息處理函數(shù)無(wú)設(shè)置抓包狀態(tài),釋放所有包,清空 內(nèi)容,啟動(dòng)收包線程,開(kāi)始捕獲包。OnFileStop()消息處理函數(shù)無(wú)停止抓包OnUpdateFileStart()消息處理函數(shù)CCmdUI* pCmdUI當(dāng)在捕獲包時(shí),禁用“抓包”按鈕OnUpdateFileStop()消息處理函數(shù)CCmdUI* pCmdUI當(dāng)停止捕獲包時(shí)

55、,禁用“停止”按鈕成員變量類(lèi)型含義*PackViewCCapPackView顯示所有抓到的包的簡(jiǎn)要信息*ProTreeViewCProTreeView顯示選中的包的具體信息,用解析樹(shù)表達(dá)*alldevspcap_if_t適配器鏈表*devpcap_if_t適配器鏈表isStartbool是否開(kāi)始抓包isStopbool是否停止抓包類(lèi):CMainFrame圖3-7 CMainFrame類(lèi)中方法調(diào)用流程圖CAdpterDlg:對(duì)話框類(lèi),此對(duì)話框分為兩部分:樹(shù)形控件和list控件。當(dāng)對(duì)話框被觸 發(fā)后,樹(shù)形控件顯示了本機(jī)所有的適配器列表,雙擊選中網(wǎng)卡,list控件顯示其名稱、 描述、子網(wǎng)掩碼、IP地址

56、等信息。點(diǎn)擊確定按鈕即綁定了此網(wǎng)卡,注意虛擬網(wǎng)卡是不能 被綁定的。表3-2為類(lèi)CAdpterDlg的成員函數(shù)及成員變量的說(shuō)明。CAdpterDlg類(lèi)中函 數(shù)調(diào)用流程圖如圖3-8所示。表 3-2 CAdpterDlg 類(lèi)說(shuō)明CAdpterDlg 類(lèi)父類(lèi)CDialog 類(lèi)成員函數(shù)參數(shù)功能OnInitDialog()公有無(wú)初始化樹(shù)形控件,設(shè)置list控件, 讀取適配器并將適配器列表顯示 在樹(shù)形控件中。當(dāng)網(wǎng)卡綁定以后再 次打開(kāi)此對(duì)話框,直接顯示其信 息。續(xù)表3-2:OnClickAdpTree()消息處理函數(shù)NMHDR*pNMHDR,LRESULT* pResult當(dāng)雙擊選中網(wǎng)卡時(shí),找到選中的 網(wǎng)卡,

57、設(shè)置list控件,并顯示網(wǎng) 卡名稱、描述等信息。OnOK()消息處理函數(shù)無(wú)對(duì)選中的網(wǎng)卡進(jìn)行判斷,不可以 選虛擬網(wǎng)卡也不可不選。OnCancel()消息處理函數(shù)無(wú)關(guān)閉對(duì)話框成員變量類(lèi)型含義*devpcap_if_t適配器鏈表*alldevspcap_if_t適配器鏈表errbufPCAP_ERRBUF_SIZEchar存儲(chǔ)錯(cuò)誤信息的字符串。類(lèi):CAdpterDlg類(lèi):CMainFrame點(diǎn)擊:適配器- 選 擇適配器OnInitDialog()對(duì)話框設(shè)置,并顯示適配器列表OnOK()點(diǎn)擊按鈕,綁定網(wǎng) 卡alldevs=NULL;dev=NULL;OnAdpChoose() 選擇適配器OnClick

58、AdpTree() 雙擊適配器,List 列表顯示詳細(xì)信息匕二aLldevs =adpalldevs、 dev=adpdev圖3-8 CAdpterDlg類(lèi)中函數(shù)調(diào)用流程圖CCapPackView,視圖類(lèi),主要功能是實(shí)現(xiàn)接收從類(lèi)MainFrm傳遞過(guò)來(lái)的消息和報(bào) 文,將數(shù)據(jù)包的頭部及數(shù)據(jù)包的數(shù)據(jù)內(nèi)容分別保存在CArray數(shù)組中,然后調(diào)用報(bào)文類(lèi) IPGram、ARPGram、RARPGram中的函數(shù),將數(shù)據(jù)包簡(jiǎn)要信息顯示于界面。表3-3為CCapPackView的成員函數(shù)及成員變量的說(shuō)明。圖3-9為其類(lèi)中方法調(diào)用流程圖。表 3-3 CCapPackView 類(lèi)說(shuō)明CCapPackView 類(lèi)父類(lèi)C

59、ListView 類(lèi)成員函數(shù)參數(shù)功能OnInitialUpdate()公有無(wú)設(shè)置CapPackView視圖的視圖風(fēng) 格,設(shè)置其列信息。OnPacketReceive()消息處理函數(shù)pcap_pkthdr*pkt_header,constu_char*pkt_data顯示所有抓到的包的簡(jiǎn)要信息OnItemchanged()消息處理函數(shù)NMHDR* pNMHDR,LRESULT* pResult當(dāng)點(diǎn)擊列表中某行信息,將向 ProTreeView發(fā)送消息,并傳遞報(bào)文 信息。成員變量類(lèi)型含義indexint序號(hào)totalmemint收到的報(bào)文占用總字節(jié)數(shù)timeint流逝的秒數(shù)deltaint一秒內(nèi)收

60、到的字節(jié)數(shù)類(lèi):CCapPackViewOnInitialUpdate() 視圖設(shè)置OnPacketReceive()顯示所有抓到的包 的簡(jiǎn)要信息X7OnItemchanged() 向 ProTreeView 發(fā) 送消息,并傳遞報(bào) 文信息圖3-9 CCapPackView類(lèi)中函數(shù)調(diào)用流程圖CProTreeView,視圖類(lèi),主要功能是接收來(lái)自于CapPackView的消息,調(diào)用消息處 理函數(shù)OnPacketSelect(),在顯示數(shù)據(jù)前清空列表及捕獲的數(shù)據(jù)包。對(duì)傳遞過(guò)來(lái)的報(bào)文頭 部和內(nèi)容進(jìn)行分析,調(diào)用報(bào)文類(lèi)IPGram、ARPGram、RARPGram中的函數(shù)將具體信息 顯示于樹(shù)形列表中。表3-4

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論