مقایسه DHCP Snooping و IGMP Snooping
در شبکههای سازمانی (Enterprise Networks)، تأمین همزمان امنیت و کارایی شبکه یکی از چالشهای اصلی محسوب میشود.
با افزایش تعداد دستگاههای متصل مانند سوئیچهای شبکه، تلفنهای IP و تجهیزات IoT، مدیران IT باید هم از دسترسی غیرمجاز به شبکه جلوگیری کنند و هم ترافیک مولتیکست با حجم بالا را بهصورت بهینه مدیریت نمایند.
دو قابلیت کلیدی که در دستیابی به این اهداف نقش مهمی دارند، DHCP Snooping و IGMP Snooping هستند. اگرچه نام این دو قابلیت مشابه به نظر میرسد، اما کاربردها و وظایف کاملاً متفاوتی دارند.
در این مقاله مقایسه DHCP Snooping و IGMP Snooping بررسی میکنیم هر کدام چگونه کار میکنند و در چه سناریوهایی باید از آنها استفاده کرد.
DHCP Snooping چیست؟
یک قابلیت امنیتی پایه در لایه ۲ (Layer 2) سوئیچهای شبکه است که برای محافظت از فرآیند DHCP (پروتکل پیکربندی پویای میزبان) طراحی شده است.
DHCP نقش حیاتی در اختصاص خودکار آدرس IP به کلاینتها دارد، اما از آنجایی که این پروتکل ذاتاً مبتنی بر اعتماد است، میتواند شبکه را در معرض حملات قرار دهد.
مهمترین تهدید در این زمینه، حمله DHCP جعلی (Rogue DHCP Server) است؛ حالتی که در آن یک DHCP سرور غیرمجاز، اطلاعات نادرست مانند IP جعلی، Gateway اشتباه یا DNS نامعتبر به کلاینتها ارائه میدهد.
این موضوع میتواند منجر به حملات Man-in-the-Middle، اختلال در سرویس (DoS) یا هدایت ترافیک به مسیرهای مخرب شود.
DHCP Snooping مانند یک فایروال بین پورتهای غیرقابل اعتماد (Client Ports) و پورتهای قابل اعتماد زیرساخت شبکه عمل میکند.
این قابلیت با اعتبارسنجی پیامهای DHCP و مسدود کردن پیامهای غیرمجاز، تضمین میکند که کلاینتها تنها از DHCP سرورهای مورد تأیید مدیر شبکه آدرس IP دریافت کنند.
علاوه بر این، DHCP Snooping بهصورت پویا یک پایگاه داده Binding ایجاد و نگهداری میکند که شامل نگاشتهای IP، MAC، زمان اجاره (Lease Time) و پورت کلاینتهای معتبر است.
این دیتابیس، زیربنای قابلیتهای امنیتی پیشرفتهتری مانند IP Source Guard و Dynamic ARP Inspection (DAI) محسوب میشود.

