قوانین موجود در تعریفACL  ها

هر ACL باید با یک شماره یا یک نام منحصر به فرد شناسایی شود .شما قادر خواهید بود فقط یک ACLرا به یک اینترفیس assign کنید .یک ACL بر اساس شرایط و قوانین خاص ترافیک را فیلتر می‌کند که برخی از این پارامترها کهACL بر اساس آنها می‌تواند اقدام به بررسی ترافیک نماید به شرح زیر می باشد:

 

  1. بر اساسSource IP Address یا آدرس فرستنده
  2. بر اساس Destination IP Address یا آدرس مقصد یا گیرنده
  3. بر اساس شماره پورت خاص
  4. بر اساس پروتکل های UDP و TCP
  5. بر اساس یک سری از پروتکل های شبکه مانند ICMP,OSPF,EIGRP, IGMP و…

 

همانطور که اشاره شد ،یک ACL لیستی از دستورات میباشد که با یک شماره یا نام شناسایی می‌شود و این دستورات از بالا به پایین مورد بررسی قرار می گیرند ، پس به این نکته توجه داشته باشید که ترتیب نوشتن دستورات داخلACL بسیار مهم است و در پایان هر ACLیکDeny All وجود دارد که این عبارت Deny Allرا شما مشاهده نمی کنید ولی توسط خودIOS اضافه خواهد شد .پس در صورتی که ترافیک شما با هیچ کدام از قوانین داخلACL مطابقت نداشته باشد آن ترافیک Denyخواهد شد . یعنی اجازه عبور از آن Interface را نخواهد داشت . وقتی ترافیک قصد عبور از اینترفیسی را که یم ACL به آن نسبت داده شده است دارد ، باید آن ترافیک با دستورات داخل ACL مطابقت شود و خط به خط دستورات ACL بررسی شوند و در صورتی که ، اطلاعات با یکی از خطوط ACL مطابقت داشته باشد ، آن قانون اعمال خواهد شد و خطوط بعد از آن قانون دیگر بررسی نخواهند شد و در صورتی که هیچکدام از قوانین داخل ACL با ترافیک مطابقتی نداشته باشند ، پیام از بین خواهد رفت . از اینروست که ترتیب مشخص نمودن قانون های موجود در یک ACL بسیار مهم است .

برای مثال اگر دو قانون برای دسترسی به یک دستگاه ، که یکی اجازه عبور را داده و یکی نداده در جدول موجود باشند ، قانونی را که در اول نوشته شده باشد اجرا شده و از دیگری صرف نظر خواهد شد . برای همین هم در هنگام نوشتن قانون ها موارد اختصاصی تر را باید در اول نوشته و موارئ عمومی تر را در آخر لیست قرار دهیم . برای درک بهتر ، مثالی را مطرح میکنیم . فرض کنید که یک ACL دارای دو عدد قانون یا به اصطلاح statement در لیست خود میباشد . به ترتیب زیر :

 

1- اجازه دسترسی از شبکه  172.16.0.0,0/16

2- محدودیت دسترسی از دستگاه 172.16.1.1

 

 

با یادآوری این نکته که لیست ACL از بالا به پایین پردازش می شود، فرض می کنیم که یک روتر پیام را با آدرس فرستنده 172.16.1.1دریافت کرده است. روتر این آدرس را با اولین مورد موجود در لیست مقایسه می‌کند :آیا پیام رسیده از طرف شبکه172.16.1.1 می باشد ؟جواب مثبت است و بنابراین اجازه عبور به ترافیک رسیده داده نخواهد شد .اما به دلیل اینکه مورد اول با پیام رسیده مطابقت داشت، مورد دوم هیچ وقت پردازش نخواهد شد. در این مثال همه ترافیک هایی که مربوط به شبکه 172.16.0.16می باشند، اجازه عبور خواهند یافت، حتی آدرس 172.16.1.1/16.بیایید که ترتیب نوشتن دو قانون بالا را تغییر دهیم . بدین صورت:

 1- محدودیت دسترسی از دستگاه 172.16.1.1

2-  اجازه دسترسی از شبکه16/172.16.0.0

 

 اگر دستگاه172.16.1.1 ترافیکی را به روتر بفرستد روتر اولین مورد موجود در لیست ACL را با مشخصات پیام مقایسه کرده و از آنجایی که در همان اولین قدم تطابیق مورد نظر حاصل شد ،روتر قانون اول را در مورد پیام رسیده صرف نظر از اینکه چه نوع ترافیکی باشد از بین خواهد رفت. اگر دستگاه دیگری مثل 172.16.1.2اقدام به ارسال ترافیک برای روتر نماید ، روتر مشخصات پیام را با اولین مورد موجود در لیست ACL مقایسه کرده و به دلیل نیافتن مطابقت مورد نظر، مورد دوم پردازش خواهد شد که تطابق وجود داشته و اجازه دسترسی به ترافیک فوق داده می شود .از همین روست که گفته می شود ترتیب نوشتن هر یک از موارد لیست ACL بسیار مهم بوده و انتقال ترافیک شبکه را تحت تاثیر قرار خواهد داد. در تعریف ACL ها به جای استفاده از Subnet Mask از Wildcard Mask استفاده می شود که بیان کننده تعداد بیت ها از آدرس می‌باشد که باید درACL مورد بررسی قرار بگیرند و به عبارت دیگر مشخص کننده قسمتی از آدرسIP Address می باشد که باید درACL مورد بررسی قرار بگیرد . Wildcard Mask دقیقا برعکسSubnet Mask می باشد به جای bitهای1 در Subnet Mask ما از بیت های  ۰ درWildcard Mask و به جای بیت های صفر در Subnet Maskاز بیت های یک در Wildcard Mask استفاده می کنیم .برای مثال فرض کنید که ماسک 255.255.0.0را در اختیار داریم .اگر این ماسک را بر مبنای ۲ بنویسیم خواهیم داشت :

11111111.11111111.00000000.00000000=255.255.0.0

سرانجام اگر این Subnetmask را تبدیل به Wildcard Mask نماییم ، نتیجه بصورت زیر خواهد بود :

00000000.00000000.11111111.11111111

که در اینصورت تبدیل این آدرس به حالت دسیمال یا مبنای 10 آدرس 0.0.255.255 بدست خواهد آمد . در این مثال Wildcard Mask به روتر میگوید که فقط 16 بیت از اول آدرس IP پیام رسیده باید با 16 بیت از آدرس مشخص شده در هر یک از قانون های ACL یکسان باشد تا آن قانون روی پیام رسیده اجرا گردد . در غیر اینصورت ، روتر به بررسی قانون های بعدی خواهد پرداخت . دو نوع مخصوص از Wildcard Mask وجود دارد :

  1. 0.0.0.0
  2. 255.255.255.255

 

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *