در یک شبکه، سوئیچ سیسکو برای ارسال فریمهای Ethernet باید بداند هر دستگاه از طریق کدام پورت به شبکه متصل شده است. سوئیچ این اطلاعات را در جدولی به نام MAC Address Table ذخیره میکند. اما تمام آدرسهای MAC موجود در این جدول به یک شکل ایجاد نمیشوند. بعضی از آنها بهصورت خودکار توسط سوئیچ یاد گرفته میشوند که به آنها Dynamic MAC گفته میشود و برخی دیگر توسط مدیر شبکه بهصورت دستی تعریف میشوند که Static MAC نام دارند.
شناخت تفاوت Static MAC و Dynamic MAC در سوئیچ سیسکو برای مدیریت شبکه، عیبیابی مشکلات ارتباطی و افزایش کنترل روی پورتهای سوئیچ اهمیت زیادی دارد. در این مقاله بررسی میکنیم Static و Dynamic MAC دقیقاً چه هستند، چگونه ایجاد میشوند، چه تفاوتی با یکدیگر دارند و در چه شرایطی استفاده از هرکدام منطقیتر است.
هر کارت شبکه یا Interface در شبکه معمولاً یک آدرس سختافزاری منحصربهفرد به نام MAC Address دارد. این آدرس در لایه دوم مدل OSI استفاده میشود و معمولاً به شکل 48 بیتی نمایش داده میشود؛ برای مثال:
00:1A:2B:3C:4D:5E
وقتی یک دستگاه مانند کامپیوتر، سرور، Access Point یا IP Phone به یکی از پورتهای سوئیچ سیسکو متصل میشود و فریمی را ارسال میکند، سوئیچ MAC Address مبدأ را بررسی کرده و متوجه میشود این دستگاه از طریق کدام پورت قابل دسترسی است. برای مثال ممکن است جدول سوئیچ به شکل زیر باشد:
| MAC Address | Port | Type |
|---|---|---|
| 001A.2B3C.4D5E | Gi1/0/1 | Dynamic |
| 0050.56AA.BBCC | Gi1/0/2 | Dynamic |
| 00AA.BBCC.DDEE | Gi1/0/10 | Static |
ستون Type نشان میدهد این MAC Address چگونه وارد جدول شده است.
Dynamic MAC Address آدرسی است که سوئیچ سیسکو بهصورت خودکار آن را از طریق فرآیند MAC Learning یاد میگیرد. فرض کنید یک کامپیوتر به پورت Gi1/0/1 متصل است و MAC Address آن 001A.2B3C.4D5E است. وقتی کامپیوتر یک فریم ارسال میکند، سوئیچ MAC مبدأ را مشاهده کرده و اطلاعات زیر را در MAC Address Table ثبت میکند:
001A.2B3C.4D5E → Gi1/0/1
از این لحظه، سوئیچ میداند برای ارسال فریم به این MAC Address باید از پورت Gi1/0/1 استفاده کند. این فرآیند بهصورت خودکار انجام میشود و نیازی نیست مدیر شبکه MAC Address تمام دستگاهها را دستی وارد کند.
یکی از ویژگیهای مهم Dynamic MAC این است که Aging دارد. یعنی اگر سوئیچ برای مدت مشخصی فریمی از یک MAC Address دریافت نکند، آن Entry پس از پایان Aging Time از جدول حذف میشود. این رفتار باعث میشود اگر یک دستگاه از شبکه جدا شود یا به پورت دیگری منتقل شود، جدول MAC بهمرور بهروزرسانی شود. در بسیاری از پیکربندیهای Cisco، Aging Time پیشفرض MAC Address برابر 300 ثانیه است، هرچند این مقدار میتواند توسط مدیر شبکه تغییر کند. برای مشاهده MAC Address Table میتوان از دستور زیر استفاده کرد:
show mac address-table
و برای مشاهده MACهای Dynamic:
show mac address-table dynamic
Static MAC Address برخلاف Dynamic MAC بهصورت دستی توسط مدیر شبکه روی سوئیچ تعریف میشود. در این حالت شما به سوئیچ میگویید یک MAC Address مشخص باید از یک پورت مشخص قابل دسترسی باشد. برای مثال:
mac address-table static 001A.2B3C.4D5E vlan 10 interface gigabitEthernet 1/0/1
با این تنظیم، سوئیچ MAC Address مشخصشده را به VLAN 10 و پورت Gi1/0/1 نسبت میدهد. Static MAC معمولاً Aging نمیشود و تا زمانی که Entry حذف یا پیکربندی تغییر داده نشود، در جدول باقی میماند. برای مشاهده Static MACها میتوان از دستور زیر استفاده کرد:
show mac address-table static
مهمترین تفاوت این دو در نحوه ایجاد و مدیریت MAC Address Table Entry است.
| ویژگی | Dynamic MAC | Static MAC |
|---|---|---|
| نحوه ایجاد | خودکار | دستی |
| نیاز به Configuration | ندارد | دارد |
| Aging | معمولاً دارد | معمولاً ندارد |
| تغییر پورت | بهصورت خودکار قابل یادگیری است | باید دستی تغییر کند |
| مدیریت | سادهتر | نیازمند مدیریت بیشتر |
| کاربرد اصلی | شبکههای عادی و عمومی | کنترل و سناریوهای خاص |
| انعطافپذیری | بالا | پایینتر |
| کنترل مدیر شبکه | کمتر | بیشتر |
بنابراین Dynamic MAC برای اکثر ارتباطات عادی شبکه مناسب است، در حالی که Static MAC زمانی استفاده میشود که بخواهیم ارتباط یک MAC Address با یک پورت مشخص را بهصورت دستی کنترل کنیم.
اینجا یک نکته مهم وجود دارد: Static MAC بهتنهایی یک راهکار کامل برای امنیت پورت سوئیچ نیست. ممکن است تصور شود اگر MAC Address یک دستگاه را بهصورت Static تعریف کنیم، دیگر دستگاه دیگری نمیتواند از آن پورت استفاده کند. اما برای کنترل دسترسی به پورت، قابلیتهایی مانند Port Security معمولاً انتخاب مناسبتری هستند. Port Security میتواند مشخص کند چه MAC Addressهایی اجازه استفاده از یک پورت را دارند و در صورت مشاهده MAC غیرمجاز چه اتفاقی بیفتد.
برای مثال:
switchport port-security
بنابراین اگر هدف اصلی شما محدود کردن دستگاههای مجاز روی پورت است، بهتر است Static MAC و Port Security را با یکدیگر اشتباه نگیرید.

