مقالات

MAC Address در شبکه چیست؟

در دنیای شبکه‌های کامپیوتری، هر دستگاه برای ارتباط با دیگر دستگاه‌ها نیاز به شناسه‌ای منحصر به فرد دارد. این شناسه می‌تواند در لایه‌های مختلف شبکه ظاهر شود و بسته به نوع لایه، اسم و ساختار متفاوتی دارد. یکی از این شناسه‌های مهم و کلیدی که در لایه دوم مدل OSI (لایه Data Link) کاربرد دارد، MAC Address یا Media Access Control Address است.

MAC Address نقش «هویت سخت‌افزاری» یک کارت شبکه (Network Interface Card – NIC) را ایفا می‌کند و معمولاً به صورت عددی ثابت و در قالبی استاندارد تعریف می‌شود. این شناسه، در ارتباطات محلی (Local Area Network – LAN) بسیار مهم و حیاتی است.


ساختار کلی MAC Address

MAC Address یک رشته 48 بیتی (6 بایت) است که به صورت شش گروه 2 رقمی هگزادسیمال نوشته می‌شود. مثلاً نمونه‌ای از MAC Address:

mathematica
00:1A:2B:3C:4D:5E

یا به صورت خط تیره:

mathematica
00-1A-2B-3C-4D-5E

جزئیات ساختار

  • 48 بیت = 6 بایت

  • هر بایت با 2 رقم هگزادسیمال نشان داده می‌شود (مثلاً 00 تا FF)

  • معمولاً به صورت 6 گروه 2 رقمی نمایش داده می‌شود

اجزای MAC Address

MAC Address به دو بخش تقسیم می‌شود:

  1. قسمت اول 3 بایت (24 بیت) — Organizationally Unique Identifier (OUI)
    این بخش توسط سازمان IEEE به تولیدکنندگان کارت‌های شبکه اختصاص داده می‌شود و نشان می‌دهد تولیدکننده کارت شبکه چه شرکتی است.
    مثلاً OUI 00:1A:2B مربوط به شرکت خاصی است.

  2. قسمت دوم 3 بایت (24 بیت) — NIC Specific
    این بخش توسط خود تولیدکننده برای هر کارت به صورت منحصر به فرد تعیین می‌شود.


کاربرد MAC Address در شبکه

شناسایی سخت‌افزاری

MAC Address به عنوان یک شناسه منحصر به فرد و ثابت برای کارت شبکه است. این یعنی:

  • هر کارت شبکه در دنیا یک MAC Address منحصر به فرد دارد.

  • حتی اگر دستگاهی چند کارت شبکه داشته باشد (مثلاً کارت وای‌فای و کارت اترنت)، هرکدام MAC متفاوتی دارند.

نقش در لایه Data Link (لایه دوم)

در مدل OSI، هر لایه نقش مشخصی دارد. MAC Address در لایه Data Link کاربرد دارد.
مثلاً:

  • در شبکه‌های محلی (LAN) که از پروتکل‌هایی مثل Ethernet استفاده می‌کنند، داده‌ها بین دستگاه‌ها با استفاده از MAC Address ارسال می‌شوند.

  • زمانی که یک کامپیوتر در LAN بخواهد داده‌ای به کامپیوتر دیگر بفرستد، آدرس مقصد را به صورت MAC Address تعیین می‌کند.

تفاوت با IP Address

  • IP Address در لایه شبکه (لایه 3) است و معمولاً منطقی و قابل تغییر است. به کمک آن مسیر یابی (Routing) انجام می‌شود.

  • MAC Address در لایه 2 است و سخت‌افزاری و ثابت است و معمولاً تغییر نمی‌کند (اگرچه امکان تغییر نرم‌افزاری آن وجود دارد که به آن Spoofing می‌گویند).

نقش در پروتکل ARP

  • برای ارسال داده‌ها در شبکه‌های محلی، باید IP Address مقصد به MAC Address مقصد ترجمه شود. این کار توسط پروتکل ARP (Address Resolution Protocol) انجام می‌شود.

  • به عنوان مثال، اگر بخواهید به IP 192.168.1.10 داده بفرستید، ابتدا باید MAC Address مربوط به آن IP را پیدا کنید تا داده به مقصد برسد.


روش کارکرد MAC Address در انتقال داده‌ها

فرض کنید کامپیوتر A می‌خواهد داده‌ای به کامپیوتر B در همان شبکه محلی بفرستد:

  1. کامپیوتر A ابتدا IP مقصد را می‌داند.

  2. سپس با ارسال درخواست ARP، MAC Address دستگاهی که آن IP را دارد را پیدا می‌کند.

  3. بعد از دریافت MAC مقصد، داده‌ها با آدرس MAC مقصد بسته‌بندی شده و در شبکه ارسال می‌شوند.

  4. سوییچ‌ها (Switches) در شبکه نیز داده‌ها را با استفاده از MAC Address مدیریت می‌کنند.


انواع MAC Address

1. Unicast MAC Address

  • این نوع MAC Address به یک دستگاه خاص اشاره می‌کند.

  • بسته‌هایی که به این آدرس فرستاده می‌شوند، فقط توسط همان دستگاه دریافت و پردازش می‌شوند.

2. Broadcast MAC Address

  • یک MAC Address خاص است که به تمام دستگاه‌های یک شبکه ارسال می‌شود.

  • مقدار آن در Ethernet: FF:FF:FF:FF:FF:FF است.

  • زمانی استفاده می‌شود که می‌خواهیم داده به تمام دستگاه‌ها ارسال شود، مثل ارسال درخواست ARP.

