1. 程式人生 > 實用技巧 >IP資料包格式協議欄位和ARP協議的工作原理

IP資料包格式協議欄位和ARP協議的工作原理

IP資料包格式協議欄位和ARP協議的工作原理
在這裡插入圖片描述
IP資料包格式

IP包資料格式解析:

版本(Version): 該欄位包含的是IP的版本號,4bit,目前的版本是4.(即代表IPV4)

首部長度(Header length):該欄位用於表示IP地址包頭長度,4bit。IP資料包頭最短為20位元組,但其長度是可變的,具體長度取決於可選項欄位的長度。

優先順序與服務型別(Priority & Type of service ): 該欄位用於表現數字包的優先順序和服務型別,8bit。通過在資料包中劃分一定的優先順序,用於實現Qos(服務質量)的要求。

總長度(Total Length):該欄位用以整個IP資料包的長度,16bit。當ip對上層資料進行分片時,它將給所有的分片配同一組編號,然後將這些編號放入標示符欄位中,保證分片不會被錯誤的重組。

標誌(Flags): 標誌欄位,3bit,對當前的包不能進行分片(當該包從一個乙太網傳送到另一個乙太網時)或當一個包被分片後用以指示在一系列的分片中,最後一個分片是否已發出。

段偏移量(Fragment Offset):13bit,段偏移量中包含的資訊是指在一個分片序列中如何將各分片重新連線起來。

TTL(Time to Live): 該欄位表示IP資料包的生命週期,8bit,一個數據包每經過一個路由器,TTL將減1,當TTL為0時,該資料包被丟棄,可以防止一個數據包在網路中無限迴圈轉發下去。

協議號(Protocol): 8bit,該欄位用以指示在IP資料包中封裝的是哪一個協議,是TCP還是UDP,TCP協議號為6,UDP協議號為17.

首部校驗和(header checksum):該欄位用於表示校驗和,16bit,接受方和閘道器來校驗資料有沒有被改動過。

源IP地址(source ip address):該欄位用於表示資料包的源地址。32bit

目標IP地址(Destination IP address):該欄位用於表示資料包的目的地址。32bit。

可選項(Options):可選項欄位根據實際情況可變長,可以和IP一起使用的選項有多個。例如,可以輸入建立該資料包的時間等,在可選項之後就是上層資料。

ARP協議的工作原理
把IP地址解析為MAC地址
PC1傳送資料給PC2,先檢視快取裡有沒有PC2的MAC地址,沒有的話PC1傳送一條ARP請求廣播

ARP請求訊息中包括PC1的IP地址和MAC地址以及PC2的IP地址和目的MAC地址,此時廣播MAC地址為FF-FF-FF-FF-FF-FF.
交換機收到ARP廣播後做泛洪處理,此時出PC1以外的所有主機都將收到ARP請求訊息,PC2收到請求訊息後以單播方式傳送ARP應答並在自己的ARP列表中快取PC1的IP地址和MAC地址的對應關係,其他主機則丟掉此ARP請求訊息.
PC1則在自己的ARP列表中新增PC2的IP地址和MAC地址的對應關係,從而以單播方式與PC2通訊.