Static MAC در شبکههای معمولی کمتر از Dynamic MAC استفاده میشود، اما در بعضی سناریوها میتواند مفید باشد.
اگر لازم باشد یک MAC Address همیشه از یک Interface مشخص قابل دسترسی باشد، میتوان Static MAC تعریف کرد.
در طراحیهای خاص Layer 2 ممکن است مدیر شبکه بخواهد رفتار MAC Address Table را کنترل کند و اجازه ندهد یک Entry بهصورت خودکار Aging شود.
اگر یک MAC Address نباید بهصورت عادی از جدول حذف شود، Static MAC میتواند این نیاز را برطرف کند.
با این حال، استفاده بیش از حد از Static MAC باعث افزایش پیچیدگی Configuration میشود.
در بیشتر شبکههای سازمانی، Dynamic MAC انتخاب طبیعی و استاندارد است. برای مثال در یک شبکه که دهها یا صدها کامپیوتر، سرور، پرینتر، Access Point و IP Phone دارد، تعریف دستی MAC Address برای تمام تجهیزات کار بسیار زمانبری خواهد بود. Dynamic MAC باعث میشود سوئیچ بهصورت خودکار وضعیت شبکه را یاد بگیرد. اگر یک کامپیوتر از پورت Gi1/0/5 جدا شود و به Gi1/0/10 منتقل شود، سوئیچ میتواند پس از دریافت ترافیک جدید، MAC Address آن را روی پورت جدید یاد بگیرد. این موضوع مدیریت شبکه را بسیار سادهتر میکند.
یکی از دستورات مهم برای عیبیابی:
show mac address-table
اگر دنبال یک MAC Address خاص هستید:
show mac address-table address 001A.2B3C.4D5E
همچنین برای بررسی MACهای یک VLAN مشخص میتوانید از:
show mac address-table vlan 10
استفاده کنید. این دستورات در زمان عیبیابی مشکلاتی مانند عدم دسترسی دستگاه به شبکه، جابهجایی تجهیزات بین پورتها یا مشکلات Layer 2 بسیار کاربردی هستند.
یکی از مشکلات رایج در شبکههای Switched، مشاهده یک MAC Address روی پورتی غیر از پورتی است که انتظار دارید. مثلاً فرض کنید سرور باید به Gi1/0/10 متصل باشد، اما MAC آن روی Gi1/0/15 دیده میشود. این وضعیت میتواند دلایل مختلفی داشته باشد؛ از جمله:
در چنین شرایطی، بررسی MAC Address Table یکی از اولین مراحل عیبیابی است.
این دو مفهوم گاهی با یکدیگر اشتباه گرفته میشوند، اما عملکرد یکسانی ندارند. Static MAC به سوئیچ میگوید یک MAC Address مشخص را روی یک VLAN و Interface مشخص در نظر بگیرد. اما Port Security برای کنترل MAC Addressهایی است که اجازه دارند از یک پورت استفاده کنند. به زبان ساده:
Static MAC = تعیین دستی محل یک MAC در جدول
Port Security = کنترل اینکه چه MACهایی اجازه استفاده از پورت را دارند
بنابراین اگر هدف شما افزایش امنیت Access Port است، Port Security معمولاً راهکار مناسبتری خواهد بود.
در زمان عیبیابی ممکن است بخواهید Dynamic MAC Addressهای یادگرفتهشده را پاک کنید. برای این کار میتوان از دستور زیر استفاده کرد:
clear mac address-table dynamic
پس از پاک شدن جدول Dynamic، سوئیچ با دریافت فریمهای جدید دوباره MAC Addressها را یاد میگیرد. این کار میتواند در شرایطی که جدول MAC اطلاعات قدیمی یا غیرمنتظره دارد، برای Troubleshooting مفید باشد.
هیچکدام را نمیتوان بهصورت مطلق «بهتر» دانست. انتخاب به نیاز شبکه بستگی دارد. اگر یک شبکه معمولی با تعداد زیادی کلاینت، سرور و تجهیزات شبکه دارید، Dynamic MAC معمولاً انتخاب مناسبتری است؛ چون سوئیچ خودش MAC Addressها را یاد میگیرد و جدول را مدیریت میکند. اما اگر برای یک MAC Address خاص به کنترل دستی و رفتار ثابت نیاز دارید، Static MAC میتواند گزینه مناسبی باشد. در شبکههای بزرگ نیز معمولاً بهتر است از Static MAC فقط در جاهایی استفاده شود که واقعاً به آن نیاز است؛ زیرا تعریف دستی تعداد زیادی MAC Address، مدیریت و عیبیابی شبکه را پیچیدهتر میکند.
تفاوت اصلی Static MAC و Dynamic MAC در سوئیچ سیسکو به نحوه ایجاد و مدیریت Entryهای MAC Address Table برمیگردد. Dynamic MAC بهصورت خودکار توسط سوئیچ و با مشاهده فریمهای شبکه یاد گرفته میشود و معمولاً پس از مدتی عدم فعالیت Aging میشود. در مقابل، Static MAC توسط مدیر شبکه تعریف میشود و برای سناریوهایی مناسب است که نیاز به کنترل ثابت و دستی یک MAC Address وجود دارد. برای بیشتر شبکههای عادی، Dynamic MAC بخش اصلی عملکرد طبیعی سوئیچ است.
در مقابل، Static MAC یک قابلیت مدیریتی برای شرایط خاص محسوب میشود. همچنین اگر هدف اصلی شما کنترل دسترسی دستگاهها به پورتهای سوئیچ است، بهتر است بهجای تکیه بر Static MAC، قابلیتهایی مانند Port Security را نیز در نظر بگیرید. شناخت درست MAC Address Table، Dynamic MAC، Static MAC و Port Security به مدیر شبکه کمک میکند مشکلات Layer 2 را سریعتر تشخیص دهد و Configuration سوئیچهای Cisco را دقیقتر مدیریت کند.