आने वाले UDP पैकेट को कैप्चर करना विफल रहता है


0

मेरा पर्यावरण:

Mac OS X 10.8.5 (IP: 192.168.10.5)
CentOS 6.5 (IP: 192.168.10.8)

मैं ओएस एक्स पर यूडीपी आने वाले पैकेट को पकड़ने की कोशिश कर रहा हूं।

मैंने OS X के टर्मिनल पर कोशिश की

# tcpdump -In udp portrange 6000
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on en0, link-type IEEE802_11_RADIO (802.11 plus radiotap header), capture size 65535 bytes

फिर, सेंटोस 6.5 पर

$ echo "test" | nc -w 1 -u 192.168.10.5 6000
nc: Write error: Connection refused

कनेक्शन देने से मना कर दिया गया।

हालाँकि, जब मैं ओएस एक्स पर यूडीपी पैकेट प्राप्त करने के लिए एकता (5.1.3f) द्वारा बनाया गया एक कार्यक्रम (यूडीपी इको सर्वर) चलाता हूं, तो कनेक्शन से इनकार नहीं किया गया था।

$ echo "test" | nc -w 1 -u 192.168.10.5 6000
test

ओएस एक्स के कॉन्फ़िगरेशन का कौन सा हिस्सा मुझे जांचना चाहिए?


यदि आप पैकेट पर कब्जा करना चाहते हैं तो यहां एक सुझाव है। ऐसे काम के लिए विर्सार्क एक बेहतरीन उपकरण है। मैं समझता हूं कि आप एक टर्मिनल तक सीमित हो सकते हैं और यह इस सवाल का जवाब नहीं देता है (इसलिए यह उत्तर क्यों नहीं है, लेकिन एक टिप्पणी है)। मैं सिर्फ आपको और दूसरों को पैकेट विश्लेषण के लिए इस महान उपकरण से अवगत कराना चाहता था।
गैंर्ब

क्या आपने मैक सिस्टम पर फ़ायरवॉल की जाँच की है? यूडीपी के पैकेटों को "प्वाइंट एंड फायर" से इनकार करने वाली सेवा क्षमताओं के कारण बहुत सारे सिस्टम फ़िल्टर करना पसंद करते हैं।
गैंर्ब नोव

@Gamerb मैंने मैक पर फ़ायरवॉल की जाँच की है। फ़ायरवॉल चालू नहीं है। और आपको Wiershark के बारे में धन्यवाद।
सातऑनलाइन

@sevenOfNine यहाँ क्या समस्या है? पैकेट स्नाइपर जैसे tcpdump और Wireshark UDP श्रोता सॉकेट नहीं बनाते हैं। अगर कोई ओपन श्रोता सॉकेट के साथ पोर्ट के लिए UDP डेटाग्राम प्राप्त करता है, तो IP स्टैक एक ICMP "गंतव्य पहुंच योग्य नहीं: पोर्ट अगम्य" संदेश वापस भेज देगा। अब तक आपने अपेक्षित व्यवहार का वर्णन किया है, इसलिए मुझे यकीन नहीं है कि आप क्या समस्या देख रहे हैं कि आप हल करना चाहते हैं।
०१:११ पर

@Spiff Wireshark UDP पैकेट्स को कैप्चर करता है। और उनके मैक होने की समस्या को यूडीपी के पैकेट स्वीकार नहीं करेंगे, लेकिन उनके CentOS करता है।
गैंर्ब

जवाबों:


1

802.11 मॉनिटर मोड में आपके वायरलेस ड्राइवर को डिक्रिप्टिंग पैकेट नहीं हो सकता है, इसलिए tcpdump यह बताने में सक्षम नहीं हो सकता है कि वे UDP पैकेट हैं।

गुजर बिना अपने परीक्षण फिर से करें -Iकरने के लिए tcpdump। यह tcpdump को 802.11 मॉनिटर मोड में डालने के बजाय इंटरफ़ेस को ईथरनेट के रूप में देखने की अनुमति देगा।

