لب عملی: پیکربندی Root Guard

این لب عملی Root Guard را روی پورت‌های سوئیچ رو‌به‌سمت سوئیچ‌های لایه-access پیکربندی می‌کند تا از تبدیل‌شدن یک سوئیچ غیرمجاز یا نادرست‌پیکربندی‌شده به root Spanning Tree جلوگیری کند، و تأیید می‌کند پورت وقتی یک BPDU برتر دریافت می‌کند وارد حالت root-inconsistent می‌شود.

پیکربندی Root Guardحالت Root-Inconsistentمحافظت توپولوژی STP

~3 min read · Updated Sep 23, 2026

هدف لب

پیکربندی Root Guard روی پورت‌های داون‌لینک یک سوئیچ توزیع به‌سمت سوئیچ‌های access، تأیید عدم‌تأثیر عملیات معمولی، سپس شبیه‌سازی تلاش یک سوئیچ access برای root‌شدن و تأیید اینکه Root Guard با قراردادن پورت در حالت root-inconsistent آن را مسدود می‌کند.

هدف لب (چرا مهم است)

پیکربندی دستی اولویت root bridge، که پیش‌تر در این مجموعه بحث شد، فقط توپولوژی مورد نظر را تحت شرایط معمولی کنترل می‌کند — هیچ کاری برای جلوگیری از تبلیغ تصادفی یا مخرب یک اولویت پایین‌تر توسط یک سوئیچ لایه-access و root‌شدن خودش انجام نمی‌دهد، که مسیرهای ترافیک با دقت طراحی‌شده در سراسر شبکه را مختل می‌کند. Root Guard مکان root مورد نظر را در سطح پورت اعمال می‌کند.

توپولوژی لب

DistSwitch (root مورد نظر، اولویت 4096)
  ---- Gi1/0/1 ---- AccessSwitch1 (اولویت پیش‌فرض)

VLAN 1 هر دو سوئیچ را در بر می‌گیرد

وظیفه ۱: تأیید عملیات معمولی Root Bridge

تأیید کن DistSwitch در حال حاضر root bridge است و Gi1/0/1 در نقش designated/forwarding است.

وظیفه ۲: پیکربندی Root Guard روی پورت داون‌لینک

Root Guard را روی Gi1/0/1 DistSwitch، پورت رو‌به‌سمت AccessSwitch1، فعال کن.

وظیفه ۳: تأیید عدم‌تأثیر ترافیک معمولی

تأیید کن پورت به‌طور معمول forwarding باقی می‌ماند، چون در حال حاضر هیچ BPDU برتری دریافت نمی‌شود.

وظیفه ۴: شبیه‌سازی تلاش AccessSwitch1 برای Root‌شدن

اولویت AccessSwitch1 را زیر DistSwitch کاهش بده، و شبیه‌سازی یا یک پیکربندی نادرست یا یک حمله تلاش‌کننده برای تصاحب نقش root را انجام بده.

وظیفه ۵: تأیید مسدودکردن تلاش توسط Root Guard

تأیید کن Gi1/0/1 وارد یک حالت root-inconsistent می‌شود به‌جای اجازه‌دادن به AccessSwitch1 برای root‌شدن، و تأیید کن DistSwitch root باقی می‌ماند.

راه‌حل و تأیید

DistSwitch# show spanning-tree vlan 1 | include Priority

Bridge ID  Priority    4096
           This bridge is the root

DistSwitch# show spanning-tree vlan 1

Interface     Role  Sts  Cost   Prio.Nbr
Gi1/0/1       Desg  FWD  4      128.1

DistSwitch(config)# interface gigabitethernet1/0/1
DistSwitch(config-if)# spanning-tree guard root

DistSwitch# show spanning-tree vlan 1

Interface     Role  Sts  Cost   Prio.Nbr
Gi1/0/1       Desg  FWD  4      128.1
-- همچنان به‌طور معمول forwarding می‌کند، بدون
-- تأثیر تحت شرایط معمولی

AccessSwitch1(config)# spanning-tree vlan 1 priority 0

-- 0 پایین‌ترین اولویت ممکن است، که تضمین‌شده
-- انتخاب root را تحت قوانین معمولی STP اگر
-- Root Guard حاضر نبود می‌برد

DistSwitch# show spanning-tree vlan 1

Interface     Role  Sts        Cost   Prio.Nbr
Gi1/0/1       Desg  BKN*        4      128.1
*ROOT_Inc

