交換基礎
文章目錄
- 交換基礎
- MAC 地址:設備的 “全球唯一身份證”
- MAC 地址的基本屬性
- MAC 地址的三類類型(按通信范圍劃分)
- 以太幀
- 以太幀的兩個標準格式
- 1. Ethernet_II 格式(常用)
- 2. IEEE 802.3 格式(少用)
- 以太幀的長度要求
- 數據幀的分類
- 交換機的核心工作機制
- 交換機的三個核心動作
- MAC 地址表的生成與使用
- 學習源 MAC 地址(建表)
- 查詢 MAC 地址表(查表)
- 維護 MAC 地址表(老化)
- 實驗:通過 PC 間 ping 測試理解交換機轉發
- 實驗環境
- 實驗流程
- 操作步驟
- 配置 PC1 的 IP 地址(以ENSP模擬器 PC 為例)
- PC1 ping PC2(觸發數據幀傳輸)
- 查看交換機的 MAC 地址表
- (可選)手動修改 MAC 地址表老化時間
- 總結
在局域網中,交換機是連接終端設備(如電腦、打印機)的核心設備,它能高效轉發數據,讓不同設備之間實現通信。要理解交換機的工作原理,首先需要掌握兩個關鍵概念: MAC 地址(設備的 “身份證”)和 以太幀(數據的 “包裝盒”),再結合交換機的轉發邏輯,就能清晰理解局域網內數據的傳遞過程。
MAC 地址:設備的 “全球唯一身份證”
MAC 地址又稱 “物理地址” 或 “硬件地址”,是網卡出廠時固化的唯一標識 —— 就像每個人的身份證號,全球不會有兩塊網卡的 MAC 地址完全相同。
MAC 地址的基本屬性
- 格式與長度
- 長度:48 比特(bit),換算為 6 字節(Byte),用 16 進制表示(0-9、A-F)。
- 書寫格式:通常用 “-” 或 “:” 分隔,比如
54-89-98-A0-56-56
或54:89:98:A0:56:56
。
- 地址結構
- 前 24 比特(前 3 字節):OUI(廠商識別碼),由國際組織分配給網卡廠商,比如
54-89-98
代表某一廠商。 - 后 24 比特(后 3 字節):設備識別碼,由廠商自行分配給每一塊網卡,確保同廠商內不重復。
- 前 24 比特(前 3 字節):OUI(廠商識別碼),由國際組織分配給網卡廠商,比如
MAC 地址的三類類型(按通信范圍劃分)
MAC 地址分為單播、組播、廣播三類,對應不同的 “通信場景”,核心區別在第 8 個比特(從左數第 2 個字符的第 1 位)。
類型 | 核心特征 | 通信場景(通俗理解) | 舉例 |
---|---|---|---|
單播 MAC 地址 | 第 8 比特為 0(比如地址第 2 個字符是 0、2、4 等偶數,或 A、C、E 等) | 一對一通信(“點對點聊天”),比如 PC1 給 PC2 發文件 | 00-1E-10-DD-DD-02 (第 2 個字符是 0,第 8 比特為 0) |
組播 MAC 地址 | 第 8 比特為 1(比如地址第 2 個字符是 1、3、5 等奇數,或 B、D、F 等) | 一對多通信(“拉群聊”),比如給局域網內所有視頻設備發直播流 | 01-80-C2-00-00-01 (第 2 個字符是 1,第 8 比特為 1) |
廣播 MAC 地址 | 所有 48 比特全為 1,固定格式為FF-FF-FF-FF-FF-FF | 一對所有通信(“在大廳喊口號”),比如 PC1 查詢局域網內的打印機 | FF-FF-FF-FF-FF-FF (所有字符都是 F,對應比特全為 1) |
參考華為文檔圖例:
以太幀
在數據鏈路層,數據不是 “裸奔” 傳輸的,而是會被包裝成 “以太幀”(簡稱 “數據幀”)—— 就像寄快遞時要把物品裝進帶地址的盒子,以太幀也包含 “收件地址”“寄件地址” 和 “包裹內容”。
以太幀的兩個標準格式
目前主流的以太幀格式有兩種:Ethernet_II(常用,比如我們日常上網、傳文件用的就是這種)和 IEEE 802.3(多用于工業控制等特殊場景),兩者的區別主要在 “中間字段”。參考華為文檔圖例:
1. Ethernet_II 格式(常用)
字段 | 長度 | 作用(通俗理解) |
---|---|---|
D.MAC(目的 MAC 地址) | 6 字節 | 收件地址:數據要發給哪個設備的網卡 |
S.MAC(源 MAC 地址) | 6 字節 | 寄件地址:數據來自哪個設備的網卡 |
Type(類型字段) | 2 字節 | 說明 “盒子里裝的是什么類型的數據”,比如0800 代表 IP 數據(日常上網數據) |
用戶數據 | 46-1500 字節 | 真正要傳遞的內容(比如微信消息、文件數據),最少 46 字節(不夠會補零),最多 1500 字節 |
FCS(幀校驗序列) | 4 字節 | 校驗數據是否損壞:接收方會計算校驗值,若與 FCS 不一致,說明數據傳丟了,會丟棄該幀 |
2. IEEE 802.3 格式(少用)
比 Ethernet_II 多了 “LLC” 和 “SNAP” 字段,用于兼容早期設備,核心字段作用類似:
字段 | 長度 | 作用 |
---|---|---|
D.MAC | 6 字節 | 目的 MAC 地址 |
S.MAC | 6 字節 | 源 MAC 地址 |
Length(長度字段) | 2 字節 | 說明 “用戶數據的長度”(區別于 Ethernet_II 的 Type 字段) |
LLC(邏輯鏈路控制) | 3 字節 | 兼容早期局域網協議 |
SNAP(子網訪問協議) | 5 字節 | 包含 Org Code(3 字節,廠商碼)和 Type(2 字節,數據類型),相當于把 Ethernet_II 的 Type 字段拆到這里 |
用戶數據 | 38-1492 字節 | 核心數據(因多了 LLC 和 SNAP,比 Ethernet_II 少 8 字節) |
FCS | 4 字節 | 幀校驗 |
以太幀的長度要求
無論哪種格式,整個以太幀的總長度必須在 64-1518 字節之間:
- 小于 64 字節:“短幀”,可能是干擾或錯誤數據,交換機會直接丟棄。
- 大于 1518 字節:“長幀”,可能是異常數據包,交換機會同樣丟棄。
數據幀的分類
和 MAC 地址對應,數據幀也分為三類,直接決定交換機的轉發方式:
- 單播數據幀:目的 MAC 是單播地址(比如 PC1→PC2 的幀)。
- 組播數據幀:目的 MAC 是組播地址(比如給多臺設備發直播的幀)。
- 廣播數據幀:目的 MAC 是
FF-FF-FF-FF-FF-FF
(比如查詢局域網設備的幀)。
交換機的核心工作機制
交換機的核心功能是 “高效轉發數據幀”,它靠一張 “MAC 地址表” 實現 —— 這張表記錄了 “MAC 地址→交換機接口→VLAN” 的對應關系,就像 “小區快遞柜對照表”(哪個快遞對應哪個柜子)。
交換機的三個核心動作
交換機收到數據幀后,會根據幀的類型和 MAC 地址表,執行三種動作之一:
動作 | 適用場景 | 通俗理解 |
---|---|---|
單播轉發 | 已知單播數據幀(MAC 地址表中有目的 MAC 的對應接口) | “精準投遞”:根據地址表,把幀從對應接口發給目標設備,不打擾其他設備 |
泛洪 | 1. 未知單播數據幀(地址表中沒有目的 MAC) 2. 組播數據幀 3. 廣播數據幀 | “群發找人”:除了接收幀的接口,把幀從所有其他接口發出去,直到目標設備響應 |
丟棄 | 1. 幀長度小于 64 字節或大于 1518 字節 2. FCS 校驗失敗(數據損壞) | “拒收垃圾”:直接扔掉無效或錯誤的幀,避免占用網絡資源 |
MAC 地址表的生成與使用
默認情況下,交換機的 MAC 地址表是空的,它會通過 “學習→查表→轉發→老化” 四個步驟,動態維護地址表并實現轉發:
學習源 MAC 地址(建表)
當交換機收到一個數據幀時,首先會 “記住” 幀的源 MAC 地址和 “接收該幀的接口”,并把這對關系寫入 MAC 地址表。
- 例:PC1(MAC:54-89-98-A0-56-56)通過交換機的 GE0/0/1 接口發幀,交換機就會在地址表中添加一條記錄:
5489-98a0-5656 → GE0/0/1
。
查詢 MAC 地址表(查表)
接著,交換機會查看幀的目的 MAC 地址,并在地址表中查找是否有對應的接口記錄:
- 若有記錄(已知單播幀):執行 “單播轉發”,從對應接口發出去。
- 若沒有記錄(未知單播幀):執行 “泛洪”,從所有其他接口發出去。
維護 MAC 地址表(老化)
為了避免地址表過大(浪費設備資源),交換機對動態學習的 MAC 地址表項設置了 “老化時間”—— 默認 300 秒(5 分鐘)。
- 如果 5 分鐘內,某條表項對應的設備沒有再發數據,交換機會自動刪除這條記錄。
- 若設備繼續發數據,老化時間會 “重置”(重新從 5 分鐘開始倒計時)。
實驗:通過 PC 間 ping 測試理解交換機轉發
通過實際操作,我們可以觀察交換機如何學習 MAC 地址、生成地址表,以及如何轉發數據幀。
實驗環境
實驗拓撲:
設備 | 接口 | IP 地址 | MAC 地址 |
---|---|---|---|
PC1 | Ethernet 0/0/1 | 10.1.1.1/24 | 54-89-98-A0-56-56 |
PC2 | Ethernet 0/0/1 | 10.1.1.2/24 | 54-89-98-C9-64-22 |
交換機(SW1) | GE0/0/1(連 PC1)、GE0/0/2(連 PC2) | 無(二層交換機無需配置 IP) | 無 |
實驗流程
- 配置 PC1 和 PC2 的 IP 地址(靜態配置,確保同網段)。
- 用 PC1 ping PC2,觸發數據幀傳輸,讓交換機學習 MAC 地址。
- 查看交換機的 MAC 地址表,驗證表項是否生成。
- (可選)等待 5 分鐘后,再次查看地址表,驗證老化功能。
操作步驟
配置 PC1 的 IP 地址(以ENSP模擬器 PC 為例)
- 打開 PC1 的 “基礎配置” 界面,選擇 “IPv4 配置” 為 “靜態”。
- 填寫參數:
- IP 地址:10.1.1.1
- 子網掩碼:255.255.255.0
- 網關:0.0.0.0(同網段通信無需網關)
- 點擊 “應用”,完成 PC1 配置。
- 重復上述步驟,配置 PC2 的 IP 為 10.1.1.2,子網掩碼 255.255.255.0。如圖:
PC1 ping PC2(觸發數據幀傳輸)
在 PC1 的 “命令行” 界面輸入 ping 命令,測試連通性:
PC1>ping 10.1.1.2 # 向PC2發送ping請求(ICMP協議數據包)
Ping 10.1.1.2: 32 data bytes, Press Ctrl_C to stop
Reply from 10.1.1.2: bytes=32 seq=1 ttl=128 time=1ms # 收到PC2的回復,連通成功
Reply from 10.1.1.2: bytes=32 seq=2 ttl=128 time=1ms
- 此時,PC1 和 PC2 之間會互發數據幀,交換機會自動學習兩者的 MAC 地址。
查看交換機的 MAC 地址表
登錄交換機(通過 Console 或遠程登錄),輸入命令查看 MAC 地址表:
# 1. 進入交換機的用戶視圖(默認登錄后就是用戶視圖)
<SW1># 2. 查看MAC地址表(命令:display mac-address,簡寫dis mac-address)
<SW1>display mac-address
MAC address table of slot 0: # 插槽0的MAC地址表
-------------------------------------------------------------------------------
MAC Address VLAN/VSI/SI PEVLAN CEVLAN Port Type LSP/LSR-ID
-------------------------------------------------------------------------------
5489-98a0-5656 1 - - GE0/0/1 dynamic - # PC1的MAC,對應接口GE0/0/1,動態學習
5489-98c9-6422 1 - - GE0/0/2 dynamic - # PC2的MAC,對應接口GE0/0/2,動態學習
-------------------------------------------------------------------------------
Total matching items on slot 0 displayed = 2 # 共2條表項
- 結果說明:交換機已通過 ping 測試,學習到 PC1 和 PC2 的 MAC 地址,并記錄了對應的接口(GE0/0/1 和 GE0/0/2),類型為 “dynamic”(動態學習)。
(可選)手動修改 MAC 地址表老化時間
默認老化時間是 300 秒,若需修改(不推薦,除非特殊需求),可在交換機的系統視圖中執行命令:
# 1. 進入系統視圖
<SW1>system-view
[SW1]# 2. 修改老化時間(單位:秒,范圍10-1000000,0表示不老化)
[SW1]mac-address aging-time 600 # 將老化時間改為600秒(10分鐘)
[SW1]quit # 退出系統視圖# 3. 驗證修改結果(查看系統配置)
<SW1>display current-configuration | include aging-time # 查看老化時間配置
mac-address aging-time 600 # 確認已修改為600秒
總結
-
MAC 地址:48 比特全球唯一,分單播(第 8 比特 0)、組播(第 8 比特 1)、廣播(全 1)三類。
-
以太幀:數據鏈路層的傳輸單元,總長度 64-1518 字節,有 Ethernet_II 和 IEEE 802.3 兩種格式。
-
交換機轉發:靠 MAC 地址表工作,核心動作是 “單播轉發(已知單播)、泛洪(未知單播 / 組播 / 廣播)、丟棄(無效幀)”。
總結 -
MAC 地址:48 比特全球唯一,分單播(第 8 比特 0)、組播(第 8 比特 1)、廣播(全 1)三類。
-
以太幀:數據鏈路層的傳輸單元,總長度 64-1518 字節,有 Ethernet_II 和 IEEE 802.3 兩種格式。
-
交換機轉發:靠 MAC 地址表工作,核心動作是 “單播轉發(已知單播)、泛洪(未知單播 / 組播 / 廣播)、丟棄(無效幀)”。
-
MAC 地址表:動態學習源 MAC 生成,默認老化時間 300 秒,確保地址表精簡高效。
如涉及版權問題,請聯系作者處理!!!!