يوضح هذا المستند كيفية حل فقدان إختبار الاتصال عبر نفق IPsec المقترن برسائل "٪CRYPTO-4-RECVD_PKT_MAC_ERR" في syslog كما هو موضح في المربع:
May 23 11:41:38.139 GMT: %CRYPTO-4-RECVD_PKT_MAC_ERR:
decrypt: mac verify failed for connection
id=2989 local=172.16.200.18 remote=172.16.204.18 spi=999CD43B
seqno=00071328
وتعتبر نسبة مئوية صغيرة من حالات السقوط هذه أمرا طبيعيا. ومع ذلك، يمكن أن يؤثر معدل الإسقاط المرتفع بسبب هذه المشكلة على الخدمة وقد يتطلب اهتمام مشغل الشبكة. لاحظ أن هذه الرسائل المبلغ عنها في syslogs محدودة بمعدل 30 ثانية لفواصل زمنية، لذلك لا تشير رسالة سجل واحد دائما إلى أنه تم إسقاط حزمة واحدة فقط. للحصول على عدد صحيح من عمليات الإسقاط هذه، قم بإصدار الأمر show crypto ipSec detail، وانظر إلى SA المجاور لمعرف الاتصال الذي يظهر في السجلات. من بين عدادات SA، يتحقق pkts من حسابات عداد الأخطاء الفاشلة لإجمالي إسقاط الحزمة بسبب فشل التحقق من رمز مصادقة الرسالة (MAC).
interface: GigabitEthernet0/1
Crypto map tag: MPLSWanGREVPN, local addr 172.16.204.18
protected vrf: (none)
local ident (addr/mask/prot/port): (172.16.204.18/255.255.255.255/47/0)
remote ident (addr/mask/prot/port): (172.16.205.18/255.255.255.255/47/0)
current_peer 172.16.205.18 port 500
PERMIT, flags={origin_is_acl,}
#pkts encaps: 51810, #pkts encrypt: 51810, #pkts digest: 51810
#pkts decaps: 44468, #pkts decrypt: 44468, #pkts verify: 44468
#pkts compressed: 0, #pkts decompressed: 0
#pkts not compressed: 0, #pkts compr. failed: 0
#pkts not decompressed: 0, #pkts decompress failed: 0
#pkts no sa (send) 0, #pkts invalid sa (rcv) 0
#pkts encaps failed (send) 0, #pkts decaps failed (rcv) 0
#pkts invalid prot (recv) 0, #pkts verify failed: 8
#pkts invalid identity (recv) 0, #pkts invalid len (rcv) 0
#pkts replay rollover (send): 0, #pkts replay rollover (rcv) 0
#pkts replay failed (rcv): 0
#pkts internal err (send): 0, #pkts internal err (recv) 0
local crypto endpt.: 172.16.204.18, remote crypto endpt.: 172.16.205.18
path mtu 1500, ip mtu 1500, ip mtu idb GigabitEthernet0/1
current outbound spi: 0xD660992C(3596654892)
inbound esp sas:
spi: 0x999CD43B(2577191995)
transform: esp-3des esp-sha-hmac ,
in use settings ={Transport, }
conn id: 2989, flow_id: AIM-VPN/SSL-3:2989, sibling_flags 80000006,
crypto map: MPLSWanGREVPN
sa timing: remaining key lifetime (k/sec): (4257518/24564)
IV size: 8 bytes
replay detection support: N
Status: ACTIVE
outbound esp sas:
spi: 0xD660992C(3596654892)
transform: esp-3des esp-sha-hmac ,
in use settings ={Transport, }
conn id: 2990, flow_id: AIM-VPN/SSL-3:2990, sibling_flags 80000006,
crypto map: MPLSWanGREVPN
sa timing: remaining key lifetime (k/sec): (4199729/24564)
IV size: 8 bytes
replay detection support: N
Status: ACTIVE
لا توجد متطلبات خاصة لهذا المستند.
تستند المعلومات الواردة في هذا المستند إلى الاختبارات التي تم إجراؤها على الإصدار 15.1(4)M4 من Cisco IOS®. وعلى الرغم من عدم إختبارها بعد، إلا أنه يجب أن تعمل البرامج النصية والتكوين مع إصدارات برامج Cisco IOS السابقة أيضا لأن كلا التطبيقين يستخدمان الإصدار 3.0 من IM (والذي يتم دعمه في الإصدار 12.4(22)T أو إصدارا أعلى) من IOS.
تم إنشاء المعلومات الواردة في هذا المستند من الأجهزة الموجودة في بيئة معملية خاصة. بدأت جميع الأجهزة المُستخدمة في هذا المستند بتكوين ممسوح (افتراضي). إذا كانت شبكتك مباشرة، فتأكد من فهمك للتأثير المحتمل لأي أمر.
يتضمن "٪CRYPTO-4-RECVD_PKT_MAC_ERR:Decrypt:" أنه تم تلقي حزمة مشفرة فشلت في التحقق من MAC. هذا التحقق هو نتيجة لمجموعة تحويل المصادقة التي تم تكوينها:
Router (config)# crypto ipsec transform transform-1 esp-aes 256 esp-md5-hmac
في المثال المذكور أعلاه، يحدد ESP-AES 256" خوارزمية التشفير على أنها AES من فئة 256 بت، وتعرف "esp-md5" MD5 (متغير HMAC) على أنها خوارزمية التجزئة المستخدمة للمصادقة. يتم إستخدام خوارزميات التجزئة مثل MD5 عادة لتوفير بصمة رقمية لمحتويات الملف. غالبا ما يتم إستخدام بصمة الإصبع الآلية لضمان عدم تغيير الملف بواسطة متسلل أو فيروس. لذلك فإن حدوث رسالة الخطأ هذه غالبا ما يعني إما:
بما أن رسالة الخطأ هذه يسببها عادة تلف الحزمة، فإن الطريقة الوحيدة لعمل تحليل سبب جذري هي إستخدام EPC للحصول على لقطات كاملة للحزم من جانب WAN على كلا نقطتي نهاية النفق ومقارنتهم. قبل الحصول على عمليات الالتقاط، من الأفضل تحديد نوع حركة المرور التي تشغل هذه السجلات. وفي بعض الحالات، يمكن أن يكون ذلك نوعا محددا من حركة المرور؛ وفي حالات أخرى، قد يكون عشوائيا ولكنه يمكن تكراره بسهولة (مثل قطرة 5-7 كل 100 تجسر). وفي مثل هذه الحالات، يصبح من الأسهل قليلا تحديد هذه المسألة. أفضل طريقة لتحديد المشغل هي تمييز حركة مرور الاختبار بعلامات DSCP والتقاط الحزم. يتم نسخ قيمة DSCP إلى رأس ESP ومن ثم يمكن تصفيتها باستخدام Wireshark. يمكن إستخدام هذا التكوين، والذي يفترض إجراء إختبار باستخدام 100 إختبار، لتعليم حزم ICMP:
ip access-list extended VPN_TRAFFIC
permit icmp <source> <destination>
class-map match-all MARK
match access-group name VPN_TRAFFIC
policy-map MARKING
class MARK
set dscp af21
يجب تطبيق هذا النهج الآن على واجهة الدخول حيث يتم تلقي حركة مرور البيانات الواضحة على موجه التشفير:
interface GigabitEthernet0/0
service-policy MARKING in
بدلا من ذلك، قد ترغب في تشغيل هذا الاختبار باستخدام حركة مرور يتم إنشاؤها بواسطة الموجه. لهذا، لا يمكنك إستخدام جودة الخدمة (QoS) لتعليم الحزم، ولكن يمكنك إستخدام التوجيه المستند إلى السياسة (PBR).
ip access-list extended VPN_TRAFFIC
permit icmp <source> <destination>
route-map markicmp permit 10
match ip address vpn
set ip precedence critical
ip local policy route-map markicmp
بمجرد تكوين تمييز جودة الخدمة لحركة مرور ICMP لديك، يمكنك تكوين التقاط الحزمة المضمنة:
Router(config)# ip access-list ext vpn_capo
Router(config)# permit ip host
Router(config)# permit ip host
Router(config)# exit //the capture is only configured in enable mode.
Router# monitor capture buffer vpncap size 256 max-size 100 circular
Router# monitor capture buffer vpncap filter access-list vpn_capo
Router# monitor capture point ip cef capo fastEthernet 0/1 both
Router# monitor capture point associate capo vpncap
Router# monitor capture point start capo //starts the capture.
To stop replace the "start" keyword with "stop"
ملاحظة: تم تقديم هذه الميزة في الإصدار 12.4(20)T من Cisco IOS. راجع التقاط الحزمة المضمنة للحصول على مزيد من المعلومات حول EPCs.
يتطلب إستخدام التقاط حزمة لاستكشاف أخطاء هذا النوع من المشاكل وإصلاحها التقاط الحزمة بالكامل، وليس مجرد جزء منها. تحتوي ميزة EPC في إصدارات Cisco IOS التي تسبق الإصدار 15.0(1)M على حد مخزن مؤقت يبلغ 512 كيلوبايت بحد أقصى لحجم الحزمة يبلغ 1024 بايت. لتجنب هذا التحديد، قم بالترقية إلى 15.0(1)M أو التعليمات البرمجية الأحدث، والتي تدعم الآن حجم مخزن الالتقاط المؤقت الذي يبلغ 100 متر بحد أقصى لحجم الحزمة يبلغ 9500 بايت.
إذا كان من الممكن نسخ المشكلة بشكل موثوق مع كل 100 إختبار اتصال، فإن أسوأ سيناريو هو جدولة نافذة صيانة للسماح فقط لحركة مرور ping كإختبار متحكم به والتقاط الصور. يجب ألا تستغرق هذه العملية سوى دقائق قليلة، ولكنها تتسبب في تعطيل حركة مرور الإنتاج لتلك الفترة. إذا كنت تستخدم تمييز جودة الخدمة، فيمكنك التخلص من متطلبات تقييد الحزم فقط على إختبارات الاتصال. in order to على قبض all the ping ربط في واحد مصد، أنت ينبغي ضمنت أن الاختبار لا ينجز أثناء ساعات الذروة.
إذا لم تكن المشكلة سهلة التوليد، أنت يستطيع استعملت IM نصي أن يدير الربط التقاط. النظرية هي أن تبدأ التقاط على كلا الجانبين في عازل دائري واستخدام IM لوقف الأسر على جانب واحد. وفي الوقت نفسه، توقف IM التقاط، جعلها ترسل فخ SNMP إلى النظير، الذي يوقف التقاطها. قد تنجح هذه العملية. ولكن إذا كان الحمل ثقيلا، فقد لا يستجيب الموجه الثاني بالسرعة الكافية لوقف الأسر. يفضل إجراء إختبار مضبوط. وفيما يلي نصوص البرنامج التنفيذي للعمليات المتكاملة التي ستنفذ العملية:
Receiver
========
event manager applet detect_bad_packet
event syslog pattern "RECVD_PKT_MAC_ERR"
action 1.0 cli command "enable"
action 2.0 cli command "monitor capture point stop test"
action 3.0 syslog msg "Packet corruption detected and capture stopped!"
action 4.0 snmp-trap intdata1 123456 strdata ""
Sender
======
event manager applet detect_bad_packet
event snmp-notification oid 1.3.6.1.4.1.9.10.91.1.2.3.1.9.
oid-val "123456" op eq src-ip-address 20.1.1.1
action 1.0 cli command "enable"
action 2.0 cli command "monitor capture point stop test"
action 3.0 syslog msg "Packet corruption detected and capture stopped!"
لاحظ أن الرمز الموجود في المربع السابق هو تكوين تم إختباره باستخدام 15.0(1)M. قد تحتاج إلى إختباره باستخدام إصدار Cisco IOS المحدد الذي يستخدمه العميل قبل تنفيذه في بيئة العميل.
ip.dsfield.dscp==0x08
"0x08" خاصة بقيمة AF21 لبروتوكول DSCP. إذا تم إستخدام قيمة DSCP مختلفة، يمكن الحصول على القيمة الصحيحة من التقاط الحزمة نفسها أو من قائمة مخطط تحويل قيم DSCP. راجع DSCP وقيم الأولوية للحصول على مزيد من المعلومات.
*Mar 1 00:01:38.923: After encryption:
05F032D0: 45000088 00000000 E.......
05F032E0: FF3266F7 0A01201A 0A012031 7814619F .2fw.. ... 1x.a.
05F032F0: 00000001 DE9B4CEF ECD9178C 3E7A7F24 ....^.LolY..>z.$
05F03300: 83DCF16E 7FD64265 79F624FB 74D5AEF2 .\qn.VBeyv${tU.r
05F03310: 5EC0AC16 B1F9F3AB 89524205 A20C4E58 ^@,.1ys+.RB.".NX
05F03320: 09CE001B 70CC56AB 746D6A3A 63C2652B .N..pLV+tmj:cBe+
05F03330: 1992E8AF 2CE2A279 46367BDB 660854ED ..h/,b"yF6{[f.Tm
05F03340: 77B69453 83E47778 1470021F 09436285 w6.S.dwx.p...Cb.
05F03350: CB94AEF5 20A65B1F 480D86F6 125BA12E K..u &[.H..v.[!.
4F402C90: 45000088 00000000 E.......
4F402CA0: FF3266F7 0A01201A 0A012031 7814619F .2fw.. ... 1x.a.
4F402CB0: 00000001 DE9B4CEF ECD9178C 3E7A7F24 ....^.LolY..>z.$
4F402CC0: 83DCF16E 7FD64265 79F624FB 74D5AEF2 .\qn.VBeyv${tU.r
4F402CD0: 5EC0AC16 B1F9F3AB 89524205 A20C4E58 ^@,.1ys+.RB.".NX
4F402CE0: 09CE001B 70CC56AB 00000000 00000000 .N..pLV+........
4F402CF0: 00000000 00000000 00000000 00000000 ................
4F402D00: 00000000 00000000 00000000 00000000 ................
4F402D10: 00000000 00000000 00000000 00000000 ................
المراجعة | تاريخ النشر | التعليقات |
---|---|---|
1.0 |
24-Oct-2013 |
الإصدار الأولي |