3. Multicast MAC Address

  • این نوع MAC برای گروهی از دستگاه‌ها ارسال می‌شود که عضو یک گروه Multicast خاص هستند.

  • این آدرس‌ها با بیت اول 1 شروع می‌شوند و معمولاً برای انتقال داده‌های چند گیرنده استفاده می‌شوند.


چگونگی اختصاص MAC Address

  • MAC Address به صورت سخت‌افزاری در کارت شبکه توسط تولیدکننده ثبت می‌شود.

  • این شناسه معمولاً در حافظه ROM یا EEPROM کارت شبکه ذخیره می‌شود.

  • استاندارد IEEE آن را تعریف و مدیریت می‌کند.


MAC Address و امنیت شبکه

1. MAC Spoofing

  • در برخی موارد، فردی با تغییر MAC Address دستگاه خود (که به آن Spoofing گفته می‌شود) تلاش می‌کند به شبکه‌ای نفوذ کند یا از محدودیت‌ها عبور کند.

  • برخی نرم‌افزارها و ابزارهای سیستم‌عامل امکان تغییر MAC را می‌دهند.

2. فیلتر کردن MAC Address

  • در برخی شبکه‌ها برای افزایش امنیت، فقط MAC Addressهای خاصی اجازه دسترسی به شبکه را دارند.

  • این کار به نام MAC Filtering شناخته می‌شود.

  • البته باید توجه داشت که به دلیل امکان تغییر MAC، این روش به تنهایی امنیت بالایی ندارد.


مشاهده و یافتن MAC Address

در ویندوز

  • با دستور زیر در Command Prompt:

bash
ipconfig /all
  • یا دستور زیر در PowerShell:

sql
Get-NetAdapter
  • MAC Address به نام Physical Address یا آدرس فیزیکی نمایش داده می‌شود.

در لینوکس و مک

  • دستور:

css
ifconfig -a

یا

bash
ip link show

نقش MAC Address در دستگاه‌های مختلف

1. کارت شبکه Ethernet

  • MAC Address روی کارت اترنت وجود دارد و بسته‌های اترنت از این آدرس برای ارتباط استفاده می‌کنند.

2. کارت وای‌فای (Wi-Fi)

  • کارت وای‌فای هم MAC Address مخصوص به خود را دارد.

3. دستگاه‌های موبایل، پرینتر، دوربین‌های شبکه و سایر تجهیزات

  • همه دستگاه‌هایی که قابلیت اتصال به شبکه دارند، معمولاً دارای MAC Address هستند.


ارتباط MAC Address با پروتکل‌ها و تجهیزات شبکه

1. سوئیچ‌ها (Switch)

  • سوئیچ‌ها از MAC Address برای هدایت بسته‌ها در شبکه استفاده می‌کنند.

  • سوئیچ‌ها جدول MAC دارند که در آن MAC Address دستگاه‌های متصل به هر پورت ثبت می‌شود.

  • سوئیچ بسته‌های دریافتی را بر اساس MAC مقصد به پورت صحیح ارسال می‌کند.

2. روترها (Router)

  • روترها در لایه شبکه کار می‌کنند و بسته‌ها را بر اساس IP هدایت می‌کنند.

  • اما هنگام ارسال داده‌ها در شبکه محلی، از MAC Address استفاده می‌شود.

3. پروتکل ARP

  • پروتکلی است که ارتباط بین IP و MAC را برقرار می‌کند.


MAC Address در دنیای IPv6

  • IPv6 هم از MAC Address در مکانیزمی به نام EUI-64 برای تولید خودکار آدرس‌های IPv6 استفاده می‌کند.

  • با استفاده از MAC Address، بخشی از آدرس IPv6 ساخته می‌شود که به آن آدرس لینک-لوکال (Link-local) گفته می‌شود.


مشکلات و چالش‌های MAC Address

1. محدودیت 48 بیت

  • 48 بیت برای آدرس‌دهی 2^48 یعنی حدود 281 تریلیون آدرس ممکن دارد که در گذشته کافی به نظر می‌رسید اما با رشد شدید دستگاه‌ها در شبکه‌ها این مقدار محدود به نظر می‌رسد.

2. تغییر MAC Address (Spoofing)

  • تغییر MAC به منظور فریب سیستم‌های امنیتی مشکل‌ساز است.

3. MAC Address های تکراری

  • ممکن است در برخی شرایط، دو دستگاه MAC Address مشابه داشته باشند که باعث مشکلات شبکه می‌شود.


فناوری‌ها و استانداردهای مرتبط

  • IEEE 802: سازمانی که استانداردهای شبکه را تعریف می‌کند.

  • IEEE 802.3: استاندارد Ethernet که در آن MAC Address کاربرد اصلی دارد.

  • IEEE Registration Authority: مسئول تخصیص OUI به تولیدکنندگان.


خلاصه و نتیجه‌گیری

  • MAC Address شناسه سخت‌افزاری، منحصر به فرد و 48 بیتی است که برای شناسایی کارت شبکه در لایه Data Link استفاده می‌شود.

  • در ارتباطات LAN نقش کلیدی دارد و انتقال داده‌ها را بر اساس این آدرس انجام می‌دهد.

  • ساختار آن شامل 24 بیت شناسه تولیدکننده و 24 بیت شناسه دستگاه است.

  • نقش مهمی در امنیت، مدیریت شبکه و پروتکل‌ها دارد.

  • قابلیت تغییر نرم‌افزاری دارد که می‌تواند امنیت را تحت تأثیر قرار دهد.

  • در بسیاری از فناوری‌های شبکه، از جمله Ethernet و Wi-Fi استفاده می‌شود.