天天看點

深度剖析WinPcap之(二)——網絡分析與嗅探的基礎知識(4)

本文轉自http://eslxf.blog.51cto.com/918801/201358

1.3.3  CSMA/CD

以太網使用 載波監聽多點接入/沖突檢測( CSMA/CD )協定,為了裝置在網絡上家交換資料。多點接入這個術語指許多網絡裝置連接配接到同一個網段 有發送的機會。 每個裝置賦予等同的發送機會;沒有任何裝置優先于其它裝置。 載波監聽描述了一個網絡裝置的以太網接口在傳送之前如何監聽網線。 網絡接口確定沒有其它信号在網線上,在它傳送之前,并且在傳送的時候監聽確定在同一時刻沒有其它網絡裝置傳送資料。當兩個網絡裝置在同一時刻傳送時,一個沖突發生。因為以太網接口在它們正在傳送時監聽媒體,通過沖突檢測它們能夠辨別其它傳送的出現。如果一個沖突發生了,正在傳送的裝置在重新傳送之前等待一個小的,随機的時間量。該功能就是随機 補償 (random backoff) 。 傳統地,以太網操作是半雙工的,其意味着一個接口隻能傳送或接收資料,但是并不是同時。如果一個網段中多于一個的網絡接口試圖在同一時刻傳送,一個沖突發生每個 載波監聽多點接入/沖突檢測。 當一個交叉的網線用來連接配接兩個裝置,或者一個單個裝置連接配接一個交換機端口,在該網段中僅僅兩個接口需要傳送或接收,沒有沖突發生。這是因為裝置A的傳送連接配接到裝置B的接收,裝置B的接收連接配接到裝置A的傳送。沖突檢測的方法不再是必需的,是以,接口能夠工作于全雙工模式,其允許網絡裝置在同一時刻傳送與接收,進而提高性能。

1.3.4  主要的協定:IP、TCP、UDP與ICMP協定

下列IP、TCP、UDP與ICMP四個協定是現今網際網路工作的核心。   IP(網際互連協定) IP 是一個非連接配接協定,管理尋址資料從一個點到另一個點,把大資料包分割成小的、能傳輸的資料包。IP資料報的主要組成如下: <!--[if !supportLists]--> Ø         <!--[endif]--> IP辨別(IPID)   試圖唯一辨別IP資料報 <!--[if !supportLists]--> Ø         <!--[endif]--> 協定   描述使用IP層服務的高層協定 <!--[if !supportLists]--> Ø         <!--[endif]--> 生存時間(TTL)   資料報在通過網際網路是必須具有的受限的壽命。當 TTL為0時,資料報被丢棄 <!--[if !supportLists]--> Ø         <!--[endif]--> 源IP位址   源點的IP位址,資料報被建立的地方 <!--[if !supportLists]--> Ø         <!--[endif]--> 目的IP位址  終點的IP位址,資料報應該送到的地方   ICMP(網際控制封包協定) 網際控制封包協定(ICMP)管理網絡之間在IP上出現的錯誤。下面是ICMP 常用的封包 : <!--[if !supportLists]--> Ø         <!--[endif]--> 回送請求/回答  為診斷目的而設計,可以用來确定在IP這級能否正常通信。例如ping程式使用 回送請求與回答封包來計算兩個節點之間的網絡延時。 <!--[if !supportLists]--> Ø         <!--[endif]--> 終點不可達  網絡不可達與端口不可達。 該封包發送給資料報的源IP位址,當一個網絡或端口不可達時。這發生在當一個防火牆拒絕了一個資料報或存在網絡問題時。 終點不可達封包 有一些子類型,有助于診斷通信問題。 <!--[if !supportLists]--> Ø         <!--[endif]--> 逾時   在一個資料包的TTL為0時發生   TCP(傳輸控制協定) TCP 是面向連接配接的協定,通常用來傳輸資料。TCP面向連接配接的特性使得選用它進行源IP位址欺騙可能性不大。 TCP握手  TCP 的一個重要觀念是握手。任何資料在兩個主機之間能被交換之前,它們必須同意進行通信。主機A發送一個帶SYN标志的資料包到主機B。如果主機B願意并能通信,它傳回SYN資料包并添加ACK标志。主機A開始發送資料,并向主機B指明它也接收到了ACK。 當主機間的通信結束時,發送一個帶FIN(完成)辨別的資料包,接下來是一個類似确認的過程。 TCP序列  TCP 另一個重要的組成是序列辨別,每個發送的資料包都是一個序列的一部分。通過這些序号,TCP能控制複雜的任務,諸如重發、确認與排序。   UDP(使用者資料報) 相對于TCP, UDP資料包是非連接配接的,并具有多種用途,用于DNS就是一個重要的應用。  

