天天看點

帶你讀《從實踐中學習TCP/IP協定》之一:網絡概述第1章 網 絡 概 述

資訊安全技術大講堂 點選檢視第二章 點選檢視第三章 從實踐中學習TCP/IP協定

帶你讀《從實踐中學習TCP/IP協定》之一:網絡概述第1章 網 絡 概 述

  

大學霸IT達人 編著

第1章 網 絡 概 述

  計算機網絡是通過資料通信技術将孤立的計算機連接配接起來,使其能夠共享檔案和傳輸資料。通過實作網絡連接配接,計算機的作用被幾十倍、幾百倍地放大。由于網絡的不斷發展,各種應用也随之深入人們生活的方方面面。網絡協定作為網絡世界的基石,也被不斷制定和完善。本章将簡要講解網絡和網絡協定的基本概念。

1.1 網 絡 組 成

  網絡是計算機或類似計算機的網絡裝置的集合,它們之間通過各種傳輸媒體進行連接配接。無論裝置之間如何連接配接,網絡都是将來自于其中一台網絡裝置上的資料,通過傳輸媒體傳輸到另外一台網絡裝置上。本節将基于這個過程講解網絡的組成。

1.1.1 網卡

  網卡也被稱為網絡擴充卡(Network Adapter),是連接配接計算機和傳輸媒體的接口。網卡主要用來将計算機資料轉換為能夠通過傳輸媒體傳輸的信号。

  1.網卡種類

  網絡裝置要通路網際網路,就需要通過網卡進行連接配接。由于上網的方式不同,所使用的網卡種類也會不同。網卡的種類有以下幾種:

  (1)有線網卡

  有線網卡就是通過“線”連接配接網絡的網卡。這裡所說的“線”指的是網線。有線網卡常見形式如圖1.1所示。

  (2)無線網卡

  與有線網卡相反,無線網卡是不需要通過網線進行連接配接的,而是通過無線信号進行連接配接。無線網卡通常特指Wi-Fi網絡的無線網卡。無線網卡常見形式如圖1.2所示。

  (3)藍牙擴充卡

  藍牙擴充卡也是一種無線網卡。藍牙擴充卡與無線網卡的差別是資料通信方式不同。藍牙擴充卡常見樣式如圖1.3所示。

帶你讀《從實踐中學習TCP/IP協定》之一:網絡概述第1章 網 絡 概 述

  2.按安裝方式分類

  網卡通常是網絡裝置的從屬裝置。根據其安裝方式,網卡可以分為内置網卡和外置網卡。

  (1)内置網卡

  由于網卡已經成為連接配接網絡的必要裝置,是以很多網絡裝置都内置了網卡。是以,内置網卡也被稱為內建網卡。例如,現在的主機闆都內建了有線網卡,如圖1.4所示。箭頭所指的接口就是内置網卡提供的有線網卡接口。

帶你讀《從實踐中學習TCP/IP協定》之一:網絡概述第1章 網 絡 概 述

  (2)外置網卡

  除了内置網卡外,很多網絡裝置都允許使用者安裝額外的網卡。這類網卡被稱為外置網卡,有時被稱為獨立網卡。由于它可以插在主機闆的各種擴充插槽中,是以可以随意拆卸,具有一定的靈活性。圖1.1和圖1.2的有線網卡和無線網卡就屬于外置網卡。

1.1.2 網絡電纜

  網絡電纜用來連接配接網絡中的各個裝置,供裝置之間進行資料通信。常見的網絡電纜有雙絞線、光纖、電話線等。

  1.雙絞線

  雙絞線也就是網線。它是由兩根具有絕緣保護層的銅導線纏繞組成的,如圖1.5所示。這樣的銅線一共有8根。每根都通過對應的顔色進行區分。現實生活中,家庭和企業中的計算機進行上網,一般都是通過雙絞線連接配接網絡。這些雙絞線在排序上往往采用EIA/TIA 568B的順序,依次為橙白、橙、綠白、藍、藍白、綠、棕白、棕。