چگونگی کارکرد DHCP Snooping
DHCP Snooping چگونه کار میکند؟
DHCP Snooping با دستهبندی پورتهای سوئیچ به دو نقش مشخص عمل میکند: Trusted (قابل اعتماد) و Untrusted (غیرقابل اعتماد).
پورتهای Trusted معمولاً به DHCP سرور معتبر یا هسته شبکه (Core Network) متصل هستند و اجازه عبور تمام پیامهای DHCP سرور مانند DHCPOFFER و DHCPACK را دارند.
در مقابل، تمام پورتهای دسترسی که به کاربران نهایی متصلاند، بهصورت پیشفرض Untrusted در نظر گرفته میشوند.
عملکرد DHCP Snooping شامل دو مرحله اصلی است:
1. مرحله یادگیری (DHCP Learning Phase)
زمانی که یک کلاینت معتبر پیام DHCPDISCOVER ارسال میکند، سوئیچ اجازه عبور آن را میدهد.
پس از دریافت پیام DHCPOFFER معتبر از یک پورت Trusted، سوئیچ این پیام را به کلاینت ارسال کرده و همزمان با تکمیل فرآیند DHCP، شروع به ثبت اطلاعات در DHCP Snooping Binding Database میکند.
2. مرحله اعمال سیاست (Enforcement Phase)
پس از ایجاد جدول Binding، سوئیچ بهطور مداوم پیامهای DHCP ورودی از پورتهای Untrusted را بررسی میکند.
هرگونه پیام مربوط به DHCP سرور (مانند DHCPOFFER یا DHCPACK) که از یک پورت غیرقابل اعتماد دریافت شود، بلافاصله Drop میشود.
به این ترتیب، هر DHCP سرور جعلی (Rogue DHCP Server) متصل به پورتهای کاربری عملاً خنثی خواهد شد.
در همین حال، جدول Binding ایجادشده بهعنوان یک مرجع تأییدشده از نگاشت IP، MAC، پورت و Lease Time عمل میکند.
این اطلاعات در کنار قابلیت IP Source Guard به سوئیچ اجازه میدهد بستههای IP که با این نگاشت مطابقت ندارند را مسدود کند. نتیجه این فرآیند، جلوگیری از جعل آدرس IP (IP Spoofing) و افزایش چشمگیر امنیت کلی شبکه است.
IGMP Snooping چیست؟
IGMP Snooping یک قابلیت بهینهسازی مهم در لایه ۲ سوئیچهای شبکه است که در شبکههایی با ترافیک Multicast استفاده میشود.
مولتیکست روشی کارآمد برای ارسال دادههایی مانند استریم ویدئو، IPTV یا بهروزرسانی نرمافزار از یک منبع به چندین گیرنده علاقهمند است.
اما در حالت پیشفرض، اگر سوئیچ از IGMP Snooping پشتیبانی نکند، ترافیک مولتیکست را مانند Broadcast به تمام پورتهای VLAN ارسال میکند.
این موضوع باعث مصرف بیهوده پهنای باند و افزایش بار پردازشی روی دستگاههایی میشود که اصلاً این دادهها را درخواست نکردهاند.
IGMP Snooping این مشکل را بهصورت هوشمند حل میکند.
این قابلیت با شنود (Snoop) پیامهای IGMP که بین میزبانها (گیرندهها) و روتر مولتیکست ردوبدل میشود، تشخیص میدهد:
- کدام دستگاهها
- روی کدام پورتها
- عضو چه گروه مولتیکستی هستند
سوئیچ سپس بر اساس این اطلاعات، یک نقشه دقیق ارسال ترافیک (Forwarding Table) ایجاد میکند و ترافیک مولتیکست را فقط به پورتهایی ارسال میکند که گیرنده واقعی دارند. این کار باعث:
- افزایش بهرهوری شبکه
- کاهش ترافیک غیرضروری
- بهبود عملکرد کلی شبکه
میشود.

