لب عملی: پیکربندی Root Bridge با استفاده از دستور Macro در IOS

این لب عملی از دستورات macro و root primary و root secondary برای پیکربندی یک root bridge اصلی و پشتیبان بدون محاسبه دستی مقادیر اولویت استفاده می‌کند، و تأیید می‌کند IOS به‌طور خودکار یک اولویت مناسب نسبت به root فعلی انتخاب می‌کند.

Macro Root در Spanning TreeRoot Primary Secondaryمحاسبه خودکار اولویت

~3 min read · Updated Sep 22, 2026

هدف لب

استفاده از دستورات macro root primary و root secondary برای تعیین یک سوئیچ به‌عنوان root bridge اصلی و یک سوئیچ دوم به‌عنوان root پشتیبان، بدون مشخص‌کردن دستی یک اولویت عددی، و تأیید اینکه IOS مقادیر مناسب را به‌طور خودکار محاسبه می‌کند.

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

محاسبه دستی یک مقدار اولویت به‌اندازه کافی پایین برای تضمین وضعیت root، همان‌طور که در لب قبلی انجام شد، نیازمند دانستن اولویت فعلی هر سوئیچ دیگر در شبکه است. macro root primary این حدس‌زدن را با داشتن IOS که به‌طور خودکار یک اولویت تضمین‌شده کمتر از root فعلی انتخاب می‌کند حذف می‌کند.

توپولوژی لب

Switch1 (root اصلی مورد نظر)
Switch2 (root ثانویه/پشتیبان مورد نظر)
Switch3 (سوئیچ access، اولویت پیش‌فرض)

همه از طریق لینک‌های ترانک در VLAN 1 متصل‌اند

وظیفه ۱: پیکربندی Switch1 به‌عنوان Root اصلی

از دستور macro برای پیکربندی Switch1 به‌عنوان root bridge اصلی برای VLAN 1 استفاده کن.

وظیفه ۲: تأیید اولویت به‌طور خودکار اختصاص‌یافته

بررسی کن IOS واقعاً چه مقدار اولویتی به Switch1 اختصاص داد.

وظیفه ۳: پیکربندی Switch2 به‌عنوان Root ثانویه

از دستور macro برای پیکربندی Switch2 به‌عنوان root bridge ثانویه (پشتیبان) برای VLAN 1 استفاده کن.

وظیفه ۴: تأیید اولویت اختصاص‌یافته Switch2

بررسی کن IOS چه مقدار اولویتی به Switch2 اختصاص داد، و تأیید کن بالاتر از Switch1 اما همچنان پایین‌تر از پیش‌فرض است.

وظیفه ۵: تأیید وضعیت Root Bridge

تأیید کن Switch1 توسط همه سوئیچ‌ها در توپولوژی به‌عنوان root شناخته می‌شود.

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

Switch1(config)# spanning-tree vlan 1 root primary

Switch1# show spanning-tree vlan 1 | include Priority

Bridge ID  Priority    24576
-- IOS به‌طور خودکار 24576 را انتخاب کرد، مقداری
-- تضمین‌شده کمتر از اولویت فعلی هر سوئیچ دیگر
-- در زمانی که این دستور صادر شد -- هیچ محاسبه
-- دستی‌ای مورد نیاز نبود

Switch2(config)# spanning-tree vlan 1 root secondary

Switch2# show spanning-tree vlan 1 | include Priority

Bridge ID  Priority    28672
-- IOS مقدار 28672 را اختصاص داد -- کمتر از
-- 32768 پیش‌فرض (پس Switch2 همچنان بالاتر از
-- یک سوئیچ با اولویت-پیش‌فرض ساده رتبه دارد)،
-- اما بالاتر از 24576 Switch1، که تضمین می‌کند
-- Switch2 فقط اگر Switch1 شکست بخورد root می‌شود

Switch1# show spanning-tree vlan 1 | include Root
Root ID    Priority    24576
           This bridge is the root

Switch3# show spanning-tree vlan 1 | include Root
Root ID    Priority    24576
           Root has priority 24576
-- هر سوئیچ در توپولوژی به‌درستی توافق دارد
-- Switch1 root است

نکته کلیدی

macro های root primary و root secondary یک اولویت مناسب را به‌طور خودکار بر اساس وضعیت فعلی شبکه در لحظه اجرای دستور محاسبه می‌کنند، به‌جای نیازمندی مدیر به بررسی اولویت موجود هر سوئیچ اول — اما این همچنین یعنی مقدار اختصاص‌یافته فقط نسبت به شرایط آن لحظه دقیق تضمین‌شده است، پس یک سوئیچ بعداً اضافه‌شده با یک اولویت دستی حتی پایین‌تر همچنان می‌تواند root مورد نظر را جابه‌جا کند.

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