المقدمة
يوضح هذا المستند أن قائمة التحكم في الوصول (ACL) ل IPv6 مع بادئة الكل صفر في ACE يمكن أن تطابق جميع حزم IPv6 وتصحيحها.
المتطلبات الأساسية
المتطلبات
توصي Cisco بأن تكون لديك معرفة بالمواضيع التالية:
- تكوين قائمة التحكم في الوصول (ACL) ل IPv6 على موجهات Cisco IOS® XR
- برمجة أجهزة ACL على موجهات Cisco IOS® XR
المكونات المستخدمة
تستند المعلومات الواردة في هذا المستند إلى إصدارات البرامج والمكونات المادية التالية:
- يتم تطبيق قائمة التحكم في الوصول (ACL) إلى IPv6 بمستوى الضغط 2 أو 3
- إصدار Cisco IOS® XR بدون إصلاح معرف تصحيح الأخطاء من Cisco CSCwe08250
تم إنشاء المعلومات الواردة في هذا المستند من الأجهزة الموجودة في بيئة معملية خاصة. بدأت جميع الأجهزة المُستخدمة في هذا المستند بتكوين ممسوح (افتراضي). إذا كانت شبكتك قيد التشغيل، فتأكد من فهمك للتأثير المحتمل لأي أمر.
معلومات أساسية
عنوان IPv6::/128 محجوز لعنوان غير محدد في RFC(طلب التعليقات) 4291. يجب عدم تعيينها مطلقا إلى أي عقدة، ومن ثم، فمن أفضل الممارسات رفض هذا العنوان في تصفية IPv6 Bogon.
المشكلة
يمكن أن تتطابق قائمة التحكم في الوصول ل IPv6 بما في ذلك إدخال التحكم في الوصول ACE(إدخال التحكم في الوصول) من ::/128 مع أي حزمة IPv6 على الواجهة التي تم تطبيقها عليها.
ويرد أدناه مثال على هذه الملاحظة في المختبر.
تكوين قائمة تحكم في الوصول (ACL) إلى IPv6 مع:/128 تطابق عنوان مصدر ووجهة IPv6، على التوالي:
ipv6 access-list PREFIX_ALL_ZERO
10 remark ** HOST MASK **
11 deny ipv6 any host :: log
12 deny ipv6 host :: any log
إرسال حركة مرور PING(حزمة إنترنت أو داخل الشبكة) إلى عنوان وجهة IPv6 غير صفري:
RP/0/RP0/CPU0:router#ping fd00:4860:1:1::150 count 100 timeout 0
Thu Sep 14 12:30:23.412 UTC
pings with timeout=0 may result in system instability and
control protocol flaps resulting in traffic impact.
Do you really want to continue[confirm with only 'y' or 'n'] [y/n] :y
Type escape sequence to abort.
Sending 100, 100-byte ICMP Echos to FD00:4860:1:1::150, timeout is 0 seconds:
....................................................................................................
Success rate is 0 percent (0/100)
تم إسقاط الحزمة بواسطة ACE11:
RP/0/RP0/CPU0:router#show access-lists ipv6 PREFIX_ALL_ZERO hardware ingress location 0/RP0/CPU0
Thu Sep 14 12:30:46.346 UTC
ipv6 access-list PREFIX_ALL_ZERO
11 deny ipv6 any host :: log (100 matches)
12 deny ipv6 host :: any log
عند إزالة ACE 11، ينتقل القطرة إلى ACE 12:
RP/0/RP0/CPU0:router#clear access-list ipv6 PREFIX_ALL_ZERO hardware ingress location 0/RP0/CPU0
Thu Sep 14 12:31:34.899 UTC
RP/0/RP0/CPU0:router#ping fd00:4860:1:1::150 count 100 timeout 0
Thu Sep 14 12:31:39.482 UTC
pings with timeout=0 may result in system instability and
control protocol flaps resulting in traffic impact.
Do you really want to continue[confirm with only 'y' or 'n'] [y/n] :y
Type escape sequence to abort.
Sending 100, 100-byte ICMP Echos to FD00:4860:1:1::150, timeout is 0 seconds:
....................................................................................................
Success rate is 0 percent (0/100)
RP/0/RP0/CPU0:router#show access-lists ipv6 PREFIX_ALL_ZERO hardware ingress location 0/RP0/CPU0
Thu Sep 14 12:31:45.229 UTC
ipv6 access-list PREFIX_ALL_ZERO
12 deny ipv6 host :: any log (100 matches)
من المفترض أن تقوم وحدات التحكم في الوصول (ACEs) هذه بإسقاط الحزم فقط التي يكون عنوان المصدر أو الوجهة كلها أصفار.
ومع ذلك، تم إسقاط جميع حركات المرور، حتى مع المصدر أو الوجهة وليس كل الأصفار.
تحذير: يتم تطبيق سلوك عدم التطابق هذا على طول علامة الشبكة الفرعية IPv6 من /1 إلى /128 ل ACE، وليس فقط ال /128 في المثال.
الحل
يقوم إصدار Cisco IOS® XR مع إصلاح معرف تصحيح الأخطاء من Cisco CSCwe08250 بتصحيح هذا السلوك الخاطئ.
على موجه Cisco IOS® XR يعمل بدون هذا الإصلاح، يوجد حل بديل:
- أستخدم قوائم التحكم في الوصول (ACL) الهجينة وانقل ::/<x> من قائمة التحكم في الوصول (ACL) إلى مجموعة كائن شبكة لمطابقة عنوان المصدر أو الوجهة مع جميع الأصفار.