لیست‌های کنترل دسترسی: فیلترکردن ترافیک روی روترهای سیسکو

لیست‌های کنترل دسترسی به یک روتر یا سوئیچ اجازه می‌دهند به‌طور انتخابی ترافیک را بر اساس اطلاعات منبع، مقصد، و پروتکل مجاز یا مسدود کنند، و پایه امنیت پایه شبکه و فیلترینگ ترافیک را تشکیل می‌دهند. این مقاله توضیح می‌دهد ACL ها چگونه ترافیک را به‌ترتیب پردازش می‌کنند، تفاوت بین ACL های استاندارد و توسعه‌یافته را پوشش می‌دهد، محاسبه ماسک wildcard را مرور می‌کند، و قوانین حیاتی مکان‌گذاری که تعیین می‌کنند آیا یک ACL همان‌طور که مورد نظر بود کار می‌کند را توضیح می‌دهد.

لیست کنترل دسترسیماسک Wildcardمکان‌گذاری ACL

~7 min read · Updated Sep 9, 2026

یک لیست کنترل دسترسی واقعاً چه کاری انجام می‌دهد

یک Access Control List (ACL) یک لیست مرتب از قوانین است که یک روتر یا سوئیچ در برابر ترافیکی که از میان آن عبور می‌کند ارزیابی می‌کند، و ترافیک را بر اساس معیارهایی مانند آدرس منبع، آدرس مقصد، پروتکل، یا شماره پورت مجاز یا رد می‌کند. ACL ها دو هدف اصلی خدمت می‌کنند: امنیت پایه ترافیک (مسدودکردن ترافیک ناخواسته) و شناسایی ترافیک برای سایر ویژگی‌ها، مانند شناسایی اینکه کدام ترافیک باید مدیریت خاصی در سیاست‌های QoS یا NAT که بعداً در این مجموعه پوشش داده می‌شوند دریافت کند.

ACL ها چگونه ترافیک را پردازش می‌کنند: بالا-به-پایین، اولین تطبیق برنده است

هر ACL قوانینش، به نام Access Control Entries (ACEs)، را دقیقاً به ترتیبی که پیکربندی شده‌اند، از بالا به پایین، ارزیابی می‌کند، و به‌محض یافتن اولین ورودی منطبق متوقف می‌شود — باقی لیست هرگز برای آن بسته خاص مشورت نمی‌شود.

مثال ترتیب پردازش ACL:
access-list 10 permit 192.168.1.10
access-list 10 deny 192.168.1.0 0.0.0.255
access-list 10 permit any

یک بسته از 192.168.1.10 با خط ۱ تطبیق دارد و
مجاز است — خطوط ۲ و ۳ حتی برای این بسته خاص
هرگز بررسی نمی‌شوند

یک بسته از 192.168.1.50 با خط ۱ تطبیق ندارد،
با خط ۲ تطبیق دارد (deny)، و دور ریخته می‌شود —
خط ۳ برای این بسته هرگز بررسی نمی‌شود

این رفتار بالا-به-پایین و اولین-تطبیق توضیح می‌دهد چرا ترتیب ACE حیاتی است: قراردادن یک عبارت deny گسترده پیش از یک عبارت permit خاص‌تر که باید ابتدا تطبیق پیدا می‌کرد، بی‌سروصدا ترافیکی که واقعاً قصد اجازه‌دادنش وجود داشت را مسدود می‌کند.

Deny ضمنی: یک قانون مخفی حیاتی

هر ACL با یک Implicit Deny (deny ضمنی) نامرئی و غیرقابل‌پیکربندی پایان می‌یابد — اگر یک بسته با هیچ خط صراحتاً پیکربندی‌شده‌ای تطبیق نداشته باشد، به‌طور پیش‌فرض دور ریخته می‌شود.

access-list 10 permit 192.168.1.0 0.0.0.255
-- (deny any ضمنی، در پیکربندی دیده نمی‌شود،
--  اما همیشه حاضر است)

یک بسته از 10.0.0.5 با تنها خط پیکربندی‌شده
تطبیق ندارد و بی‌سروصدا دور ریخته می‌شود، به‌دلیل
deny ضمنی در انتهای هر ACL

