「緯育 2026-0410」修訂間的差異

出自頂極製作所
行 129: 行 129:
** 相同 VLAN 內的連通性:確保不同交換器上、但屬於相同 VLAN 的成員(如 VLAN 12、VLAN 13)可以互相 ping 通。
** 相同 VLAN 內的連通性:確保不同交換器上、但屬於相同 VLAN 的成員(如 VLAN 12、VLAN 13)可以互相 ping 通。
** 網管 VLAN 的連通性:確保網管伺服器能 ping 到所有交換器的網管 VLAN 介面(VLAN 99)。
** 網管 VLAN 的連通性:確保網管伺服器能 ping 到所有交換器的網管 VLAN 介面(VLAN 99)。
[[]]
[[檔案:2026-0428-01.png|800px]]

於 2026年4月28日 (二) 01:52 的修訂

本講次聚焦思科交換機的Port Security(埠安全),涵蓋Access Port前置、核心參數Maximum與Violation、手動靜態綁定與sticky自動綁定的差異與操作、MAC學習與觸發條件、STP指示燈延遲、預設值在running-config的顯示行為、違規與err-disable狀態診斷及復原。以具體埠案例(如E21、11號埠)示範完整設定與驗證流程,強調多指令批次設定先關閉介面、完成後再開啟的策略;在大規模部署(如48埠、30台PC)建議採sticky以降低人工綁定成本與錯誤。並以銀行偷換線情境與「駭客」PC模擬,說明違規觸發與燈號行為差異(Packet Tracer vs. 實機),以及保存證據的設計考量與正確的err-disable復原程序。

Port Security基礎與目的

  • 定義與層級:Port Security為二層功能,用於在端口綁定允許的MAC以限制接入、防止未授權設備連線。二層相關指令以switchport為前綴。
  • 應用場景:管理伺服器端口(如E21)僅允許該伺服器MAC通行,未綁定來源視為違規。

前置條件與操作策略

  • Access Port先決條件:端口需設定為switchport mode access後,方可啟用Port Security。
  • 批次設定策略:在同一介面連續下多行指令時,先shutdown,完成所有設定再no shutdown,以避免中途對外互動造成不一致。

核心參數與預設行為

  • Maximum:switchport port-security maximum <數量>,示範設備支援1–132(一般情境設1;下掛小型交換器或多設備可調高)。
  • Violation:switchport port-security violation <protect|restrict|shutdown>。違規指的是收到來源MAC不在允許名單的封包;示範採shutdown。
  • 預設值顯示:維持預設(通常maximum 1與violation shutdown)時,running-config不顯示這兩行;只有非預設設定才會出現。

綁定方式:手動與sticky

  • 手動靜態綁定:switchport port-security mac-address (常見格式為xxxx.xxxx.xxxx),綁定結果在MAC表為Static。
  • sticky自動綁定:switchport port-security mac-address sticky,介面上有流量時,交換機自MAC Address Table學到來源MAC並自動「貼」到running-config的該介面設定;show running-config可看到生成的mac-address條目。
  • 大規模部署:手動逐台查詢並轉換MAC格式耗時且易錯;sticky能自動化寫入,適合大量端口與多台PC。

MAC學習、指示燈與STP

  • 學習觸發條件:必須有封包通過該埠(如Ping)才會學到MAC;無流量則sticky不會貼、違規也不會觸發。
  • 指示燈行為:初始連線橙燈約30秒後轉綠燈,源於STP收斂延遲。
  • 模擬與實機差異:Packet Tracer以紅燈表示shutdown;實體交換機端口被關閉時通常不亮燈,紅燈為模擬提示。

違規、err-disable與證據保全

  • 違規觸發:接入不同MAC的裝置並產生流量時,Port Security比對不符即依設定處置(如shutdown),可能導致err-disable狀態。
  • 證據保全設計:即使重新接回原PC,端口仍維持關閉,避免自動恢復掩蓋偷換線事件,利於翌日稽核。
  • 診斷命令:show port-security查看啟動與Violation次數;show mac-address-table查MAC與埠對應;show interface/port-security檢視err-disable關鍵字。
  • 復原程序:遇err-disable單純no shutdown無效,需先shutdown再no shutdown;復原後約30秒橙燈轉綠燈。

品牌差異與可綁數量

  • Cisco支援單埠綁多MAC,便於下掛小型交換器場景;部分品牌僅允許綁定一個MAC。
  • 可綁上限以設備?查詢為準(示範1–132),不同機型/IOS版本可能差異。

存檔要求

  • sticky貼上後務必copy running-config startup-config;未存檔重啟將遺失黏貼的MAC條目,影響作業與評分。

實作步驟示範(以E21/11號埠為例)

  • 進入與關閉介面:enable;configure terminal;interface <介面>;shutdown。
  • 設為Access Port:switchport mode access。
  • 啟用Port Security:switchport port-security。
  • 設定Maximum與Violation(可維持預設):switchport port-security maximum 1;switchport port-security violation shutdown。
  • 綁定方式:
    • 手動:switchport port-security mac-address xxxx.xxxx.xxxx。
    • sticky:switchport port-security mac-address sticky。
  • 開啟介面與觸發學習:no shutdown;由連接PC發送封包(如Ping)促使MAC學習與sticky貼上。
  • 驗證與存檔:show mac-address-table;show running-config;copy running-config startup-config。