帶你讀《從實踐中學習TCP/IP協定》之一:網絡概述第1章 網 絡 概 述

  2.光纖

  光纖是一種傳輸光信号的細而柔軟的媒質,多數光纖在使用前必須由幾層保護結構包裹,如圖1.6所示。光纖的主要作用是把要傳送的資料由電信号轉換為光信号進行通信。在光纖的兩端分别裝有“光貓”進行信号轉換。

  3.電話線

  電話線就是連接配接電話的線。電話線也是由絕緣保護層的銅導線組成的。與雙絞線不同的是,電話線隻有2根或4根線,而且不一定會纏繞在一起,也沒有顔色排序,如圖1.7所示。

帶你讀《從實踐中學習TCP/IP協定》之一:網絡概述第1章 網 絡 概 述

1.1.3 網絡裝置

  網絡裝置指的是網絡組成中的裝置,如交換機、路由器、數據機等。它們是發送或接收資料的終端裝置。

  1.交換機

  交換機(Switch)可以将多個網絡裝置連接配接起來組成一個區域網路。它是一種用于電(光)信号轉發的網絡裝置,用來進行資料交換。交換機外觀如圖1.8所示。

帶你讀《從實踐中學習TCP/IP協定》之一:網絡概述第1章 網 絡 概 述

  2.路由器

  路由器(Router)又稱網關裝置(Gateway),用于連接配接多個邏輯上分開的網絡。所謂邏輯網絡是代表一個單獨的網絡或者一個子網。當資料從一個子網傳輸到另一個子網中時,可通過路由器的路由功能來完成。它會根據信道的情況自動選擇和設定路由,以最佳路徑,按前後順序發送信号。路由器也是用來進行資料轉換的。路由器與交換機很容易區分,最大的差別是,路由器上有WAN口和LAN接口,而交換機沒有這些接口。常見的路由器外觀如圖1.9所示。

帶你讀《從實踐中學習TCP/IP協定》之一:網絡概述第1章 網 絡 概 述

  3.數據機

  數據機(Modem),俗稱“貓”,是一種計算機硬體。它能把計算機的數字信号翻譯成可沿普通電話線傳送的脈沖信号,而這些脈沖信号又可被線路另一端的另一個數據機接收,并翻譯為計算機的數字信号語言。數據機外觀如圖1.10所示。

帶你讀《從實踐中學習TCP/IP協定》之一:網絡概述第1章 網 絡 概 述

1.2 網 絡 協 議

  網絡協定是網絡運作的基石。在網絡中,網絡裝置、傳輸媒體、網卡又各有不同,資料在傳輸過程中也會使用不同的規則進行傳輸,而這些規則是依靠網絡協定完成的。下面介紹網絡協定的相關知識。

1.2.1 什麼是網絡協定

  網絡協定為計算機網絡中進行資料交換而建立的規則、标準或約定的集合。它規定了通信時資訊必須采用的格式和這些格式所代表的意義。網絡中存在着許多協定,接收方和發送方使用的協定必須一緻,否則一方将無法識别另一方發出的資訊。網絡協定使網絡上各種裝置能夠互相交換資訊。而TCP/IP協定就是一種常見的協定,Internet上的計算機使用的就是該協定。

1.2.2 TCP/IP協定

  TCP/IP協定是Internet網絡的基礎協定。它不是一個協定,而是一個協定族的統稱。起初它是一門新的通信技術。在20世紀70年代前半葉,ARPANET(全球網際網路的祖先)中的一個研究機構研發了TCP/IP,直到1983年成為ARPANET網絡中唯一指定的協定。最初研究這項新技術,主要用于國防軍事上,是為了在通信過程中,即使遭到了敵人的攻擊和破壞,也可以經過迂回線路實作最終通信,保證通信不中斷。後來逐漸演變為現有的TCP/IP協定族。該協定族包括TCP協定、IP協定和ICMP協定和HTTP協定等。

