一、網絡模型
萬年不變,先從模型結構分析,現在大家熟知的網絡模型有兩種。第一種是,OSI七層模型,第二種是TCP/IP模型。在實際運用中,參考更多的是TCP/IP模型。
OSI七層模型
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsIyZuBnLzcjZyczNzU2YiBDMiVTNhVGZ5QzYlJTZxATOxITY0M2Lc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
TCP/IP模型
不需要全部了解,隻需要明白兩點:1、資料包發送資料的過程是從上到下打包,接收資料是從下至上拆包。2、在二層資料鍊路層我們的資料已經被層層封裝為以太網幀結構。現在有了下一個問題,以太網幀結構是什麼?
二、以太網幀結構
以太網幀結構裡有:DMAC、SMAC、Type、使用者資料、FSC幀校驗序列,我們挨個解釋一下:
DMAC:目的MAC位址,被通路的MAC位址;
SMAC:源MAC位址,發起方的MAC位址;
Type:在資料中有一個type字段,是為了讓交換機收到一個幀,拆開幀頭,不用再進一步拆包就知道packet中類型,比如:
1、type=0X0800 代表的就是包内容是ipv4;
2、type=0X86DD 代表的就是IPv6;
3、type=0X0806 代表的就是ARP包;
4、type=0X8847 代表的就是MPLS unicast;
5、type=0X8848 代表的就是MPLS multicast;
使用者資料:資料内容;
FSC幀校驗序列:讓接收幀的網卡或者網口判斷是否有錯誤;
這裡主要了解一下以太網幀頭中有源MAC位址和目的MAC位址。
三、MAC位址
MAC位址(Media Access Control Address)也稱為硬體位址或實體位址(Physical Address),它是一個用來确認網絡裝置位置的位址。在OSI模型中,第二層資料鍊路層則負責MAC位址 。MAC位址用于在網絡中唯一标示一個網卡,一台裝置若有一或多個網卡,則每個網卡都需要并會有一個唯一的MAC位址。
四、資料鍊路層>二層交換機
二層交換機能夠基于資料鍊路層的 MAC 位址,進行資料幀或 VLAN 的傳輸功能。二層交換機内置MAC位址表,為二層裝置提供了唯一的位址,用于辨別資料下發的終端裝置和節點。
優點:資料交換是靠硬體來實作的,其非常快速且有效地将資料從源端傳輸到目标端。
簡單的說,MAC位址表是交換機等網絡裝置記錄MAC位址和裝置端口的映射關系,代表了交換機從哪個端口學習到了某個MAC位址,後續交換機需要轉發資料的時候就可以根據封包中目的MAC位址去 對照裝置中的MAC位址表進行資料轉發。如果MAC位址表中已經存在該MAC位址表項,裝置将通過重置該表項的老化時間,對該表項進行更新。
五、二層交換機MAC位址學習
執行個體解析:
主機 PC1向主機 PC2 發送資料,PC1不知道PC2的MAC位址,PC1就像所有端口發說ARP廣播請求包說:誰告訴我IP位址為192.168.1.4的MAC位址是多少?
PC1發送時,交換機把PC1的端口0/0/1、 MAC位址更新記錄到MAC位址表中。但是此時交換機不知道目的 PC2MAC位址在哪個端口,于是将資料幀進行ARP廣播包請求泛洪,即轉發到除端口 1 之外的所有端口。
PC3收到資料幀發現目的IP位址不是自己,将丢棄資料幀。PC2收到資料幀發現是源IP是自己請求自己的MAC位址,于是發送應答資料幀,交換機端口 0/0/2 收到資料幀,記錄PC2 對應的端口、 MAC
位址表項。
于是交換機知道了主機PC1 和主機 PC2 的 端口、MAC 位址資訊,之後會根據 MAC 位址表進行轉發。
上面的描述看不懂的話這裡我們可以抓包看一下:
設定PC1通路PC2,抓包抓取交換機G0/0/1端口流量,抓包設定顯示1.4的IP流量資訊:
PC1開始ping 192.168.1.4,抓包内容顯示如下:
打開一個廣播包,内容為:
交換機ARP廣播包問誰是192.168.1.4,告訴192.168.1.2,資料包裡有發送的MAC位址和IP、目标的IP位址、MAC位址為廣播因為不知道是交換機向所有端口問。
ARP回包:
包含源為192.168.1.4和MAC位址、以及回應給請求的目标192.168.1.2和MAC位址資訊。
1、同一個MAC可以在同一台交換機的不同接口上出現嗎 ?
不能。因為這樣的交換機就不知道如何轉發了
2、同一個MAC位址可以在不同交換機上的接口出現嗎?
可以。
3、不同MAC位址可以在同一台交換機的相同接口出現嗎?
可以。
4、既然通過ARP廣播包發送請求是不是二層交換機也有ARP表?
沒有,二層交換機有且隻有一個關系表:MAC位址表
![]()
【數通網絡交換基礎梳理1】二層交換機、以太網幀、MAC位址資料幀轉發原理詳解一、網絡模型二、以太網幀結構三、MAC位址四、資料鍊路層>二層交換機五、二層交換機MAC位址學習六、ARP廣播七、不通網段如何通訊?知識擴充:
大白話翻譯:
二層交換機隻工作在二層資料鍊路層,是以咱們ping 192.168.1.4的時候二層交換機了解不了這個是什麼意思,因為IP位址是三層網絡層協定。而二層交換機通訊主要依靠ARP廣播包識别各自交換機端口所接裝置的MAC位址更新維護MAC位址表,又因資料最終轉換成比特流通過實體媒體發送出去,是以他要做一個轉換就是從上往下打包發送(應用-傳輸-網絡-資料鍊路),每上一層的資訊逐漸打包好了添加到下一層中,此時再來了解這一張圖可能會稍微清晰一點。
六、ARP廣播
ARP 協定的全稱是 Address Resolution Protocol(位址解析協定),它是一個通過用于實作從 IP 位址到 MAC 位址的映射,即詢問目标 IP 對應的 MAC 位址 的一種協定。ARP 協定在 IPv4 中極其重要。
以五中實驗為例:
在PC1給PC1的發送資料的時候,是以資料幀的形式發送的,資料幀被網卡解析成電信号或者光信号傳遞到對端。資料幀裡太網幀頭由源MAC位址和目的MAC位址組成的,如果發送者隻知道目的主機的IP位址,不知道目的主機的MAC位址,就不能把這個資料包轉化成資料幀發走。而ARP 協定就是負責位址解析的,使用目的主機IP位址來解析對方的MAC位址。
七、不通網段如何通訊?
同網段可以依靠二層交換機通訊,當網絡中存在多個網段192.168.1.1/24 172.16.1.1/24 173.73.1.1/24情況下交換機該如何互相通訊?請關注下一章
知識擴充:
沖突與沖突域
1、交換機每一個端口都是一個獨立的沖突域,是以在其獨立的沖突域中是不會發生任何通訊沖突的。
2、交換機通過分割沖突域來避免沖突的發生,同時提高傳輸效率。
沖突域與廣播域
1、交換機每一個端口都是一個獨立的沖突域,但交換機預設情況下,所有端口都工作在同一個廣播域中。
2、所有端口都處于同一個廣播域将會造成較大的安全隐患,是以交換機可通過額外的配置來分割廣播域,該配置稱之為VLAN【Virtual Local Area Network | 虛拟區域網路】。