บทที่ 15 · L2 Redundancy · CloudEngine V600

MSTP Load Balancing Lab (CloudEngine V600)

CE-SW1 กับ CE-SW2 เชื่อมกันด้วยสองสายเหมือนบท STP/RSTP — แต่คราวนี้มี VLAN 10 และ VLAN 20 วิ่งผ่านทั้งคู่ ถ้าใช้ RSTP ธรรมดา สายหนึ่งจะถูกบล็อกทิ้งไว้เฉยๆ ไม่ว่า VLAN ไหน งานของคุณคือใช้ MSTP แบ่ง VLAN ออกเป็นคนละ instance แล้วทำให้ทั้งสองสายถูกใช้งานจริงพร้อมกัน คนละ VLAN

Instance 1 · VLAN 10 Instance 2 · VLAN 20 ลิงก์คู่ผ่าน GE1/0/1 และ GE1/0/2 เป้าหมาย: ทั้งสองลิงก์ forward พร้อมกัน คนละ instance

เทียบกับ V200: ต่างจริงจุดสำคัญจุดเดียว ยืนยันจากคู่มือทางการ CloudEngine S3700, S5700, and S6700 V600R024C00 Configuration Guide – Ethernet Switching ("Configuring an MST Region"): V600 ไม่มีคำสั่ง active region-configuration เลย — พิมพ์ครบตรวจสอบด้วยตาแล้ว quit ออกจาก region view ได้ทันที การตั้งค่า region มีผลทันทีโดยไม่ต้อง commit แยก (คู่มือแนะนำให้รัน check region-configuration ในของ region view ก่อน quit เพื่อตรวจสอบเฉยๆ ไม่ใช่ activate) — ลองพิมพ์ active region-configuration ในบทนี้ดู จะเห็นว่า error ทันที เพราะคำสั่งนี้เป็นของอุปกรณ์ตระกูลอื่น (Fat AP/WLAN, CX91x) ไม่มีบน CloudEngine campus switch เลย — ส่วน stp mode mstp, region-name, instance <id> vlan <list>, stp instance <id> priority, stp instance <id> port priority เหมือนกันทุกตัวอักษร — ดูบทเรียน V200 ที่คู่กัน เพื่อเทียบ

Topology — สถานะสด

Terminal

<CE-SW1>

คำสั่งอ้างอิง — คลิกเพื่อแทรกลงเทอร์มินัลของอุปกรณ์ที่กำลังเลือกอยู่

รองรับ system-view, stp mode mstp, stp region-configuration (region-name, instance <id> vlan <list>, check region-configuration), stp instance <id> priority, stp enable, interface, stp instance <id> port priority, quit/return และ display หลัก ๆ — region-name และการแมป VLAN↔instance ต้องเหมือนกันทุกตัวอักษรทั้งสองสวิตช์ ไม่งั้น MSTP จะมองอีกฝั่งเป็นคนละ region แล้ว fallback เป็นเหมือน RSTP ธรรมดา (ไม่มีการกระจายโหลด) — ปุ่ม "จำลองสายขาด" ใต้ไดอะแกรมใช้ทดสอบว่าอีกลิงก์รับภาระแทนได้จริงหรือไม่ (ไม่ใช่คำสั่ง CLI) — กด Tab เพื่อเติมคำสั่งอัตโนมัติ หรือกด ? เพื่อดูคำสั่งที่เป็นไปได้ในตำแหน่งนั้น เหมือนอุปกรณ์จริง

ต้องตั้ง port priority ที่พอร์ตของสวิตช์ที่เป็น root ของ instance นั้นเท่านั้น — เพราะฝั่ง root คือฝั่งที่ "ส่ง" BPDU ให้อีกฝั่งเลือก ถ้าตั้งผิดฝั่ง (ที่สวิตช์ที่ไม่ใช่ root ของ instance นั้น) คำสั่งจะรันผ่านแต่ไม่มีผลต่อผลลัพธ์เลย ลองสังเกตดูว่าลิงก์ยังไม่กระจายโหลดถ้าตั้งผิดฝั่ง — อ้างอิงจาก Huawei CloudEngine S3700, S5700, and S6700 V600R024C00 Configuration Guide – Ethernet Switching

สรุปท้ายบท — เข้าใจภาพรวม

บทนี้แก้ปัญหาอะไร

RSTP บล็อกสายเดียวสำหรับทุก VLAN = สายสำรองว่างเปล่า MSTP แบ่ง VLAN เป็นหลาย instance ให้แต่ละ instance มี root / blocked port คนละเส้น → ใช้ทั้งสองสายพร้อมกัน (load balance)

ใช้เมื่อไหร่ · ไม่ควรใช้เมื่อไหร่

  • ใช้: มีหลาย VLAN บนลิงก์สำรองคู่ และอยากใช้ bandwidth ทั้งสองเส้น
  • ทางเลือกอื่น: Eth-Trunk รวมสายไปเลย ไม่ต้องแบ่ง instance
  • VLAN เดียว / ไม่กี่ VLAN — RSTP ก็พอ

จุดที่คนมักพลาด

  • region-name / revision / VLAN-to-instance mapping ต้อง "เหมือนกันทุกตัวอักษร" ทุกสวิตช์ ไม่งั้นแยก region คุยกันไม่ได้
  • อย่าไปหา active region-configuration เหมือน V200 — บน V600 ไม่มีคำสั่งนี้ แค่ตั้งค่าแล้ว quit ก็มีผลทันที
  • ตั้ง instance priority แต่ลืมทำอีกฝั่ง → instance นั้นเลือก root ไม่เป็นไปตามตั้งใจ
  • VLAN ที่ไม่ได้ map เข้า instance ไหน จะอยู่ instance 0 (CIST) ทั้งหมด

คำสั่งในบทนี้ — ใช้ทำอะไร

stp region-configuration → region-name / instance <n> vlan <list> / check region-configuration
นิยาม MST region และ map VLAN → instance (มีผลทันที ไม่ต้อง activate)
stp mode mstp
เปลี่ยนเป็นโหมด MSTP
stp instance <n> priority <n>
กำหนด root ต่อ instance (พหุคูณ 4096)
stp instance <n> port priority <n>
ปรับการเลือกพอร์ตของ instance นั้น (พหุคูณ 16)
display stp instance <n>
ดูสถานะพอร์ตแยกราย instance

เชื่อมกับบทอื่น