این deny ضمنی یکی از رایج‌ترین منابع از‌دست‌دادن اتصال غیرمنتظره پس از اعمال یک ACL جدید است — یک مدیر که قصد دارد فقط یک نوع ترافیک خاص را مسدود کند باید صراحتاً هر چیز دیگری را مجاز کند، چون هر چیزی که صراحتاً مجاز نشده به‌طور پیش‌فرض دور ریخته می‌شود.

ACL های استاندارد: فیلتر فقط بر اساس آدرس منبع

یک Standard ACL (ACL استاندارد) فقط می‌تواند بر اساس آدرس IP منبع فیلتر کند، که آن را ساده اما محدود در دقت می‌کند.

Router(config)# access-list 10 permit 192.168.1.0 0.0.0.255
Router(config)# access-list 10 deny any

Router(config)# interface gigabitethernet 0/1
Router(config-if)# ip access-group 10 out

ACL های استاندارد از 1 تا 99 شماره‌گذاری می‌شوند (و 1300-1999 برای یک بازه گسترش‌یافته) و، چون فقط می‌توانند روی آدرس منبع تطبیق داشته باشند، باید تا حد ممکن نزدیک به مقصد اعمال شوند — اعمال یکی خیلی نزدیک به منبع ریسک مسدودکردن ناخواسته ترافیکی که واقعاً مقصدش جای دیگری بود را دارد.

درک ماسک Wildcard

ACL ها از یک Wildcard Mask (ماسک wildcard) به‌جای یک ماسک زیرشبکه استاندارد استفاده می‌کنند تا مشخص کنند کدام بیت‌های آدرس باید دقیقاً تطبیق داشته باشند و کدام می‌توانند هر چیزی باشند — از نظر مفهومی عکس یک ماسک زیرشبکه.

ماسک زیرشبکه 255.255.255.0 یعنی: دقیقاً تطبیق کن
ماسک wildcard 0.0.0.255 یعنی: بازه معادل،
  اما به‌صورت بیت‌های "اهمیت‌نداشتن" بیان‌شده

تبدیل یک ماسک زیرشبکه به ماسک wildcard:
255.255.255.0  → هر octet را از 255 کم کن
0.0.0.255      → ماسک wildcard

wildcard برای تطبیق یک هاست تکی:
0.0.0.0  (هر بیت باید دقیقاً تطبیق داشته باشد)

wildcard برای تطبیق با هر آدرسی به‌طور مطلق:
255.255.255.255  (هر بیت "اهمیت‌ندارد")
-- معمولاً با کلیدواژه "any" کوتاه می‌شود

یک بیت 0 در ماسک wildcard یعنی آن موقعیت بیت باید دقیقاً تطبیق داشته باشد، در حالی که یک بیت 1 یعنی آن موقعیت می‌تواند هر چیزی باشد — این منطق معکوس در مقایسه با یک ماسک زیرشبکه منبع رایجی از سردرگمی برای کسانی است که اولین‌بار ACL ها را یاد می‌گیرند.

ACL های توسعه‌یافته: فیلتر بر اساس منبع، مقصد، پروتکل، و پورت

یک Extended ACL (ACL توسعه‌یافته) می‌تواند روی آدرس منبع، آدرس مقصد، پروتکل (TCP، UDP، ICMP)، و شماره پورت تطبیق داشته باشد، که فیلترینگ بسیار دقیق‌تری را امکان‌پذیر می‌کند.

Router(config)# access-list 100 permit tcp 192.168.1.0 0.0.0.255 any eq 80
Router(config)# access-list 100 permit tcp 192.168.1.0 0.0.0.255 any eq 443
Router(config)# access-list 100 deny ip any any

Router(config)# interface gigabitethernet 0/0
Router(config-if)# ip access-group 100 in

