2011-04-19 21 views
6

हम एक छोटी परियोजना कर रहे हैं जिसमें हाइपरवाइजर परत (यानी क्यूईएमयू) से गेस्ट ओएस (उदाहरण के लिए लिनक्स) की निगरानी शामिल है। उन चीजों में से एक जिसे हम मॉनिटर करना चाहते हैं, वह नेटवर्क ओएस के अतिथि ओएस में जा रहा है। क्या अतिथि ओएस को संशोधित किए बिना ऐसा करना संभव है?क्यूईएमयू में, क्या लिनक्स गेस्ट ओएस द्वारा भेजे गए/प्राप्त किए जा रहे पैकेट को अवरुद्ध करना संभव है?

ऐसा करने का एक तरीका है जब सॉकेट बनाए जाते हैं और प्रासंगिक रजिस्टरों से मूल्य प्राप्त करते हैं तो निर्देशों को निष्पादित किया जा रहा है। लेकिन हमें यकीन नहीं है कि यह आसान है या यदि इसे करने का सही तरीका है।

+0

दिलचस्प सवाल। +1 – 0xC0000022L

उत्तर

0

वायरसहार्क नामक एक प्रोग्राम का उपयोग करें। खोज फ़िल्टर दर्ज करें (ip.src eq [आईपी] या ip.dst eq [एक ही आईपी]) और, यह आपको उस कंप्यूटर से आने वाले सभी डेटा बताएगा। को नेटवर्क, या कुछ कार्रवाइयों के साथ इसकी बातचीत में गहराई से देखने के लिए उपयोगी।

+0

हालांकि, यदि आप डिफ़ॉल्ट एनएटी नेटवर्किंग का उपयोग करते हैं, तो आप मेजबान से उत्पन्न ट्रैफ़िक और वायरसहार्क में वीएम से उत्पन्न यातायात के बीच आसानी से अंतर नहीं कर पाएंगे। इसलिए आपको एक अलग प्रकार के नेटवर्किंग का उपयोग करना होगा, जैसा कि अन्य उत्तर कहता है। –

2
QEMU documentation से

:

-net dump[,vlan=n][,file=फ़ाइल][,len=लेन]

डंप नेटवर्क यातायात VLAN पर n डीईएफ़ द्वारा फ़ाइल (qemu-vlan0.pcap दायर करने के लिए Ault)। अधिकतर लेन बाइट्स (0kडिफ़ॉल्ट द्वारा 64k) प्रति पैकेट संग्रहीत किए जाते हैं। फ़ाइल प्रारूप libpcap है, इसलिए यह tcpdump या Wireshark जैसे उपकरणों के साथ विश्लेषण किया जा सकता है।

यदि आप --net tap होस्ट पर Wireshark चलाकर रीयल-टाइम में निगरानी करने में सक्षम होना चाहिए।

0

चूंकि क्यूमू ओपन सोर्स है, इसलिए आप डिवाइस डिवाइस के माध्यम से डेटा पैकेट को कैप्चर और लॉग इन करने के लिए नेटवर्क डिवाइस इम्यूलेशन में स्रोत और सम्मिलित कोड प्राप्त कर सकते हैं। उदाहरण के लिए, hw/virtio-net.c में virtio_net_flush_tx() दिनचर्या देखें। -

2

जवाब usr57368 @ के अलावा '-netdev', के साथ बनाया उपकरणों के लिए '-object फिल्टर-डंप, ...' के बजाय -net डंप का उपयोग करें:

-object filter-dump,id=id,netdev=dev,file=filename][,maxlen=len] 

नेटवर्क डंप फ़ाइल नाम द्वारा निर्दिष्ट फ़ाइल में netdev dev पर यातायात। अधिकांश पैन बाइट्स (डिफ़ॉल्ट रूप से 64k) प्रति पैकेट संग्रहीत होते हैं। फ़ाइल प्रारूप libpcap है, इसलिए इसका विश्लेषण tcpdump या Wireshark जैसे उपकरणों के साथ किया जा सकता है।