1.2.3 OSI協定層次

  OSI協定層次結構就是現在常說的OSI參考模型(Open System Interconnection Reference Model)。它是國際标準化組織(ISO)提出的一個标準架構,定義了不同計算機互連的标準,目的是使世界範圍内的各種計算機互連起來,構成一個網絡。

  OSI架構是基于1984年國際标準化組織(ISO)釋出的ISO/IEC 7498标準。該标準定義了網絡互聯的7層架構。這7層架構自下而上依次為實體層、資料鍊路層、網絡層、傳輸層、會話層、表示層和應用層。其層次如圖1.11所示。

帶你讀《從實踐中學習TCP/IP協定》之一:網絡概述第1章 網 絡 概 述

  每層的作用如下:

  • 應用層:為應用程式提供服務并規定應用程式中相關的通信細節。常見的協定包括超文本傳輸協定(HTTP)、簡單郵件傳送協定(SMTP)和遠端登入(Telnet)協定等。
  • 表示層:将應用處理的資訊轉換為适合網絡傳輸的格式,或将來自下一層的資料轉換為上層能夠處理的格式。該層主要負責資料格式的轉換,確定一個系統的應用層資訊可被另一個系統應用層讀取。
  • 會話層:負責建立和斷開通信連接配接(資料流動的邏輯通路),以及記憶資料的分隔等資料傳輸相關的管理。
  • 傳輸層:隻在通信雙方的節點上(比如計算機終端)進行處理,無須在路由器上處理。
  • 網絡層:将資料傳輸到目标位址,主要負責尋找位址和路由選擇,網絡層還可以實作擁塞控制、網際互聯等功能。
  • 資料鍊路層:負責實體層面上互連的節點間的通信傳輸。例如,一個以太網相連的兩個節點之間的通信。該層的作用包括:實體位址尋址、資料的成幀、流量控制、資料的檢錯和重發等。
  • 實體層:利用傳輸媒體為資料鍊路層提供實體連接配接,實作比特流的透明傳輸。

1.2.4 TCP/IP協定層次結構

  TCP/IP協定層次結構也就是現在常說的TCP/IP參考模型。它是ARPANET和其後繼的網際網路使用的參考模型。基于TCP/IP的參考模型,可以将協定分成4個層次,從上到下分别為應用層、傳輸層、網際層和網絡通路層。分層以後,層中的協定隻負責該層的資料處理。TCP/IP協定層次結構如圖1.12所示。

帶你讀《從實踐中學習TCP/IP協定》之一:網絡概述第1章 網 絡 概 述
  • 應用層:為應用程式提供服務并規定應用程式中相關的通信細節。
  • 傳輸層:為兩台主機上的應用程式提供端到端的通信,提供流量控制、錯誤控制和确認服務。
  • 網際層:提供獨立于硬體的邏輯尋址,進而讓資料能夠在具有不同的實體結構的子網之間傳遞。負責尋找位址和路由選擇的同時,網絡層還可以實作擁塞控制、網際互聯等功能。
  • 網絡通路層:提供了與實體網絡連接配接的接口。針對傳輸媒體設定資料格式,根據硬體的實體位址實作資料的尋址,對資料在實體網絡中的傳遞提供錯誤控制。

1.3 學習輔助工具——網絡工具集netwox

  一個好的輔助工具可以起到事半功倍的效果。在本書中将使用到兩個輔助工具,網絡工具集工具netwox和網絡分析工具Wireshark。

  netwox是由lauconstantin開發的一款網絡工具集,适用群體為網絡管理者和網絡黑客。它可以創造任意的TCP、UDP和IP資料封包,以實作網絡欺騙。它可以在指令模式下使用,也可以在GUI中使用netwag調用。該工具包含了超過200個不同的功能,這裡被稱為子產品。每個子產品都有一個特定的編号,使用不同的編号子產品來實作不同的功能。

  netwox工具支援在Linux和Windows系統中運作。由于後面的章節需要結合netwox工具來實作各種功能,是以這裡講解該工具的安裝及基本使用方法。

1.3.1 下載下傳及安裝

  Kali Linux系統自帶netwox工具,而Windows系統預設沒有安裝。是以,本節将講解如何在Windows系統中安裝netwox工具。安裝方法如下:

  (1)通路網址