DistSwitch# show spanning-tree inconsistentports

Name                 Interface        Inconsistency
VLAN0001             Gi1/0/1          Root Inconsistent
-- پورت مسدود شده، و DistSwitch با وجود
-- تلاش AccessSwitch1 root باقی می‌ماند

DistSwitch# show spanning-tree vlan 1 | include Priority

Bridge ID  Priority    4096
           This bridge is the root
-- تأیید‌شده: DistSwitch همچنان root است،
-- دقیقاً همان‌طور که طراحی شبکه مورد نظر بود

نکته کلیدی

Root Guard صرفاً یک BPDU برتر را نادیده نمی‌گیرد — به‌طور فعال پورت گیرنده را در یک حالت مسدود متمایز "root-inconsistent" قرار می‌دهد، به‌طور خاص قابل‌مشاهده در show spanning-tree inconsistentports، تا زمانی که BPDU های برتر دیگر روی آن پورت دریافت نشوند، که در آن نقطه بدون نیاز به مداخله دستی به‌طور خودکار بهبود می‌یابد.

Written & researched by Dr. Shahin Siami

Related Articles

لب عملی: چالش عیب‌یابی جامع نهایی CCNP (یکپارچگی BGP، DMVPN، و QoS)

این لب عملی یک شکست پیچیده چندلایه در سراسر یک توپولوژی یکپارچه BGP-روی-DMVPN ترکیب‌شده با علامت‌گذاری QoS ارائه می‌دهد، و نیازمند تشخیص سیستماتیک یک پیکربندی نادرست route reflector، یک شکست ثبت NHRP، و یک سیاست QoS نادرست‌اعمال‌شده که هم‌زمان روی همان شبکه تأثیر می‌گذارند است.

Continue

لب عملی: پیکربندی BGP روی DMVPN

این لب عملی iBGP را به‌عنوان پروتکل مسیریابی در سراسر همان توپولوژی hub-and-spoke DMVPN استفاده‌شده در دو لب قبلی اجرا می‌کند، hub را به‌عنوان یک route reflector BGP پیکربندی می‌کند طوری‌که spoke ها مسیرهای یکدیگر را بدون یک mesh کامل iBGP یاد بگیرند، و دو مفهوم قبلاً جداگانه را در یک طراحی یکپارچه ترکیب می‌کند.

Continue

لب عملی: پیکربندی OSPF روی DMVPN

این لب عملی OSPF را به‌عنوان پروتکل مسیریابی پویا در سراسر همان توپولوژی hub-and-spoke DMVPN اجرا می‌کند، و اینترفیس تونل را به‌عنوان یک نوع شبکه OSPF point-to-multipoint پیکربندی می‌کند تا الگوی همسایگی hub-and-spoke را به‌درستی بدون نیاز به انتخاب DR/BDR نوع شبکه broadcast مدیریت کند.

Continue

لب عملی: پیکربندی EIGRP روی DMVPN

این لب عملی EIGRP را به‌عنوان پروتکل مسیریابی پویا در سراسر توپولوژی hub-and-spoke DMVPN ساخته‌شده در لب‌های قبلی اجرا می‌کند، و تأیید می‌کند روابط همسایه به‌درستی در سراسر تونل چندنقطه‌ای شکل می‌گیرند و مسیرها بدون نیاز به پیکربندی ایستای هر-spoke روی hub منتشر می‌شوند.

Continue

لب عملی: پیکربندی احراز هویت MD5 در HSRP

این لب عملی احراز هویت MD5 را روی یک گروه HSRP پیکربندی می‌کند، و تأیید می‌کند دو روتر با رشته‌های احراز هویت منطبق یک رابطه active/standby معمولی تشکیل می‌دهند در حالی که یک روتر با رشته نامنطبق کاملاً از گروه مستثنی می‌شود.

Continue

لب عملی: پیکربندی امنیت DNS به‌سبک-Cisco Umbrella از طریق تغییرمسیر Forwarding DNS

این لب عملی یک روتر را برای رهگیری هر پرس‌وجوی DNS کلاینت و تغییرمسیر آن به‌سمت یک resolver DNS امنیت-محور با استفاده از رهگیری forwarding DNS پیکربندی می‌کند، و اعمال امنیت DNS تحویل‌شده-با-ابر را بدون نیاز به تغییرات پیکربندی به‌ازای-هر-کلاینت تقریب می‌زند.

Continue