2026-0410-04.png

VLAN 的基本概念與性質

  • 虛擬的意義:以軟體或邏輯手段模擬並隔離資源(如 VM 的 vCPU/vRAM);VLAN 在交換機端「模擬出一個 LAN」以達到邏輯隔離與管理。
  • VLAN 是技術、非協定:依賴 IEEE 802.1Q 在以太幀中插入 VLAN 標籤以進行 Trunking,跨交換機匯聚與傳遞多個 VLAN。
  • 虛擬技術多細節:凡以 Virtual 開頭(VPN、VLAN、VM)通常較複雜,需審慎理解與配置。

VLAN 的設計理念與廣播域

  • 等價定義:一個 VLAN 即是一個獨立的廣播域(Broadcast Domain)。
  • 廣播行為:L2 交換機對廣播(目的 MAC FF:FF:FF:FF:FF:FF)會泛洪到所有埠;未切 VLAN 的單台交換機或多台 L2 串接網路會形成單一大型廣播域。
  • 企業常見切割:多以部門(財務、研發、業務等)為單位切分 VLAN,達到邏輯隔離與管理。

未切割 VLAN 的影響與案例

  • 後果:大型二層網路中任一端點的廣播會泛洪至所有設備,伺服器與 PC 必須接收處理,造成高負載。
  • CPU 中斷與效能:廣播封包到達網卡即觸發 CPU interrupt,頻繁上下文切換使伺服器效能顯著下滑。
  • 實例:大立光早期未切 VLAN,整網一個廣播域,伺服器每分鐘收數百個廣播包;導入 VLAN 後廣播量降至每分鐘十幾至幾十個,效能明顯改善。

4. 相同 VLAN 跨交換機互通與 Trunking

  • 傳統做法的限制:每 VLAN 一條跳線、一個端口的互聯在多 VLAN(如 20 個)環境中端口耗盡且不可擴。
  • 802.1Q Trunk 解法:以單一 Trunk 端口承載多個 VLAN,兩交換機間一條鏈路傳遞帶標籤的封包;進入 Trunk 時插入標籤、離開至 Access 端口時移除標籤,主機端無需感知。
  • 概念類比:Trunk 源自電信長途幹線,多路共用單一骨幹;在交換機間,多個 VLAN 的流量共用同一條 Trunk。
  • 規模化優勢:節省端口與布線、提升可擴性,跨樓層或多交換機場景仍保有相同 VLAN 的邏輯廣播域。

Trunk 技術演進與跨品牌相容

  • 早期不相容:各廠商採專有封裝(如 Cisco ISL、HP 自有)導致跨品牌 VLAN 不通。
  • 標準化後:IEEE 802.1Q 統一標記機制,只要雙方交換機支援並啟用 802.1Q,即可跨品牌互通。
  • 封包插入位置:802.1Q 在以太幀頭的來源 MAC 與 EtherType 之間插入 4-byte 標籤,區別於 ISL 的外層封裝。

802.1Q 標籤結構與位元配置

  • 幀頭變化:原始 6(目的 MAC)+6(來源 MAC)+2(EtherType/長度),變為 6+6+4(802.1Q tag)+2。
  • VLAN ID 欄位:12-bit,可表 0–4095,保留 0 與 4095,企業可用範圍為 1–4094(共 4094 個 VLAN)。
  • 其他欄位:歷史上曾含媒介識別(Token Ring/Ethernet),後被重定義為擁塞丟棄指示(DI)等,用於在 Trunk 擁塞時標示可丟棄的非重要流量,保護關鍵封包。

Native VLAN 與 Untagged 流量

  • 定義:Native VLAN 為 Trunk 端口對未加標籤流量的歸屬設定,預設為 VLAN 1。
  • 行為:來源 VLAN 等於端口 Native VLAN 時,封包在 Trunk 上不加標籤(Untag);否則加上對應 VLAN 標籤。
  • 實務設定與資安:雙端 Native VLAN 需一致以確保 Untag 流量互通;常將 Native VLAN 調整為管理用 VLAN(如 VLAN 99),並評估資安風險以避免未標籤流量被濫用。

不同 VLAN 的資料互通(Inter-VLAN Routing)

  • 二層隔離:純二層環境下不同 VLAN 的流量本質上不通,包括廣播與一般資料。
  • 互通條件:為每個 VLAN 規劃獨立 IP 子網(例如 VLAN 10→172.16.1.0、VLAN 20→172.16.2.0),以三層交換機或路由器進行 Inter-VLAN Routing,使資料可互通而保持廣播隔離。