https://sourceforge.net/projects/ntwox/

,進入netwox下載下傳頁面,如圖1.13所示。圖中顯示了可下載下傳的版本,從這裡可以看到目前的最新版本為5.39。

帶你讀《從實踐中學習TCP/IP協定》之一:網絡概述第1章 網 絡 概 述

  (2)下載下傳最新版本,單擊Download Latest Version按鈕進行下載下傳。成功下載下傳後,下載下傳的是一個壓縮包,名稱為netw-ib-ox-ag-5.39.0.tgz。

  (3)解壓netw-ib-ox-ag-5.39.0.tgz安裝包,在解壓的檔案夾中找到對應的應用程式檔案installwindows.exe。輕按兩下該檔案進行安裝,會彈出“安裝确認”對話框,如圖1.14所示。

帶你讀《從實踐中學習TCP/IP協定》之一:網絡概述第1章 網 絡 概 述

  (4)同意在該系統中安裝。輸入y,并回車,将顯示其他需要确認的資訊。這裡,一律輸入y并回車即可,資訊如下:

This program will install netwib, netwox and netwag on your system.
  Do you agree ? [y/n] y
  Setting global variables.
   Version...
   Version=539
   InstallDir...
   InstallDir=C:\Program Files (x86)\netw\netw539
  Do you agree to use this installation directory ? [y/n] y                                                                #确認安裝的目錄
  Copying files under C:\Program Files (x86)\netw\netw539
   src\netwox-bin_windows\netwib539.dll
   src\netwox-bin_windows\netwox539.exe
   src\netwag-bin_windows\netwag539.tcl
   src\netwib-bin_windows\dll
   src\netwib-bin_windows\include
   src\netwib-bin_windows\lib
   src\netwib-doc_html\*
   src\netwox-doc_html\*
   src\netwag-doc_html\*
  Do you agree to place shortcuts on desktop ? [y/n] y                                                                    #确認是否建立桌面快捷鍵
  Do you agree to place shortcuts in start menu ? [y/n] y                                                                #确認是否在開始菜單中建立快捷鍵
  Press any key to terminate           

  (5)上述代碼中的最後一行資訊表示按任意鍵終止,即表示安裝完成。此時在“開始”菜單中可以檢視到安裝的netwox工具,如圖1.15所示。

帶你讀《從實踐中學習TCP/IP協定》之一:網絡概述第1章 網 絡 概 述

1.3.2 層次結構分析

  成功安裝了netwox工具以後就可以使用了。由于該工具提供了衆多子產品,為了友善使用者對子產品的查找和使用,netwox對這些子產品以分類的方式進行了整理,以層次結構(如主菜單、子菜單)的方式進行顯示,供使用者查找和使用。使用該工具之前,需要了解分類的這些層次結構。下面将對層次結構進行分析。

  (1)在“開始”菜單中,選擇netwox指令,運作netwox工具,如圖1.16所示。

  圖1.16中顯示了該工具的主菜單。每一行表示一個菜單項,第一個字元為該菜單的快捷鍵。每個菜單含義如下:

  • 0:退出netwox工具。
  • 3:搜尋工具,用來搜尋與指定資訊相關的子產品。
  • 4:顯示指定子產品的幫助資訊。
  • 5:在指令行中輸入指定子產品的參數選項并運作。
  • 6:從鍵盤輸入指定子產品的參數選項并運作。
  • a:顯示資訊。
  • b:顯示網絡協定下相關的子產品。
  • c:顯示應用程式協定下相關的子產品。
  • d:顯示與嗅探資料包相關的子產品。
  • e:顯示與建立和發送資料包相關的子產品。
  • f:顯示與進行資料包記錄相關的子產品。
  • g:顯示與用戶端相關的子產品。
  • h:顯示與伺服器相關的子產品。
  • i:顯示與檢測主機連通性相關的子產品。
  • j:顯示與路由跟蹤相關的子產品。
  • k:顯示與掃描計算機和端口相關的子產品。
  • l:顯示與審計相關的子產品。
  • m:顯示與暴力破解相關的子產品。
  • n:顯示與遠端管理相關的子產品。
  • o:顯示其他子產品。