این ACL توسعه‌یافته فقط ترافیک HTTP (پورت 80) و HTTPS (پورت 443) از شبکه 192.168.1.0/24 به هر مقصدی را مجاز می‌کند، و هر چیز دیگری را رد می‌کند — نوعی کنترل دقیق که با یک ACL استاندارد غیرممکن است. ACL های توسعه‌یافته، شماره‌گذاری‌شده از 100 تا 199 (و 2000-2699 برای بازه گسترش‌یافته)، باید تا حد ممکن نزدیک به منبع اعمال شوند، چون از قبل می‌توانند روی مقصد خاص تطبیق داشته باشند و ریسک فیلترکردن ناخواسته ترافیک نامرتبط را که یک ACL استاندارد اعمال‌شده زودهنگام می‌تواند داشته باشد ندارند.

ACL های نام‌دار: یک جایگزین قابل‌مدیریت‌تر

Router(config)# ip access-list extended WEB-TRAFFIC
Router(config-ext-nacl)# permit tcp 192.168.1.0 0.0.0.255 any eq 80
Router(config-ext-nacl)# permit tcp 192.168.1.0 0.0.0.255 any eq 443
Router(config-ext-nacl)# deny ip any any

-- ACL های نام‌دار همچنین اجازه می‌دهند ورودی‌های
-- منفرد بدون بازساخت کل لیست حذف یا در یک شماره
-- توالی خاص درج شوند

ACL های نام‌دار معمولاً در پیکربندی‌های مدرن نسبت به ACL های شماره‌دار ترجیح داده می‌شوند، چون نام توصیفی هدف ACL را بلافاصله روشن می‌کند، و ورودی‌های منفرد می‌توانند بدون حذف و بازسازی کل لیست ویرایش شوند — یک مزیت عملی قابل‌توجه نسبت به نحو ACL شماره‌دار، که نیازمند حذف و افزودن دوباره کل لیست برای حتی یک تغییر کوچک است.

تأیید پیکربندی ACL و برخوردها

Router# show access-lists

Extended IP access list WEB-TRAFFIC
    10 permit tcp 192.168.1.0 0.0.0.255 any eq 80 (245 matches)
    20 permit tcp 192.168.1.0 0.0.0.255 any eq 443 (1502 matches)
    30 deny ip any any (18 matches)

شمارنده‌های تطبیق نشان‌داده‌شده در show access-lists برای عیب‌یابی ارزشمند هستند — تأیید اینکه یک قانون خاص واقعاً برخورد می‌شود (یا به‌طور غیرمنتظره برخورد نمی‌شود) اغلب سریع‌ترین راه برای تعیین اینکه آیا یک ACL همان‌طور که مورد نظر بود رفتار می‌کند، به‌ویژه وقتی ترافیک به‌طور غیرمنتظره مسدود یا به‌طور غیرمنتظره اجازه‌داده‌شده باشد.

چرا تسلط بر ACL یک مهارت امنیتی اصلی است

لیست‌های کنترل دسترسی در سراسر تقریباً هر وظیفه شبکه‌ای مرتبط-با-امنیت ظاهر می‌شوند — محدودکردن دسترسی مدیریتی به دستگاه‌های شبکه، کنترل اینکه کدام ترافیک می‌تواند بین سگمنت‌های شبکه عبور کند، و شناسایی ترافیک برای سیاست‌های QoS یا NAT که بعداً در این مجموعه پوشش داده می‌شوند. درک ترتیب ارزیابی سخت‌گیرانه بالا-به-پایین، deny ضمنی، محاسبه درست ماسک wildcard، و مکان‌گذاری درست ACL نسبت به منبع و مقصد ترافیک برای پیاده‌سازی فیلترینگ مؤثر بدون مسدودکردن غیرعمدی ترافیک مشروع ضروری است.

Written & researched by Dr. Shahin Siami

Related Articles

اصول شبکه‌های بی‌سیم LAN: استانداردها، معماری، و پیکربندی پایه

شبکه‌سازی بی‌سیم یک محیط فیزیکی کاملاً متفاوت از اترنت کابلی که پیش‌تر در این مجموعه پوشش داده شد معرفی می‌کند، همراه با اصطلاحات، معماری، و ملاحظات امنیتی خودش. این مقاله تکامل استانداردهای بی‌سیم 802.11 را توضیح می‌دهد، معماری بی‌سیم متمرکز ساخته‌شده حول کنترل‌کننده‌های LAN بی‌سیم را پوشش می‌دهد، و پیکربندی یک شبکه بی‌سیم پایه با امنیت مناسب را مرور می‌کند.