ध्यान दें कि भले ही tcpdump पैकेटों पर कब्जा कर लेगा, लेकिन यह IP स्टैक को ICMP "गंतव्य अप्राप्य: पोर्ट अगम्य" संदेश को वापस भेजने से नहीं रोकेगा यदि यह बिना खुले श्रोता सॉकेट वाले पोर्ट के लिए UDP डेटाग्राम प्राप्त करता है। तो ncअगर आप उन पैकेटों को प्राप्त करने के लिए एकता जैसी चीज नहीं चला रहे हैं तो भेजने की मशीन पर भी "कनेक्शन मना कर दिया" कहेगा।


मैंने बिना परीक्षण के प्रयास किया -I। हालांकि, मुझे अभी भी "कनेक्शन मना कर दिया" की समस्या है।
सातऑनलाइन

@sevenOfNine यही मैंने कहा था कि आप देखेंगे। क्या tcpdump ने पोर्ट 6000 पर आने वाले UDP डेटा ग्राम को दिखाया?
स्पाइफ

नंबर tcpdump ने पोर्ट 6000 पर आने वाले यूडीपी डेटा ग्राम को नहीं दिखाया। वैसे, मैंने अपने पर्यावरण का हिस्सा नहीं लिखा, जो इस समस्या का कारण हो सकता है। मैं जानकारी लिखूंगा।
सातऑनलाइन

0

मैंने अपने पर्यावरण का हिस्सा नहीं लिखा, जो इस समस्या के लिए महत्वपूर्ण हो सकता है।

मैं VMware का उपयोग कर रहा हूँ।

मेरा पर्यावरण:

Mac OS X 10.8.5
CentOS 6.5 on VMWare Fusion 6.0.4 on Mac OS X 10.8.5

No firewall setting on MacOS X 10.8.5

Mac OS X(Host OS) network
- en0 : 192.168.10.4
- vmnet1 : 172.16.99.1
- vmnet8 : 172.16.173.1

CentOS(Guest OS) network (connected with "Bridge" setting)
- eth0 : 192.168.10.8
- lo : 127.0.0.1

1) मैक ओएस एक्स पर एनओएस के माध्यम से सेंटोस से मैक ओएस एक्स तक।

  • मैक ओएस एक्स पर tcpdump आने वाली यूडीपी पैकेट नहीं दिखाता है ("कनेक्शन मना कर दिया" CentOS 6.5 पर दिखाया गया है)
  • एकता ऐप (UDP रिसीवर) आने वाले UDP पैकेट (CentOS 6.5 पर कोई त्रुटि संदेश नहीं) दिखाता है

CentOS पर

# echo "test" | nc -w 1 -u 192.168.10.4 6000
nc: Write error: Connection refused

मैक ओएस एक्स पर

# tcpdump -n udp portrange 6000
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on en0, link-type EN10MB (Ethernet), capture size 65535 bytes

2) मैक ओएस एक्स पर vmnet8 के माध्यम से सेंटोस से मैक ओएस एक्स तक।

  • मैक ओएस एक्स पर tcpdump आने वाले यूडीपी पैकेट को शो के रूप में दिखाता है।

CentOS पर

$ echo "test" | nc -w 1 -u 172.16.173.1 6000

मैक ओएस एक्स पर

# tcpdump -n udp portrange 6000
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on en0, link-type EN10MB (Ethernet), capture size 65535 bytes
07:28:39.958576 IP 192.168.10.8.59866 > 172.16.173.1.6000: UDP, length 5

इसलिए, कम से कम अगर मैं vmnet8 का उपयोग करता हूं, तो मैं UDP पैकेट को CentOS से Mac OS X में भेज सकता हूं। मुझे vmnet1 का उपयोग करने में कोई समस्या नहीं है, भी।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.