帶你讀《從實踐中學習TCP/IP協定》之一:網絡概述第1章 網 絡 概 述

  以上菜單項是netwox工具的總體分類,每個菜單項屬于一個大類。而每個菜單項中還會有子菜單,而每個子菜單下又有一個小的分類。

  (2)使用快捷鍵e,檢視建立和發送資料包的相關子產品,輸出資訊如下:

Select a node (key in 03456abcdefghijklmno): e
  
  ############# spoof (create and send packets) ##############                                                                #建立和發送資料包子產品
   0 - leave netwox
   1 - go to main menu
   2 - go to previous menu
   3 - search tools
   4 - display help of one tool
   5 - run a tool selecting parameters on command line
   6 - run a tool selecting parameters from keyboard
   a + Ethernet spoof
   b + IP spoof
   c + UDP spoof
   d + TCP spoof
   e + ICMP spoof
   f + ARP spoof           

  從輸出資訊可以了解到,該分類中的子菜單包含了各種建立和發送資料包的子產品,如IP協定的(快捷鍵b)、UDP協定的(快捷鍵c)、ICMP協定的(快捷鍵e)。通過子菜單的快捷鍵,可以進一步檢視具體的可用子產品或更小的分類。

  (3)使用快捷鍵c,檢視建立和發送UDP資料包的子產品,輸出資訊如下:

Select a node (key in 0123456abcdef): c
  
  ######################## UDP spoof #########################                                                                #建立和發送UDP資料包
   0 - leave netwox
   1 - go to main menu                                #傳回主菜單
   2 - go to previous menu                        #傳回上一個菜單
   3 - search tools
   4 - display help of one tool
   5 - run a tool selecting parameters on command line
   6 - run a tool selecting parameters from keyboard
   a - 35:Spoof EthernetIp4Udp packet
   b - 39:Spoof Ip4Udp packet
   c - 43:Spoof of packet samples : fragment, ip4opt:noop
   d - 44:Spoof of packet samples : fragment, ip4opt:rr
   e - 45:Spoof of packet samples : fragment, ip4opt:lsrr
   f - 46:Spoof of packet samples : fragment, ip4opt:ts
   g - 47:Spoof of packet samples : fragment, ip4opt:ipts
   h - 48:Spoof of packet samples : fragment, ip4opt:ippts
   i - 141:Spoof EthernetIp6Udp packet
   j - 145:Spoof Ip6Udp packet
   k - 192:Spoof of packet samples : fragment, ip4opt:ssrr           

  以上輸出資訊顯示了相關的各種子產品及快捷鍵。例如,加粗部分的資訊表示netwox的第39個子產品功能為建立基于IPv4位址的UDP協定資料包。如果使用該子產品,可以使用快捷鍵b;如果使用者想退出目前分類,可以使用快捷鍵1傳回主菜單,或使用快捷鍵2傳回上一個菜單;使用快捷鍵0退出netwox工具。以類似的方法,可以檢視其他分類中的子產品。

1.3.3 使用搜尋功能

  雖然netwox工具對所有子產品進行了整理和分類,但是有時候想找到要使用的子產品也會很麻煩。是以,netwox提供了搜尋功能。使用者可以指定關鍵字搜尋與之相關的子產品。例如,搜尋與DNS相關的子產品。在主菜單界面中輸入3,顯示資訊如下:

Select a node (key in 03456abcdefghijklmno): 3
  Enter search string:
           

  以上輸出資訊表示,需要在這裡輸入要搜尋的關鍵字。例如,這裡輸入dns然後回車,将顯示與DNS相關的子產品,輸出資訊如下:

Enter search string: dns
  
  ############ list of tools containing this text ############
  Tools containing "dns":
    102:Query a DNS server
    103:Obtain version of a Bind DNS server
    104:DNS server always answering same values
    105:Sniff and send DNS answers
           

  輸出資訊顯示了與DNS相關的子產品。相關的子產品編号有102、103、104和105。