Continue

اصول کیفیت سرویس: طبقه‌بندی و اولویت‌بندی ترافیک شبکه

همه ترافیک شبکه به‌یک‌اندازه به تأخیر حساس نیستند، و رفتار یکسان با یک تماس صوتی و یک دانلود فایل بزرگ در دوره‌های ازدحام تجربه ضعیفی برای هر دو تولید می‌کند. این مقاله توضیح می‌دهد چرا QoS اهمیت دارد، طبقه‌بندی و علامت‌گذاری ترافیک با استفاده از CoS و DSCP را پوشش می‌دهد، استراتژی‌های صف‌بندی که تعیین می‌کنند کدام ترافیک اول خدمت می‌گیرد را مرور می‌کند، و پیکربندی ضروری برای اعمال سیاست‌های QoS روی یک دستگاه سیسکو را پوشش می‌دهد.

Continue

کاهش حملات لایه ۲: DHCP Snooping و Dynamic ARP Inspection

مکانیزم‌های یادگیری-MAC و ARP که شبکه‌های اترنت را به کار می‌اندازند اساساً اعتمادی نیز هستند، و روزنه‌هایی برای حملاتی که ترافیک را بدون هرگز لمس یک فایروال هدایت‌مجدد یا رهگیری می‌کنند ایجاد می‌کنند. این مقاله توضیح می‌دهد یک سرور DHCP سرکش یا حمله ARP spoofing چگونه کار می‌کند، و DHCP Snooping و Dynamic ARP Inspection چگونه با هم کار می‌کنند تا این آسیب‌پذیری‌های لایه ۲ را ببندند را پوشش می‌دهد.

Continue

اصول امنیت شبکه: سخت‌سازی دستگاه و امنیت پورت

پیش از لایه‌گذاری ویژگی‌های امنیتی پیشرفته، هر دستگاه شبکه به سخت‌سازی پایه برای جلوگیری از دسترسی غیرمجاز و محافظت در برابر حملات رایج لایه ۲ نیاز دارد. این مقاله ایمن‌سازی دسترسی مدیریتی دستگاه با احراز هویت قوی، رمزگذاری رمزهای عبور ذخیره‌شده، و پیکربندی امنیت پورت برای محدودکردن اینکه کدام دستگاه‌ها می‌توانند به یک پورت سوئیچ متصل شوند را پوشش می‌دهد.

Continue

اصول IPv6: آدرس‌دهی برای نسل بعدی اینترنت

فضای آدرس محدود IPv4 یک پروتکل جانشین را اجتناب‌ناپذیر کرد، و IPv6 فضای آدرسی به‌قدری عظیم فراهم می‌کند که اتمام آدرس دیگر یک نگرانی عملی نیست. این مقاله ساختار یک آدرس IPv6، قوانین نمادگذاری کوتاه‌شده مورد استفاده برای نوشتن فشرده آن، انواع مختلف آدرس IPv6، و دستورات ضروری برای پیکربندی و تأیید IPv6 روی یک دستگاه سیسکو را توضیح می‌دهد.

Continue

اصول OSPF: توضیح مسیریابی Link-State

OSPF گسترده‌ترین پروتکل مسیریابی داخلی مستقر در شبکه‌های سازمانی است، که از رویکردی اساساً متفاوت از صرفاً تبادل جداول مسیریابی بین همسایه‌ها استفاده می‌کند. این مقاله توضیح می‌دهد یک پروتکل link-state واقعاً چیست، روترهای OSPF چگونه همسایه می‌شوند و یک پایگاه‌داده توپولوژی مشترک می‌سازند، معیار هزینه چگونه بهترین مسیر را تعیین می‌کند، و دستورات ضروری برای پیکربندی و تأیید OSPF تک‌ناحیه‌ای را توضیح می‌دهد.

Continue