目錄
1.IP數據包格式
2.ICMP協議介紹
3.ARP協議介紹
4.ARP攻擊原理
總結
1.IP數據包格式
網絡層的功能
定義了基於IP協議的邏輯地址
連接不同的媒介類型
選擇數據通過網絡的最佳路徑
IP數據包格式
協議字段
版本號:(4bit):指IP協議版本,並且通信雙方使用的版本必須一致,目前我們使用的是IPv4,表示0100
首部長度(4):IP數據包的包頭長度
優先級與服務類型(8):該字段用於表示數據包的優先級和服務類型。通過在數據包中划分一定的優先級,用於實現QoS(服務質量)的要求。
總長度(16):IP數據包的總長度,最長為65535字節,包括包頭和數據
標識符(16):該字段用於表示IP數據包的標識符。當IP對上層數據進行分片時,它將給所有的分片分配一組編號,然后將這些編號放入標識符字段中,保證分片不會被錯誤地重組。標識符字段用於標志一個數據包,以便接收節點可以重組被分片的數據包
標志(3):和標志符一起傳遞,指示不可以被分片或者最后一個分片是否發出
段偏移量(13):在一個分片序列中如何將各分片連接起來,按什么順序連接起來
TTL生命周期(8):可以防止一個數據包在網絡中無限循環轉發下去,每經過一個路由器-1,當TTL的值為0時,該數據包將被丟棄
協議號(8):封裝的上層哪個協議,ICMP:1 TCP:6 UDP:17
首部校驗和(16):這個字段只檢驗數據報文的首部,不包括數據部分。這是因為數據報文沒經過一次路由器,都要重新計算一下首部校驗驗和(因為,一些字段如生存時間、標志、片偏移等可能發生變化)
源地址(32):源IP地址,發送端IP地址
目標地址(32):目標IP地址,表示接收端的IP地址
可選項:選項字段根據實際情況可變長,可以和IP一起使用的選項有多個。例如可以輸入創建該數據包的時間等。在可選項之后,就是上層數據
注:根據實際情況可變長,例如創建時間等 上層數據
2.ICMP協議介紹
ICMP協議
ICMP是一個“錯誤偵測與回饋機制”
通過IP數據包裝的
用來發送錯誤和控制消息
ICMP協議的封裝
ICMP協議屬於網絡層協議
ICMP數據的封裝過程
|
|
ICMP頭部 |
ICMP數據 |
|
|
IP頭部 |
上層數據(ICMP報文) |
|
|
幀頭部 |
上層數據 |
幀尾部 |
ICMP報文有兩種類型:差錯報告報文和查詢報文
Ping命令
“-t” 在Windows 操作系統中,默認情況下發送4個ping 包,如果在ping命令后面加上參數“-t”,系統將會一直不停地ping下去
Ctrl+C可以中斷命令
-a 顯示主機名
-l 一般情況下,ping 包的大小為32字節,有時為了檢測大數據包的通過情況,可以使用參數改變ping 包的大小
輸入100 字節就變成100了如上圖
- S指定源IP去ping
-n指定發送包的個數
WIN:
tracert命令:在命令行中輸入"tracert”並在后面加入--個IP地址,可以查詢從本機到該IP地址所在的電腦要經過的路由器及其IP地址
Linux:traceroute IP/域名
(補充)如果在其中一個不往下走 就是網工的責任
3.ARP協議介紹
ARP協議概述
局域網中主機的通信
IP地址與MAC地址
arp協議
什么是arp協議
ARP協議是地址解析協議( Address Resolution Protocol)是通過解析IP地址得到MAc地址的,是--個在網絡協議包中極其重要的網絡傳輸協議,它與網卡有着極其密切的關系,在TCP/IP分層結構中,把ARP划分為網絡層,為什么呢,因為在網絡層看來,源主機與目標主機是通過IP地址進行識別的,而所有的數據傳輸又依賴網卡底層硬件,即鏈路層,那么就需要將這些IP地址轉換為鏈路層可以識別的東西,在所有的鏈路中都有着自己的一套尋址機制,如在以太網中使用MAC地址進行尋址,以標識不同的主機,那么就需要有--個協議將IP地址轉換為MAC地址,由此就出現了ARP協議,所有ARP協議在網絡層被應用,它是網絡層與鏈路層連接的重要樞紐,每當有-一個數據要發送的時候都需要在通過ARP協議將IP地址轉換成MAC地址,在IP層及其以上的層次看來,他們只標識IP地址,從不跟硬件打交道
5 arp協議如何工作的
為了實現IP地址與MAC地址的查詢與轉換,ARP協議引入了ARP緩存表的概念,每台主機或路由器在維護着一-個ARP緩存表(ARP table)這個表包含IP地址到MAC地址的映射關系,表中記錄了<IP地址,MAC地址>對,我稱之為ARP表項,如我們前面那張圖所展示的一樣,他們是主機最近運行時獲得關於其他主機的IP地址到MAc地址的映射,當需要發送數據的時候,主機就會根據數據報中的目標IP地址信息,然后在ARP緩存表中進行查找對應的MAC 地址,最后通過網卡將數據發送出去。ARP緩存表包含-個壽命值(TTL,也稱作生存時間) ,它將 記錄每個ARP表項的生存時間,生存時間到了就會從緩存表中刪除。從一個表項放置到ARP緩存表中開始,一個表項通常的生存時間一般是10分鍾嗎,當然,這些生存時間是可以任意設置的,我們一般使用默認即可。
ARP協議
IP地址解析為MAC地址
ARP工作原理:
1. PC1想發送數據給PC2,會 先檢查自己的ARP緩存表。
2.如果發現要查找的MAC地址不在表中,就會發送一個ARP請求廣播,用於發現目的地的MAC地址。ARP請求消息中包括PC1的IP地址和MAC地址以及PC2的IP地址和目的MAC地址(此時為廣播MAC地址FE-FF-FF-FF-FF-FF)。
3.交換機收到廣播后做泛洪處理,除PC1外所有主機收到ARP請求消息,PC2以單播方式發送ARP應答,並在自己的ARP表中緩存PC1的IP地址和MAC地址的對應關系,而其他主機則丟棄這個ARP請求消息。
4. PC1在自己的ARP表中添加PC2的IP地址和MAC地址的對應關系,以單播方式與PC2通信。(兩分鍾不聯系會自動斷開)
4.ARP攻擊原理
欺騙其他所有計算機
欺騙被攻擊計算機
ARP攻擊發送的是ARP應答,但是ARP應答中的MAC地址為虛假地址,所以在其他主機想要進行通信時,會將目的MAC地址設置成此虛假MAC地址導致無法正常通信。
例如如果希望被攻擊無法訪問互聯網,就需要對網關發送或被攻擊主機發送虛假ARP應答。當網關接收到虛假的ARP條目后,如果網關再發生數據給PC時,就會發送到虛假的MAC地址導致通信故障。
此處可以舉例說明,例如張三要給李四打電話,他首先要知道李四的電話號碼,這時有人告訴他李四的電話號碼是12345678(不存在的號碼),於是張三就把電話打到12345678,這樣就無法找到李四。
ARP欺騙的原理和ARP攻擊基本相同,但效果不一樣。ARP攻擊最終的結果是導致網絡中斷,而ARP欺騙的最終結果是使得流量通過自身達到監控或控制的目的。
利用ARP欺騙管理網絡
通過長角牛網絡監控機軟件管理網絡
設置監控范圍
進行網絡管理
驗證效果
總結
IP數據包格式重點理解各字段的含義
版本號 首部長度 優先級與服務類型 總長度 標志符 標志 段偏移量 TTL(生命周期) 協議號 首部校驗和 源地址 目的地址 可選項 數據
ICMP用來發送錯誤和控制信息
ARP協議用於實現IP到MAC 地址的解析
ARP協議通過廣播查詢目標主機MAC地址
ARP攻擊是通過偽造ARP應答進行欺騙攻擊