1.3.4 使用子產品

  1.3.3節介紹了如何查找要使用的子產品。找到要使用的子產品編号以後就可以進行使用了。本節将以一個子產品為例,簡單地介紹其使用方法。無論使用哪個子產品,基本文法是不會變的。文法格式如下:

帶你讀《從實踐中學習TCP/IP協定》之一:網絡概述第1章 網 絡 概 述

  其中,ID表示子產品對應的編号,是必需的;options表示可用到的選項,是可選的。

  【執行個體1-1】示範使用編号為1的子產品,實作對應的功能。

  (1)啟動netwox工具。然後在主菜單界面中按快捷鍵5,顯示資訊如下:

Select a node (key in 03456abcdefghijklmno): 5
  Select tool number (between 1 and 223):           

  以上輸出資訊表示需要輸入要使用的子產品編号。

  (2)本例使用第1個子產品,輸入1然後回車,将顯示該子產品的幫助資訊,并在幫助資訊下面會給出使用子產品的指令。輸出資訊如下:

Select tool number (between 1 and 223): 1
  
  ################## running tool number 1 ###################
  Title: Display network configuration                    #功能簡單介紹
  +--------------------------------------------------------------------------------------------------------------+
  | This tool displays network configuration:         |    #功能詳細說明
  |  - the list of devices/interfaces:                     |
  |     + nu: device number                                 |
  |     + dev: easy device name                             |
  ···                                                    #省略其他資訊
  |  - the routes                                            |
  |     + nu: device number of device associated to this entry       |
  |     + destination/netmask: destination addresses               |
  | If no Parameter is set, they are all displayed.                  |
  |                                                                            |
  | This tool may need to be run with admin privilege in order to obtain |
  | full network configuration.                                         |
  +-------------------------------------------------------------+
  Synonyms: address, arp, device, gateway, ifconfig, interface, ipconfig, mac, 
  neighbor, netmask, route, show
  Usage: netwox 1 [-d|+d] [-i|+i] [-a|+a] [-r|+r]            #文法格式
  Parameters:                                                #可用的選項參數
   -d|--devices|+d|--no-devices   display devices
   -i|--ip|+i|--no-ip             display ip addresses
   -a|--arpcache|+a|--no-arpcache display arp cache and neighbors
   -r|--routes|+r|--no-routes     display routes
  Example: netwox 1                                        #參考執行個體
  Enter optional tool parameters and press Return key.
  netwox 1           

  上述資訊首先輸出子產品功能的簡單介紹,以及功能的詳細說明資訊;然後輸出的是該子產品的文法格式和可用的選項參數,并給出了參考執行個體。輸出資訊的最後一行是使用者使用到的指令。我們要使用的子產品為1,是以給出的指令資訊為netwox 1。這裡還可以輸入可使用的選項。如果選項不是必須的,可以不輸入選項。

  (3)本例中,使用選項-i表示擷取IP位址資訊。在netwox 1後面輸入-i然後回車,将執行子產品功能。運作結果如下:

netwox 1 -i
  nu ip             /netmask                    ppp point_to_point_with
  1  127.0.0.1      /255.0.0.0                    0
  2  192.168.59.1   /255.255.255.0              0
  5  192.168.12.102 /255.255.255.0              0
  7  192.168.38.1   /255.255.255.0              0
  13 192.168.12.102 /255.255.255.0              0
  25 192.168.38.1   /255.255.255.0               0
  26 192.168.59.1   /255.255.255.0              0
  9  127.0.0.1      /255.0.0.0                       0
  
  Command returned 0 (OK)
  Press 'r' or 'k' to run again this tool, or any other key to continue           

  以上輸出資訊顯示了子產品執行的結果。輸出資訊的最後一行表示,如果使用者繼續使用該子產品,按快捷鍵r或k,将回到netwox 1使用子產品的指令模式中;如果使用者不再使用該子產品,按任意鍵将傳回主菜單界面。

