STP یا Spanning Tree Protocol در شبکه از اهمیت و کارکرد فوقالعاده بالایی برخوردار است. سوئیچهای Cisco Small Business از این پروتکل در انواع مختلف خود پشتیبانی میکنند. در این مقاله به STP Interface Settings میپردازیم. برای دسترسی به سایر بخشها، از فهرست زیر میتوانید استفاده کنید:
در این مقاله سعی داریم تنظیمات STP را بر روی پورتهای سوئیچ شرح دهیم. برای درک بهتر این موضوع برای شما یک سناریو به شکل زیر ترتیب دادیم:
همان طور که مشاهده می کنید در سناریو از دو سوئیچ SW-1 و SW-2 استفاده کردهایم. SW-1 از سری Catalyst 2960 انتخاب شده و برای SW-2 از سری Small Business و مدل SG300 انتخاب شده است. در هر دو سوئیچ به دلیل برابر بودن مقدار Priority با مقدار پیشفرض ۳۲۷۶۸، انتخاب Root Bridge وابسته به مقدار Base MAC Address میشود. چون مقدار MAC سوئیچ ۲۹۶۰ از SG300 کمتر است، پس ۲۹۶۰ سوئیچ ریشه یا Root Bridge میشود.
بر روی هر دو سوئیچ Spanning Tree از نوع RSTP فعال است.
در سوئیچ ۲۹۶۰ به دلیل Root Bridge بودن، نقش پورتهای آن Designated است و بر روی هر دو پورت خود BPDU ارسال میکند. در بسته های BPDU قسمتهای Bridge-ID و Root-ID را برابر قرار میدهد. چون این سوئیچ Root Bridge است، وضعیت پورتهای آن Forwarding است.
نکته: در سوئیچ ۲۹۶۰ برای محاسبه Cost پورتها از حالت Short استفاده شده است. Cost اینترفیسهای آن ۴ میباشد. چون هر دو پورت به صورت Gigabit Ethernet میباشد.
SG300 که سوئیچ ریشه نیست، ۳ پورت فعال دارد. پورتهای Gig 1 و Gig 3 به صورت Uplink به ۲۹۶۰ متصل است و چون اتصال این دو پورت باعث ایجاد Loop شده است یکی از این دو پورت باید Block یا Alternate شود که آن پورت Gig 3 میباشد.
در SG300 برای انتخاب Root Port یا همان پورتی که سوئیچ را با کمترین هزینه به Root Bridge میرساند، دو پورت Gig 1 و Gig 3 کاندید میباشند که Gig 1 به عنوان Root Port انتخاب شده است. چرا؟
سوئیچ SG300 برای رسیدن به Root Bridge که همان سوئیچ ۲۹۶۰ میباشد دو پورت Gig 1 و Gig 3 را دارد که هزینه رسیدن به Root Bridge از Gig 1 برابر با ۲۰۰۰ و هزینه رسیدن به Root Bridge از Gig 3 هم نیز برابر با ۲۰۰۰ میباشد.
نکته: در سوئیچ SG300 برای Path Cost پورتها از حالت Long استفاده شده است. به همین دلیل است که Path Cost پورتهای SG300 مقدار ۲۰۰۰ را دارند.
پس در SG300 برای رسیدن به Root Bridge به کمک Path Cost مشخص نشد که کدام پورت Gig 1 یا Gig 3 وضعیت بهتری دارند. مورد بعدی که بررسی می شود Sender Bridge-ID روی پورتها میباشد که بدلیل یکی بودن Sender ها بر روی هر دو پورت، پس این مورد نیز به ما کمکی نمیکند.
مورد بعدی Sender Port Priority است. یعنی بر روی هر پورت BPDU که دریافت میکند مقدار Port Priority آن چه مقدار میباشد.
روی پورت Gig 1 که Sender متناظر آن بر روی ۲۹۶۰ پورت Gig0/1 است، مقدار Port Priority پورت Gig0/1 برابر با مقدار پیش فرض ۱۲۸ است. برای پورت Gig 3 که Sender آن پورت Gig0/2 از سوئیچ ۲۹۶۰ می باشد نیز مقدار Port Priority عدد۱۲۸ است. پس این مورد نیز کمکی به ما برای انتخاب Root Port در SG300 نکرد.
نکته: مقدار Port Priority هر چه کمتر باشد بهتر است. یعنی اگر در سوئیچ ۲۹۶۰ مقدار Port Priority در پورت Gig0/2 را عدد کمتر از ۱۲۸ قرار دهیم مثلا ۶۴، آنگاه پورت Gig 3 از سوئیچ SG300 وضعیت بهتری نسبت به Gig 1 خواهد داشت و پورت Gig 3 به عنوان Root Port انتخاب میشد.
حالا چون مقدار Port Priority در Gig0/1 و Gig0/2 از سوئیچ ۲۹۶۰ برابر بود، انتخاب Root Port در سوئیچ SG300 وابسته به المان بعدی می باشد که Interface Number می باشد. یعنی Gig 1 کمتر از Gig 3 است (۳>1) پس Gig 1 به عنوان Root Port انتخاب شده و Gig 3 بلاک میشود.
نکته: چون از RSTP استفاده میشود و در RSTP نقشی به عنوان Block نداریم، Gig 3 به عنوان Alternate تعیین می شود. Alternate همان بکاپ Root Port است و در صورت از دست دادن Root Port در SG300 پورت Gig 3 سریعا (بدون Listening و Learning) نقش Root Port را می گیرد و جایگزین Gig 1 میشود.
چرا Gig 4 از سوئیچ SG300 نقش Designated دارد؟
چون سوئیچ بر روی این پورت هیچ BPDU ای دریافت نمیکند و متصل به دستگاه لایه سه-ای (کامپیوتر) میباشد.
نکته: وضعیت پورتهای Designated در سوئیچ Forwarding میباشد و بر روی این پورتهای Designated سوئیچ BPDU ارسال میکند.
نکته: گاهی اوقات ارسال BPDU بر روی پورت های سوئیچ از نظر امنیتی درست نیست. زیرا متصل به End User می باشد. برای جلوگیری از آن از ابزار BPDU Filter استفاده میکنند.
نکته: دریافت BPDU بر روی پورتهایی که به End User متصل است نیز از نظر منطقی درست نیست. می توان جلوی آن را با BPDU Guard گرفت.
سوال: سوئیچ چگونه Edge Port را از Non Edge Port تشخیص میدهد؟
سوئیچ اگر بر روی پورت خود BPDU دریافت کرد آن پورت را به عنوان Non Edge Port میشناسد و اگر BPDU دریافت نکرد آن پورت را Edge Port میشناسد و بر روی آن پورت PortFast را فعال میکند.
نکته: بر روی سوئیچهای Small Business سیسکو گزینه Edge Port بر روی پورتها به صورت Auto میباشد. یعنی خود سوئیچ با دریافت کردن یا نکردن BPDU بر روی آن پورت تشخیص میدهد که آن پورت Edge پورت است یا خیر. البته شما میتوانید به صورت دستی معین کنید که پورت Edge Port باشد یا خیر.
نکته: در RSTP وضعیت پورتهای Alternate و Backup به صورت Discard میباشد و پورتهای Root و Designated به صورت Forward. وضعیت Learning به صورت گذرا و سریع است.
نکته: در RSTP پورتهای Alternate جایگزین Root Port و پورتهای Backup جایگزین Designated است. زیرا سوئیچ با از دست دادن پورت Root خود سریعا جایگزین آن را داشته باشد و در صورت از دست دادن Designated خود و برای جلوگیری از ارسال نشدن BPDU به همسایگان، پورت Backup را جایگزین پورت Designated از دست رفته میکند.
با فهمیدن تمام این موضوعات، اکنون به سراغ انجام تنظیمات روی سوئیچ SG300 میرویم.
STP Interface Settings
در این قسمت میتوانید اطلاعات مریوط به تنظیمات STP سوئیچ را مشاهده کنید و تنظیماتی از قبیل Port Priority, Path Cost, BPDU Guard, Root Guard و… را فعال کنید.
ابتدا بر روی Gig 1 کلیک میکنیم.
STP: نشان میدهد که بر روی این پورت STP فعال باشد یا خیر.
Edge Port
Enable: یعنی به صورت ثابت این پورت Edge Port باشد.
Auto: یعنی سوئیچ خودش تشخیص دهد که این پورت Edge باشد یا خیر.
Disable: یعنی به صورت ثابت این پورت Non Edge Port باشد.
Root Guard: یعنی روی این پورت Root Guard فعال باشد یا خیر. اگر فعال باشد یعنی اگر بر روی این پورت Superior BPDU دریافت کرد (BPDU با Bridge-ID بهتر) آن را نپذیرد. برای جلوگیری از حملات STP که Attacker خود را به عنوان Root Bridge تعیین نکند.
BPDU Guard: یعنی روی این پورت BPDU Guard فعال باشد یا خیر. اگر فعال باشد یعنی اگر بر روی این پورت BPDU دریافت کرد پورت را غیر فعال کرده و در حالت Err-Disable قرار میدهد.
نکته: BPDU Guard را بر روی پورتهای متصل به End User و روترها فعال کنید.
BPDU Handling: یعنی اگر بر روی پورت STP غیر فعال بود، سوئیچ در مقابل دریافت BPDU بر روی این پورت چه کار کند.
Use Global Settings: یعنی پیروی شود از تنظیماتی که در قسمت STP Status and Global Settings انجام شده است.
Filtering: یعنی بسته ها را دور بریزد.
Flooding: یعنی بسته ها را Flood کند بر روی تمامی پورتهای خود.
Path Cost: یعنی مقدار Cost بر روی پورت چگونه باشد.
Use Default: یعنی بر اساس Speed پورت مقدار آن تعیین شود
User Defined: یعنی به صورت دستی مشخص کنیم.
Priority: مقدار Port Priority را مشخص می کنید و مقدار پیشفرض آن ۱۲۸ است (ضریب ۱۶ می باشد)
Port State: نشان می دهد پورت در چه وضعیتی می باشد و چون Gig 1 نقش Root Port دارد پس Forwarding است.
Designated Bridge ID: مقادار Bridge-ID سوئیچ ریشه می باشد.
در قسمت Speed سرعت پورت مشخص شده است و در قسمت LAG نشان می دهد پورت عضو کدام LAG است.
برای Gig 3 که Alternate است داریم:
و برای Gig 4 که Designated است داریم: