2017-03-16 8 views
7

मैं कच्चे C के साथ लिनक्स के अंदर libpcap का उपयोग कर IEEE802.11 फ्रेम पार्सर प्रोग्राम विकसित कर रहा हूं। मैं RadioTap और IEEE802.11 हेडर आसानी से पार्स कर सकता हूं लेकिन मुझे प्रोटोकॉल नाम नहीं मिल रहा है जो IEEE802.11 एमपीDU के अंदर encapsulated है। दुर्भाग्यवश IEEE802.11 हेडर में कोई फ़ील्ड नहीं है जो encapsulated प्रोटोकॉल को इंगित करता है (जैसे फ़ील्ड Ethernet हेडर में)।आईईईई 802.11 फ्रेम के अंदर encapsulated प्रोटोकॉल कैसे खोजें?

कोई समाधान?

+0

नाम के साथ आपका क्या मतलब है? बी/जी/एन ... पीएलसीपी सुब्लेयर – LPs

+0

@ एलपी पर पुनर्प्राप्त किया जा सकता है: बी/जी/एन 'आईईईई 802.11' हेडर का हिस्सा है। मेरा मतलब है कि डब्ल्यूपीए प्रमाणीकरण या पैकेट के अंदर encapsulated किसी भी अन्य प्रोटोकॉल में 'EAPOL' पैकेट के मामले में' 802.11X'। – SuB

+0

मैं कोई विशेषज्ञ नहीं हूं, लेकिन वायरशर्क [नमूना कैप्चर] में देख रहा हूं (https://wiki.wireshark.org/SampleCaptures#Wifi_.2F_Wireless_LAN_captures_.2F_802.11) बताता है कि एसएनएपी के साथ एक लॉजिकल-लिंक-कंट्रोल हेडर हो सकता है एक्सटेंशन (जैसा कि 0xAA द्वारा इंगित किया गया है) जिसमें [ettertype] हो सकता है (https://en.wikipedia.org/wiki/EtherType) जब ओआईडी == 0x000000 (देखें [यहां] (https://en.wikipedia.org/wiki /Subnetwork_Access_Protocol))... शुभकामनाएँ! – vlp

उत्तर

0

डाटा एक LLC शीर्षक में समझाया गया है (here देखें):

एक 802.11 फ्रेम एक LLC शीर्षक यदि शामिल करना चाहिए और वह भी तब, यह एक डाटा फ्रेम है। फ्रेम प्रकार और उप प्रकार मैक हेडर में फ्रेम नियंत्रण फ़ील्ड का हिस्सा हैं; डेटा फ्रेम प्रकार मानों में से एक है ( अन्य नियंत्रण और प्रबंधन हैं)। उप प्रकार कोई फर्क नहीं पड़ता - सभी डेटा फ्रेम में एक एलएलसी हेडर होना चाहिए, और कोई अन्य फ्रेम नहीं होना चाहिए।

दो प्रकार के LLC शीर्षलेख: 3 बाइट्स, 8 बाइट्स हैं। IEEE 802.11 दूसरे का उपयोग करता है (here देखें)। उसमें, LLC शीर्षलेख के दो अंतिम बाइट प्रोटोकॉल में Ether Type फ़ील्ड के बराबर है। इसलिए इस क्षेत्र के लिए 0x800 का अर्थ है उदाहरण के लिए IPv4

2

802.11 के लिए फ्रेम कि डेटा encapsulating कर रहे हैं, शीर्ष लेख प्रकार/उपप्रकार 0x20 और 0x2F के बीच होंगे (यद्यपि फ्रेम आमतौर पर 0x20 (डेटा) या 0x28 (क्यूओएस-डेटा) है)। एक 5-बाइट एसएनएपी हेडर होगा जिसमें पेलोड का प्रकार होगा (जैसा कि this answer में उल्लिखित है)। यदि ओआईडी (एसएनएपी हेडर के पहले तीन बाइट्स) 0x000000 है, तो अगले दो बाइट ईथरनेट प्रकार हैं।

ईएपीओएल (source) के लिए ईथरनेट प्रकार 0x888e होगा। वह क्षेत्र है जहां आप आईपी के लिए encapsulated प्रोटोकॉल (0x0800, 0x0806 एआरपी, आदि के लिए पता लगाने का निरीक्षण करेंगे)।

यहां ईथरनेट प्रकारों पर एक अच्छा सिस्को दस्तावेज़ है और आप कुछ प्रोटोकॉल फ़िल्टर करने के लिए उनका उपयोग कैसे कर सकते हैं: http://www.cisco.com/c/en/us/td/docs/ios/12_2/ibm/vol1/command/reference/fibm_r1/br1fethc.pdf

वायरलेस स्निफ़ेर निशान पर एक अच्छा सिस्को दस्तावेज़ है जिसमें 802.11 प्रकार/उप प्रकार फ़ील्ड का वर्णन शामिल है: https://supportforums.cisco.com/document/52391/80211-frames-starter-guide-learn-wireless-sniffer-tracesIEEE802.11 डाटा पैकेट की

संबंधित मुद्दे