Macvlan आधारित इंटरफ़ेस पिंग होस्ट से लेकिन नेमस्पेस से नहीं


10

[संपादित करें]

उत्पादन प्रणाली वर्तमान में एक मिश्रित भौतिक और ईएसएक्सआई आधारित प्रणाली है। हम स्पष्ट रूप से एक पूर्व उत्पादन वातावरण के लिए भी virtualbox का उपयोग कभी नहीं होगा! इसका उपयोग यहां केवल मेरे डेस्कटॉप पर सीधे समस्या को जल्दी से कम करने के लिए किया गया था।

मेटा पर "होल्ड पर" के स्पष्टीकरण के लिए धन्यवाद!

[/ संपादित करें]

मेरा सेटअप:

  1. निजी नेटवर्क vboxnet110.0.7.0/24
  2. 1 होस्ट, ubuntu डेस्कटॉप
  3. 1 VM, ubuntu सर्वर (वर्चुअलबॉक्स)

अनुकूल लेआउट:

  1. HOST: 10.0.7.1
  2. वीएम: 10.0.7.101
  3. VM MAC नाम : 10.0.7.102

इस पर VM, मैंने निम्नलिखित कमांड चलाई:

ip netns add mac                        # create a new nmespace
ip link add link eth0 mac0 type macvlan # create a new macvlan interface
ip link set mac0 netns mac

macवीएम के अंदर नामस्थान पर :

ip link set lo up
ip link set mac up
ip addr add 10.0.7.102/24 dev mac0

ताकि हम मूल रूप से समाप्त हो जाएँ: (जैसे कि इन्सेप्शन?)

+------------------------+
| Host: 10.0.7.1         |
|                        |
| +--------------------+ |
| | VM: 10.0.7.101     | |
| |                    | |
| | +----------------+ | |
| | | NS: 10.0.7.102 | | |
| | |                | | |
| | +----------------+ | |
| +--------------------+ |
+------------------------+

क्या काम करता है:

  • के बीच पिंग HostऔरVM
  • के बीच पिंग NSऔरNS
  • से घटता है NS

क्या काम नहीं करता है:

  • NSऔर के बीच पिंगVM
  • NSऔर के बीच पिंगHost

जहां मैंने पागल होना शुरू किया:

  • tcpdump पर host(वास्तविक मशीन) वास्तव में ARP अनुरोध और उत्तर दिखाता है
  • tcpdump NSहोस्ट को भेजे गए ARP अनुरोध दिखाता है
  • tcpdump VMपूरे गड़बड़ कार्य को करता है (!) -> VM पर VMP पर tcpdump शुरू होने पर जवाब मिलना शुरू हो जाता है !?

तो, मुझे यकीन है कि आप इसके लिए उत्सुक थे, मेरा सवाल है: मैं इसे कैसे काम कर सकता हूं? मुझे एनएस के अंदर मैकवेलन पर एआरपी के साथ कुछ गलत होने का संदेह है, लेकिन यह पता नहीं लगा सकता है कि वास्तव में ...

Btw, मैंने mac0वीएम (नो नेमस्पेस) पर सीधे इंटरफ़ेस के साथ एक ही एक्सप्रेशन किया और इसने त्रुटिपूर्ण रूप से काम किया।


4
मुझे समझ में नहीं आता कि इस प्रश्न को ऑफ-टॉपिक के रूप में क्यों चिह्नित किया गया है। यह निश्चित रूप से एक sysadmin / netadmin प्रश्न है, जो कई वर्चुअलाइजेशन वातावरण के लिए प्रासंगिक है, और यह एक तुच्छ नहीं है (या, यदि यह है, तो StackOverflow पर 90% प्रश्न ऑफ-टॉपिक भी हैं)। मुझे अच्छा लगेगा अगर जो लोग इसे "ऑफ-टॉपिक" के रूप में हरी झंडी दिखाते हैं, उन्होंने यह समझाने की जहमत उठाई कि नियम को कॉपी-पेस्ट करने के बजाय ऐसा क्यों है कि जाहिर तौर पर यहां लागू नहीं होता है। धन्यवाद!
जिप्टज्जो

@jpetazzo यह ऑफ-टॉपिक नहीं है, और मैं केवल यह मान सकता हूं कि बंद करने वाले लोगों ने प्रश्न के खराब संगठन / प्रस्तुति के आधार पर ऐसा किया है (संभवतः ओपी एक sys / नेट एडमिन नहीं होने के कारण)। इसके अलावा, सर्वर फॉल्ट का दायरा (सिर्फ विषय नहीं) स्टैक ओवरफ्लो से अलग है - आपका तर्क मुझे लगता है कि आपने हमारे सहायता केंद्र का दौरा नहीं किया है क्योंकि यह कोई मतलब नहीं है।
क्रिस एस

जवाबों:


13

ठीक है, इसलिए, पोस्टर के लिए, यह तथ्य कि tcpdump सभी अचानक काम करता है मुझे ट्रैक पर रखना चाहिए था। आंतरिक रूप से यह क्या करता है, इसे उचित eth0मोड में बदल दिया जाता है। यह कहना है, eth0सर्वर के मुख्य के साथ ही नहीं, सभी नेटवर्क ट्रैफ़िक का उत्पादन करेगाMAC

हालांकि, यह ठीक है कि कैसे macvlanकाम करता है: यह एक नया माध्यमिक वर्चुअल मैक पता जोड़ता है जिसे "भौतिक" (यह एक वीएम) नेटवर्क एडॉप्टर नहीं जानता है।

तो आसान समाधान मैन्युअल रूप से करना है: ifconfig eth0 promisc

मुझे उम्मीद है यह मदद करेगा !


तो आपको उस वीएम पर "नो प्रोमिस मोड" को भी अनचेक करना था, मुझे लगता है?
Nils

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