tcpdump: कई vlans में से एक पर कब्जा


11

मैं tcpdump VLAN 1000 पर कब्जा करना चाहते हैं या VLAN 501 man pcap-filterका कहना है:

वलान [vlan_id] अभिव्यक्ति का उपयोग एक से अधिक बार किया जा सकता है, वीएलएएन पदानुक्रम पर फ़िल्टर करने के लिए। उस अभिव्यक्ति का प्रत्येक उपयोग फ़िल्टर ऑफसेट को 4 से बढ़ाता है।

जब मैं करता हूं:

tcpdump -vv -i eth1 \( vlan 1000 \) and \( ip host 10.1.1.98 or ip host 10.1.1.99 \)

मुझे कैद किए हुए पैकेट मिलते हैं।

लेकिन जब मैं करता हूं:

tcpdump -vv -i eth1 \( vlan 1000 or vlan 501 \) and \( ip host 10.1.1.98 or ip host 10.1.1.99 \)

मुझे कोई पैकेट नहीं मिला - मैन पेज में वर्णित "वेतन वृद्धि 4" व्यवहार के कारण।

मैं एक समय में एक से अधिक वीएलएएन पर ट्रैफ़िक कैसे पकड़ सकता हूं?

जवाबों:


15

मुझे याद आया कि आप पैकेट बाइट्स की सीधे जांच कर सकते हैं। तो सीधे ईथरनेट हेडर में काम करता है:

tcpdump -vv -i eth1 '( vlan and ( ether[14:2] & 0xfff == 1000 or ether[14:2] & 0xfff == 501 ) ) and ( ip host 10.1.1.98 or ip host 10.1.1.99 )'

इसे मत भूलना :2, यह एक 2 बाइट फ़ील्ड है - मैं इस पर थोड़ी देर के लिए अटक गया।


6

यह गहरी पैकेट परीक्षा का उपयोग करने से अधिक सरल तरीके से किया जा सकता है, बस grep का उपयोग करें:

tcpdump -n -i eth1 -e | grep "vlan 1000" 

-e: प्रत्येक डंप लाइन पर लिंक-स्तरीय हेडर प्रिंट करें।

यह लाइनों की तरह प्रिंट होगा

ethertype 802.1Q (0x8100), length 60: vlan 1000, p 0, ethertype ARP

जिसे आसानी से पकड़ लिया जा सकता है

यदि आप एक से अधिक VLAN ID पकड़ना चाहते हैं, तो आप कमांड का उपयोग कर सकते हैं:

tcpdump -n -i eth1 -e | grep "vlan 1000\|vlan 501"

-1

ऐसा लगता है कि वलन फ़िल्टर पैकेट सामग्री को स्थानांतरित करता है ...।

http://www.christian-rossow.de/articles/tcpdump_filter_mixed_tagged_and_untagged_VLAN_traffic.php


2
कृपया लिंक केवल उत्तर पोस्ट न करें। वे निम्न-गुणवत्ता वाले हैं, क्योंकि लिंक बासी / बदल सकते हैं। अपनी पोस्ट में सीधे आवश्यक विवरण शामिल करना सबसे अच्छा है, और केवल संदर्भ के लिए लिंक प्रदान करें।
कास्टाग्लिया
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.