چگونگی کارکرد IGMP Snooping
IGMP Snooping چگونه کار میکند؟
IGMP Snooping بهصورت یک فرآیند پویا و مداوم عمل میکند. زمانی که این قابلیت روی یک VLAN فعال میشود، سوئیچ شروع به بررسی (شنود) پیامهای IGMP عبوری از شبکه میکند.
فرآیند از جایی آغاز میشود که یک میزبان (Host) قصد دارد به یک گروه مولتیکست بپیوندد؛ برای مثال دریافت یک استریم ویدئویی.
در این حالت، میزبان یک پیام IGMP Membership Report ارسال میکند.
سوئیچ این پیام را دریافت کرده و اطلاعات آن را در جدول IGMP Snooping ثبت میکند؛ بهطوری که آدرس گروه مولتیکست به پورتی که پیام از آن دریافت شده، نگاشت میشود.
از این لحظه به بعد، هر زمان که ترافیک مولتیکست مربوط به آن گروه از طریق پورت uplink (متصل به روتر مولتیکست) وارد سوئیچ شود، دادهها فقط به پورتهایی ارسال میشوند که در جدول IGMP Snooping ثبت شدهاند و نه به تمام پورتهای VLAN.
این کار از پخش بیرویه ترافیک مولتیکست جلوگیری میکند.
IGMP Snooping همچنین پیامهای IGMP Leave را مدیریت میکند.
زمانی که یک میزبان پیام Leave ارسال میکند، سوئیچ بهصورت هوشمند یک IGMP Group-Specific Query به همان پورت میفرستد تا بررسی کند آیا دستگاه دیگری روی آن پورت هنوز عضو آن گروه هست یا خیر. اگر پاسخی دریافت نشود، آن پورت از لیست ارسال ترافیک
مولتیکست حذف میشود.
علاوه بر این، سوئیچ پیامهای دورهای IGMP General Query که از سمت روتر ارسال میشوند را نیز دریافت کرده و به تمام پورتهای میزبان فوروارد میکند.
اگر یک میزبان در پاسخ به این Query، پیام Membership Report ارسال نکند، ورودی مربوط به آن در جدول IGMP Snooping پس از مدتی منقضی (Aging Out) میشود. این مکانیسم باعث میشود وضعیت ارسال ترافیک همیشه دقیق و بهروز باقی بماند.
چه زمانی از DHCP Snooping و IGMP Snooping استفاده کنیم؟
استفاده از DHCP Snooping
DHCP Snooping برای افزایش امنیت لایه دسترسی شبکه بهکار میرود. فعالسازی این قابلیت در هر شبکهای که از DHCP استفاده میکند توصیه میشود، بهویژه در محیطهایی با تعداد زیاد دستگاههای غیرقابل اعتماد مانند:
- شبکههای سازمانی بزرگ
- دانشگاهها
- شبکههای Wi-Fi عمومی
DHCP Snooping با جلوگیری از حملات DHCP Server جعلی (Rogue DHCP Server) مانع جعل تنظیمات IP و حملات Man-in-the-Middle میشود.
استفاده از IGMP Snooping
IGMP Snooping برای بهینهسازی انتقال ترافیک مولتیکست استفاده میشود. این قابلیت باید در VLANهایی فعال شود که ترافیک مولتیکست دارند، مانند:
- ویدئو کنفرانس
- IPTV
- استریم زنده ویدئو
با فعالسازی IGMP Snooping، از Multicast Flooding جلوگیری شده و مصرف پهنای باند شبکه به شکل چشمگیری کاهش مییابد.
تفاوتهای اصلی DHCP Snooping و IGMP Snooping
با وجود اینکه هر دو قابلیت در لایه ۲ سوئیچهای شبکه پیادهسازی میشوند، اما DHCP Snooping و IGMP Snooping برای حل مشکلات کاملاً متفاوتی طراحی شدهاند.
جدول زیر تفاوتهای کلیدی این دو ویژگی مهم شبکه را بهصورت خلاصه و مقایسهای نشان میدهد:
| جنبه مقایسه | DHCP Snooping | IGMP Snooping |
|---|---|---|
| هدف اصلی | بهینهسازی و افزایش کارایی؛ جلوگیری از پخش بیرویه ترافیک مولتیکست | امنیت و یکپارچگی شبکه؛ جلوگیری از حملات و اطمینان از دریافت تنظیمات IPمعتبر |
| پروتکل بررسیشده | DHCP (پروتکل لایه کاربرد که روی UDP اجرا میشود) | IGMP (پروتکل لایه شبکه و بخشی از IP) |
| تهدید اصلی که برطرف میکند | DHCP Server جعلی، DHCP Starvation، جعل IP و MAC | Flood شدن ترافیک مولتیکست بدون کنترل |
| مکانیزم کلیدی | تعریف پورتهای Trusted و Untrusted و فیلتر پیامهای DHCP | شنود پیامهای IGMP و ساخت جدول پویا برای ارسال مولتیکست |
| ساختار داده ایجادشده | جدول Binding شامل IP، MAC، پورت و زمان اجاره (Lease) | جدول ارسال مولتیکست شامل آدرس گروه و لیست پورتها |
| محل استفاده معمول | فعالسازی روی تمام سوئیچهای Access برای افزایش امنیت کلی شبکه | فعالسازی در VLANها یا شبکههایی که ترافیک مولتیکست دارند |
جمعبندی کوتاه
- DHCP Snooping تمرکز بر امنیت شبکه و جلوگیری از حملات مبتنی بر DHCP دارد
- IGMP Snooping تمرکز بر بهینهسازی مصرف پهنای باند و کنترل ترافیک مولتیکست دارد