大型網路的 VLAN 規劃與設定流程

  • 流程建議:不使用或忽略 VTP;設定 Trunk 端口;手動建立 VLAN 資料庫;將 VLAN 指派至正確的 Access 端口。
  • 冗餘與負載:在交換機間以兩條線啟用 Trunk 冗餘(如 fa0/23、fa0/24),後續可規劃 VLAN 負載分擔。
  • 設定與驗證:
  • 介面範圍設定:interface range 同步配置連續端口。
  • 啟動 Trunk:switchport mode trunk。
  • 允許清單:switchport trunk allowed vlan 指定允許通過的 VLAN(如 12,13,14,99)以強化資安。
  • 驗證:show interfaces trunk 檢查狀態、Native VLAN(預設 1,若更改需一致)、Encapsulation 應為 802.1Q(顯示 ISL 代表舊式封裝)。

2026-0410-05.png

VLAN 基礎設定

  • VLAN 資料儲存
    • VLAN 的設定資訊儲存在 Flash 記憶體中的 vlan.dat 檔案裡。
    • 此檔案必須使用 show vlan brief 指令來查看其內容。
    • 設定流程是先建立 VLAN,再將端口配置到對應的 VLAN 中。
  • Access Port
    • 分配給特定 VLAN 的端口稱為 Access Port,設定指令為 switchport mode access。
    • 在 Access Port 上的封包不帶 VLAN 標籤。

Trunk 埠設定與安全

  • Trunk 埠基本概念
    • 當 VLAN 需要跨越多台交換器時,交換器之間的連線需設定為 Trunk 埠,以允許帶有多個 VLAN 標籤的流量通過。
    • 設定指令為 switchport mode trunk。
  • Trunk 埠的資安風險
    • 預設情況下,Trunk 埠允許所有 VLAN 通過,駭客可利用此特性進行標籤跳躍攻擊,非法存取受保護的網路。
    • 可使用 Kali Linux 等工具(如 Yersinia)來模擬這類攻擊。
  • 限制 Trunk 埠允許的 VLAN
    • 為提升安全,必須使用 switchport trunk allowed vlan [VLAN 列表] 指令嚴格限制 Trunk 埠上允許通過的 VLAN。
    • 範例:switchport trunk allowed vlan 12,13,99 (逗點後不可加空白)。
  • Native VLAN 設定
    • Native VLAN 是 Trunk 鏈路上流量「不帶」VLAN 標籤的特殊 VLAN,預設為 VLAN 1。
    • 更改指令為 switchport trunk native vlan [VLAN ID]。
    • 極重要:一條 Trunk 鏈路兩端的 Native VLAN 設定「必須」完全一致。
  • Native VLAN 不匹配的風險
    • 若兩端 Native VLAN 不一致,會產生 Native VLAN mismatch 的嚴重錯誤,這是一個安全漏洞。
    • 交換器會透過 Spanning Tree Protocol (STP) 將該端口置於 blocking 狀態,導致網路中斷。

端口狀態與 Trunk 鏈路驗證

  • 端口啟動狀態 (雙擊火)
    • 端口正常運作需滿足 Interface is up (物理層正常) 和 line protocol is up (鏈路協定正常) 兩個條件。
    • Keep Alive 封包機制用於確認鏈路協定的健康度。
  • Trunk 鏈路驗證指令
    • show interface trunk:檢查交換器上所有 Trunk 鏈路的狀態,包括模式、Native VLAN 及允許的 VLAN 列表。
    • show interface [interface] switchport:提供單一端口詳細的二層參數,其中包含以下兩種模式。
  • Administrative Mode vs. Operational Mode
    • Administrative Mode:代表管理員的設定值(如 trunk)。
    • Operational Mode:代表端口與對向協調後的實際運行狀態。要使鏈路正常,此模式必須成功顯示為 trunk。
  • Trunk 端口在 show vlan brief 中的顯示差異
    • show vlan brief 指令只顯示 access port 與 VLAN 的對應關係。
    • 一旦端口成功設定為 trunk,它將從此指令的輸出中消失,因為它不再屬於任何單一 VLAN。

子網路切割與 IP 位址計算

  • 子網路遮罩與主機位元
    • host 部分全為 0 的 IP 是網段位址,全為 1 的是廣播位址,兩者均不可分配給裝置。
    • 講師提供記憶法,如 /28 遮罩為 255.255.255.240 (28-24=4,第四個八位元有 4 個 1)。
  • 可用 IP 位址範圍
    • 可用 IP 是介於網段和廣播位址之間的 IP。
    • 範例 (VLAN 12, 10.1.12.16/28): PC1 為 10.1.12.17,PC2 為 10.1.12.18,Gateway 為 10.1.12.30 (最後一個可用 IP)。
  • 第一階段測試目標
    • 相同 VLAN 內的連通性:確保不同交換器上、但屬於相同 VLAN 的成員(如 VLAN 12、VLAN 13)可以互相 ping 通。
    • 網管 VLAN 的連通性:確保網管伺服器能 ping 到所有交換器的網管 VLAN 介面(VLAN 99)。

2026-0428-01.png