帶你讀《從實踐中學習TCP/IP協定》之一:網絡概述第1章 網 絡 概 述

1.4 學習輔助工具——網絡分析工具Wireshark

  Wireshark(前身Ethereal)是一個網絡包分析工具。該工具主要是用來捕獲網絡資料包,并自動解析資料包,為使用者顯示資料包的詳細資訊,供使用者對資料包進行分析。它可以運作在Windows和Linux作業系統上。由于後面章節會使用該工具捕獲并分析各類協定資料包,本節将講解該工具的安裝及基本使用方法。

1.4.1 下載下傳及安裝

  Kali Linux系統自帶Wireshark工具,而Windows系統中預設沒有安裝該工具。是以,本節講解如何在Windows系統中安裝Wireshark工具。安裝方法如下:

  (1)打開網址

http://www.wireshark.org

,進入Wireshark官網,如圖1.17所示。

帶你讀《從實踐中學習TCP/IP協定》之一:網絡概述第1章 網 絡 概 述

  (2)單擊圖中的下載下傳圖示進入下載下傳頁面,如圖1.18所示。在Stable Release部分可以看到目前Wireshark的最新版本是2.6.5,并提供了Windows(32位和64位)、Mac OS和源碼包的下載下傳位址。使用者可以根據自己的作業系統下載下傳相應的軟體包。

帶你讀《從實踐中學習TCP/IP協定》之一:網絡概述第1章 網 絡 概 述

  (3)這裡下載下傳Windows 64位的安裝包。單擊Windows Installer (64-bit)連結,進行下載下傳。下載下傳後的檔案名為Wireshark-win64-2.6.5.exe。

  (4)輕按兩下下載下傳的軟體包進行安裝。安裝比較簡單,隻要使用預設值,單擊Next按鈕,即可安裝成功。

  (5)安裝好以後,在Windows的“開始”菜單中會出現Wireshark圖示,如圖1.19所示。

帶你讀《從實踐中學習TCP/IP協定》之一:網絡概述第1章 網 絡 概 述

1.4.2 實施抓包

  安裝好Wireshark以後,就可以運作它來捕獲資料包了。方法如下:

  (1)在Windows的“開始”菜單中,單擊Wireshark菜單,啟動Wireshark,如圖1.20所示。該圖為Wireshark的主界面,界面中顯示了目前可使用的接口,例如,本地連接配接5、本地連接配接10等。要想捕獲資料包,必須選擇一個接口,表示捕獲該接口上的資料包。

帶你讀《從實踐中學習TCP/IP協定》之一:網絡概述第1章 網 絡 概 述

  (2)在圖1.20中,選擇捕獲“本地連接配接”接口上的資料包。選擇“本地連接配接”選項,然後單擊左上角的按鈕,将進行捕獲網絡資料,如圖1.21所示。圖中沒有任何資訊,表示沒有捕獲到任何資料包。這是因為目前“本地連接配接”上沒有任何資料。隻有在本地計算機上進行一些操作後才會産生資料,如浏覽網站。

帶你讀《從實踐中學習TCP/IP協定》之一:網絡概述第1章 網 絡 概 述

  (3)當本地計算機浏覽網站時,“本地連接配接”接口的資料将會被Wireshark捕獲到。捕獲的資料包如圖1.22所示。圖中方框中顯示了成功捕獲到“本地連接配接”接口上的資料包。

帶你讀《從實踐中學習TCP/IP協定》之一:網絡概述第1章 網 絡 概 述

  (4)Wreshark将一直捕獲“本地連接配接”上的資料。如果不需要再捕獲,可以單擊左上角的

帶你讀《從實踐中學習TCP/IP協定》之一:網絡概述第1章 網 絡 概 述

按鈕,停止捕獲。

