目錄
一、網絡層
1、網絡層的概念
2、網絡層功能
3、IP數據包格式
二、ICMP協議
1、ICMP的作用和功能
2、ping命令的使用
2.1ping命令的通用格式
2.2ping命令的常用參數
2.3Type+Code:查看不同功能的ICMP報文
2.4ping出現問題
3、Tracert
4、沖突域
5、廣播域
三、ARP協議
1、ARP協議的概念
2、ARP協議的工作原理
四、總結
一、網絡層
1、網絡層的概念
網絡層是OSI參考模型七老仔層協議中的第三層,介于傳輸層和數據鏈路層之間,它在數據鏈路談穗層提供的兩個相鄰端點之間的數據幀的傳送功能上,進一步管理網絡中的數據通信,將數據設法從源端經過若干個中間節點傳送到目的端,從而向運輸層提供最基本的端到端的數據傳送服務。
2、網絡層功能
①定義基于IP協議的邏輯地址(ip確定設備在網絡位置)
②連接不同的媒介類型
③在網絡中選擇最佳路徑轉發數據
3、IP數據包格式
數據封裝的時候在網絡層會封裝ip地址的頭部,形成ip數據包
IP數據包格式:20字節的固定部分(每個ip數據包必須包含的部分)和40字節的可變長部分
版本(4) Version | 首部長度(4) Header Length | 優先級與服務類型(8) Type of Service | 總長度(16) Total Length | |
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?標識符(16) ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? Identification | 標志(3) Flags | 段偏移量(13) Fragment Offset | ||
TTL(8) | 協議號(8) Protocol | 首部校驗和(16) Header Checksum | ||
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?源地址Source IP Address(32) | ||||
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?目標地址Destination IP Address(32) | ||||
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 可選項Options | ||||
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 數據Data |
- 版本號(4bit):指IP協議版本為IPV4和IPV6。并且通信雙方使用的版本必須一致,目前我們使用的IPv4,表示0100
- 首部長度(4):IP數據包的包頭長度(不包括數據)
- 優先級與服務類型(8):該字段用于表示數據包的優先級和服務類型。通過在數據包中劃分一定的優先級,用于實現Qos(服務質量)的要求。即區分IP數據包的優先處理級別
- 總長度(16):定義IP數據包的總長度,最長為65535字節,包括包頭和數據
- 標識符(16):該字段用于表示IP數據包的標識符。當IP對上層數據進行分片時,它將給所有的分片分配一組標號,然后將這些編號放入標識符字段中,保證分片不會被錯誤地重組。標識符字段用于標志一個數據包,以便接收節點可以重組被分片的數據包。即確定數據的分片是否來自于同一個文件
- 標志(3):代表數據過小不需要分片,代表該組最后一個數據包
- 段偏移量(13):該數據片離起點的位置坐標
- TTL生命周期(8):可以防止一個數據包在網絡中無限循環的轉發下去,每經過一個路由器-1, 當TTL的值位0時,該數據包將被丟棄。TTL≥128指win系統,TTL≤64指Linux系統
- 協議號(8):封裝的上層那個協議,ICMP:1 IGMP:2 TCP:6 UDP:17
- 首部校驗和(16):這個字段只檢驗數據報的首部,不包括數據部分。這是因為數據報沒經過 一次路由器,都要重新計算一下首部校驗和(因為一些字段如生存時間、標志、片偏移等可能發生的變化)
- 源地址(32):源IP地址,表示發送端的IP地址
- 目標地址(32):目標IP地址,表示接收端的IP地址
- 可選項:選項字段根據實際情況可變長,可以和IP一起使用的選項有多個。例如:可以輸入創建該數據包的時間等。在選項之后,就是上層數據。
- 數據
二、ICMP協議
1、ICMP的作用和功能
- ICMP是一個“錯誤偵測與回饋機制”
- 通過IP數據包封裝的
- 用來發送錯誤與控制信息
實際上就是通過ping命令檢測網絡的雙向聯通性
2、ping命令的使用
2.1ping命令的通用格式
ping [選項/參數] IP地址
其中[選項/參數]指的是增加額外功能
2.2ping命令的常用參數
常用參數格式 | 功能描述 |
---|---|
ping -t ip地址 | 系統會一直不停地ping下去,按ctrl+c停止長ping |
ping -l size ip地址 | 指定數據包的大小 |
ping -w 等待時間(默認2毫秒) ip地址 | 超時等待時間 |
ping -n 指定次數(默認5次) ip地址 | 指定ping幾次 |
2.3Type+Code:查看不同功能的ICMP報文
Type類型 | code代碼 | 描述 |
---|---|---|
0 | 0 | Echo Reply回復 |
3 | 0 | 網絡不可達 |
3 | 1 | 主機不可達 |
3 | 2 | 協議不可達 |
3 | 3 | 端口不可達 |
11 | 0 | 超時 |
8 | 0 | Echo Request請求 |
ping www.jd.com后使用抓包工具wireshark查看Type:8和code:0,表示Echo Request請求
2.4ping出現問題
①先ping 127.0.0.1,查看是否能ping通自己的設備,不能則說明硬件有問題
②查看發送方與接收方的IP地址是否有錯誤
③查看發送方與接收方是否在同一網絡區域,不在同一區域再查看網關是否有問題
④防火墻策略是否有問題(可能接收方禁言icmp協議)
3、Tracert
Tracert (Trace Route)是一個網絡診斷工具,用于跟蹤數據包從源主機到目標主機的路徑。Tracert 命令使用用 IP 生存時間 (TTL) 字段和?ICMP錯誤消息來確定從一個主機到網絡上其他主機的路由這對于網絡故障排除和性能優化非常有用
4、沖突域
定義:同一時間內只能有一臺設備發送信息的范圍
分層:基于OSI的第一層物理層
設備:第二層設備能隔離沖突域,比如Switch。交換機能縮小沖突域的范圍,交換接的每一個端口就是一個沖突域
5、廣播域
定義:如果站點發出一個廣播信號,所有能接收收到這個信號的設備范圍稱為一個廣播域
分層:基于OSI的第二層數據鏈路層
設備:第三層設備才能隔離廣播域,比如Router。路由器能隔離廣播域,其每一個端口就是一個廣播域
三、ARP協議
1、ARP協議的概念
ARP全稱是“Address Resolution Protocol”(地址解析協議),ARP作用于以太網的環境之中,以太網環境之中數據的傳輸依賴的是MAC地址并不是我們所熟悉的IP地址,每個電腦都有一個IP地址記以及一個MAC地址(全球唯一),二者缺一不可。ARP協議的工作一是將IP地址轉換為MAC地址就是ARP協議的工作,二是檢測地址是否沖突。
2、ARP協議的工作原理
①當PC1發送數據給PC2時,會先檢查自己的ARP緩存表,如果沒有接收方的對應IP地址的MAC信息,PC1就會發送一個ARP請求。ARP請求信息包括PC1的IP地址和MAC地址以及PC2的IP地址和MAC(廣播MAC:FF-FF-FF-FF-FF-FF)
②交換機接收到廣播后,將PC1的IP地址和MAC地址保存到自己的ARP緩存表中,再做泛洪查詢處理,除PC1外本地網絡上所有的主機接收到ARP請求信息并且檢查是否與自己的IP地址匹配。如果主機發現請求的IP地址與自己的IP地址不匹配,它將丟棄ARP請求
③PC2確定ARP請求中的IP地址與自己的IP地址匹配,則將發送方PC1的IP地址和MAC地址保存到本地ARP緩存表,再以單播點對點方式向PC1發送ARP應答
④當PC2的ARP應答經過交換機時,交換機再將PC2的IP地址和MAC地址保存到自己的ARP緩存表中。當PC2的ARP應答到達PC1時,PC1將PC2的IP地址和MAC地址保存到自己的ARP緩存表中,再以單播方式與PC2進行通信
⑤之后PC1和PC2的ARP緩存表中都有對方的IP地址和MAC地址就不需要再進行上述過程,直接通信
四、總結
網絡層位于傳輸層與數據鏈路層中間,具有選擇轉發數據最佳路徑的功能。ICMP協議(檢測網絡的雙向聯通性)與ARP協議(將IP地址轉換成MAC地址)在網絡層協議中至關重要,需要重點掌握。ICMP協議中的ping命令和tracert命令,ARP協議的工作原理,更是重點中的重點