1.3.5硬體:網線探針、集線器、交換機

網線探針(Cable Taps) 網線探針是幫助連接配接到網線的硬體裝置( Cable taps are hardware devices that assist in connecting to a network cable. )。使用Tap裝置可以通路計算機、集線器、交換機、路由器與其它裝置之間的網線的任意點。 Tap 可用于全雙工或半雙工的10、100與1000Mbps以太網連結。They are also available in various multi-port sizes.下列是一些流行的網線探頭産品清單。 <!--[if !supportLists]--> Ø         <!--[endif]--> Net Optics carries several types of network taps for copper and fiber cables, and is available at www.netoptics.com. <!--[if !supportLists]--> Ø         <!--[endif]--> The Finisar Tap family offers a variety of taps for copper and fiber cables, and is available at www.finisar.com/nt/taps.php. 集線器(Hubs) 集線器的英文名稱就是我們通常見到的 “HUB” ,英文 “HUB” 是 “ 中心 ” 意思,集線器的主要功能是對接收到的信号進行再生整形放大,以擴大網絡的傳輸距離,同時把所有節點集中在以它為中心的節點上。它工作于 OSI 參考模型第二層,即 “ 資料鍊路層 ” 。 集線器是一個在一個共享媒體(比如以太網)上把多個主機連接配接起來的裝置。當一台計算機發送資訊後,該資訊行走到該集線器,集線器接着把該資訊推向所有與之連接配接的計算機。 該資訊的目标計算機,将會在資料包的頭部識别它自己的MAC位址,并接受該資料。集線器推進所有資訊的區域,叫做一個沖突域(也叫廣播域)。 一個集線器對所有共享的網絡流量隻有一個沖突域。圖2-4顯示了一個帶有集線器沖突域的網絡架構。大量的沖突使得嗅探更容易,并導緻性能問題,諸如集線器的帶寬占用(bandwidth hogging)或過流(excessive traffic)。

深度剖析WinPcap之(二)——網絡分析與嗅探的基礎知識(4)

圖2-4 Hub沖突域 交換機(Switch) 一個交換機也用于在共享媒體上把計算機連接配接在一起;然而,當一個交換機接收資訊,它不會盲目的發送給所有其它計算機。它查找資料包的頭部來定位目标MAC位址,并維護一個連接配接到交換機上計算機的所有MAC位址與對應端口的清單。 接着把資料包推進資料包到特定端口。這把沖突域縮小為一個單獨的端口(如圖2-5所示)。該類型的沖突域也為每個連接配接提供了一個明确的帶寬量,而不是集線器的一個共享量。 因為交換機的價格在最近幾年中急劇下降,沒有原因不采用交換機替換集線器,或者在選購新裝置時選擇交換機。一些價格更貴的交換機包括更好的技術使得對嗅探攻擊更具抵擋能力。

深度剖析WinPcap之(二)——網絡分析與嗅探的基礎知識(4)

圖 2-5 交換機沖突域 就像從圖中所見到的一樣,集線器使得嗅探更容易,而交換機使得嗅探更困難。然而,交換機也能被欺騙。 端口映射 如果在使用交換機的網絡上工作,并希望執行正當的網絡分析,很幸運的是,大部分交換機與路由器提供了端口映射(port mirroring)機制。為了映射端口,必須配置交換機從一個希望映射的端口複制網絡流量到所連接配接的端口。 配置交換機映射端口1的所有網絡流量到端口5,網絡分析器檢視發送到計算機A與計算機A發送出去的所有網絡流量。一些時候,管理者把交換機的上行端口進行映射,他們就能夠檢視出入交換機所有端口的網絡流量。

深度剖析WinPcap之(二)——網絡分析與嗅探的基礎知識(4)

圖 2-6 端口映射

繼續閱讀