1.4.3 使用顯示過濾器

  預設情況下,Wireshark會捕獲指定接口上的所有資料,并全部顯示。這樣會導緻在分析這些資料包時,很難找到想要分析的那部分資料包。這時可以借助顯示過濾器快速查找資料包。顯示過濾器是基于協定、應用程式、字段名或特有值的過濾器,可以幫助使用者在衆多的資料包中快速地查找資料包,可以大大減少查找資料包時所需的時間。

  使用顯示過濾器,需要在Wireshark的資料包界面中輸入顯示過濾器并執行,如圖1.23所示。

  圖中方框标注的部分為顯示過濾器區域。使用者可以在裡面輸入顯示過濾器,進行資料查找,也可以根據協定過濾資料包。用到的顯示過濾器如表1.1所示。

帶你讀《從實踐中學習TCP/IP協定》之一:網絡概述第1章 網 絡 概 述
帶你讀《從實踐中學習TCP/IP協定》之一:網絡概述第1章 網 絡 概 述

  例如,要從捕獲到的所有資料包中,過濾出DNS協定的資料包,這裡使用dns顯示過濾器,過濾結果如圖1.24所示。圖中顯示的所有資料包的協定都是DNS協定。

帶你讀《從實踐中學習TCP/IP協定》之一:網絡概述第1章 網 絡 概 述

1.4.4 分析資料包層次結構

  任何捕獲的資料包都有它自己的層次結構,Wireshark會自動解析這些資料包,将資料包的層次結構顯示出來,供使用者進行分析。這些資料包及資料包對應的層次結構分布在Wireshark界面中的不同面闆中。下面介紹如何檢視指定資料包的層次結構。

  (1)使用Wireshark捕獲資料包,界面如圖1.25所示。

帶你讀《從實踐中學習TCP/IP協定》之一:網絡概述第1章 網 絡 概 述

  圖1.25中所顯示的資訊從上到下分布在3個面闆中,每個面闆包含的資訊含義如下:

  • Packet List面闆:上面部分,顯示Wireshark捕獲到的所有資料包,這些資料包從1進行順序編号。
  • Packet Details面闆:中間部分,顯示一個資料包的詳細内容資訊,并且以層次結構進行顯示。這些層次結構預設是折疊起來的,使用者可以展開檢視詳細的内容資訊。
  • Packet Bytes面闆:下面部分,顯示一個資料包未經處理的原始樣子,資料是以十六進制和ASCII格式進行顯示。

  (2)以HTTP協定資料包為例,了解該資料包的層次結構。在Packet List面闆中找到一個HTTP協定資料包,如圖1.26所示。

帶你讀《從實踐中學習TCP/IP協定》之一:網絡概述第1章 網 絡 概 述

  其中,編号21的資料包是一個HTTP協定資料包。此時在Packet Details面闆上顯示的資訊就是該資料包的層次結構資訊。這裡顯示了5個層次,每個層次的含義如下:

  • Frame:該資料包實體層的資料幀概況。
  • Ethernet II:資料鍊路層以太網幀頭部資訊。
  • Internet Protocol Version 4:網際層IP標頭部資訊。
  • Transmission Control Protocol:傳輸層的資料段頭部資訊。
  • Hypertext Transfer Protocol:應用層的資訊,此處是HTTP協定。

  由此可見,Wireshark對HTTP協定資料包進行解析,顯示了HTTP協定的層次結構。

  (3)使用者對資料包分析就是為了檢視包的資訊,展開每一層,可以檢視對應的資訊。例如,檢視資料鍊路層資訊,展開Ethernet II層,顯示資訊如下:

Ethernet II, Src: Tp-LinkT_46:70:ba (ec:17:2f:46:70:ba), Dst: Giga-Byt_17:
  cf:21 (50:e5:49:17:cf:21)
      Destination: Giga-Byt_17:cf:21 (50:e5:49:17:cf:21)        #目标MAC位址
      Source: Tp-LinkT_46:70:ba (ec:17:2f:46:70:ba)            #源MAC位址
      Type: IPv4 (0x0800)
           

  顯示的資訊包括了該資料包的發送者和接收者的MAC位址(實體位址)。

  可以以類似的方法分析其他資料包的層次結構。在下面的章節中将要借助Wireshark工具來分析資料包。

繼續閱讀