वर्चुअलबॉक्स अतिथि OS से होस्ट मशीन से कनेक्ट करें?


214

मैं अनिवार्य रूप से VirtualBox में अतिथि से अपने होस्ट कंप्यूटर तक पहुंचना चाहता हूं। क्या मेरे मेजबान के लिए एक आईपी पता दिया गया है जिसे मैं अतिथि से उपयोग कर सकता हूं? क्या इसे स्थापित करने के लिए आवश्यक अतिरिक्त कदम हैं? मैं अपने होस्ट के अपाचे, एफ़टीपी, और एसएसएच सेवाओं का उपयोग करना चाहता हूं।


1
किसी भी संकेत के बिना हल करना मुश्किल है जो आपके मेहमान वास्तव में नेटवर्क कन्फ्यूजेशन है। कुछ होस्ट करने की अनुमति नहीं देते हैं। अतिथि का डिफ़ॉल्ट गेटवे पता आज़माएं।
टर्बो जे

7
यह पता चलता है कि मैं इसे अपने डिफ़ॉल्ट गेटवे 10.0.2.2 पर पहुंचा सकता हूं।
Naftuli Kay

जवाबों:


258

यह जवाब VirtualBox में बहुत अधिक अतिथि ओएस सेटअप के बारे में है; आपको अतिथि ओएस से होस्ट ओएस से कनेक्ट करने के लिए अतिथि ओएस पर नेटवर्क गेटवे पते का उपयोग करने की आवश्यकता है।

डिफ़ॉल्ट वैगरंट सेटअप में, आपको डिफ़ॉल्ट गेटवे के माध्यम से अपने होस्ट तक पहुंचने में सक्षम होना चाहिए।

विंडोज आधारित मेहमानों पर, आप कमांड चलाकर इस आईपी पते को आसानी से निर्धारित कर सकते हैं:

ipconfig

इसे कुछ इस तरह बाहर निकालना चाहिए:

Windows IP Configuration

Ethernet adapter Local Area Connection:

        Connection-specific DNS Suffix  . :
        IP Address. . . . . . . . . . . . : 10.0.2.15
        Subnet Mask . . . . . . . . . . . : 255.255.255.0
        Default Gateway . . . . . . . . . : 10.0.2.2

इस उदाहरण में, अतिथि होस्ट मशीन तक पहुंच सकता है 10.0.2.2


यूनिक्स / लिनक्स आधारित मेहमानों पर, कमांड का उपयोग करें:

netstat -rn

इसे कुछ इस तरह बाहर निकालना चाहिए:

Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
192.168.1.0     0.0.0.0         255.255.255.0   U         0 0          0 wlan0
169.254.0.0     0.0.0.0         255.255.0.0     U         0 0          0 wlan0
0.0.0.0         192.168.1.1     0.0.0.0         UG        0 0          0 wlan0

इस उदाहरण में, अतिथि होस्ट मशीन तक पहुंच सकता है 192.168.1.1


कोई भी विचार क्यों कि आपके उत्तर के अनुसार डिफ़ॉल्ट गेटवे का उपयोग करते समय कनेक्टिविटी भयावह रूप से धीमी होगी?
बेन स्विनबर्न

यह मेरे लिए काम नहीं करता था (उबंटू 12.04, वैग्रांट 1.0)। अतिथि के अंदर डिफ़ॉल्ट गेटवे के रूप में दिखाया गया है 10.0.2.2, और उस आईपी का एक झपकी विफल रहा। 192.168.33.1 सही IP प्रतीत होता है। (मैं config.vm.network :hostonly, "192.168.33.52"अपने विन्यास में था ।)
अज़ीडी ३२

असल में, कोई बात नहीं। इसने काम किया। बस किसी कारण से काम नहीं कर रहा था; यकीन नहीं है कि क्यों। मैं अभी भी उस आईपी से होस्ट पर चलने वाली सेवाओं से जुड़ सकता था, भले ही नैम्प उन्हें नहीं दिखा रहा था।
अजादि32

1
netstat -rnCentOS 7.2 पर, डॉकर 1.11 ने 172.17मेरे गेटवे के रूप में एक पता प्रदर्शित किया , लेकिन वह IP मेरे होस्ट से मेल नहीं खाता था। यह पता चला है कि 10.0.2.2किया था।
स्पेन्सर विलियम्स

1
हम कैसे जानते हैं कि उन प्रविष्टियों में से कौन सी एक प्रवेश द्वार है?
क्रेमर

36

अतिथि से होस्ट कंप्यूटर के वेब सर्वर तक पहुंच आसान है। यह दो तरीकों का उपयोग करके आसानी से किया जा सकता है। पहले निम्न कार्य करें

  • डिवाइस पर जाएं और नेटवर्क एडेप्टर चुनें ...
  • एडेप्टर सेटिंग्स में, अटैच टू के लिए चेक करें ।
  • यदि मान NAT है , तो निम्न कार्य करें

  • जब आप वर्चुअल बॉक्स सेटअप करते हैं तो डिफ़ॉल्ट गेटवे आमतौर 10.0.2.2पर डिफ़ॉल्ट मान के रूप में होता है। यदि आपने कुछ भी नहीं बदला है तो यह काम करेगा। लेकिन अगर आपने इसे बदल दिया है और आप जिस गेस्ट मशीन को चला रहे हैं, वह कमांड के बाद चलने वाली विंडो है और डिफॉल्ट गेटवे का पता लगाएं

    ipconfig /all

    यदि आप लिनक्स, यूनिक्स या मैक ओएस पर हैं, तो इसे प्राप्त करने के लिए निम्न कमांड चलाएँ

    netstat -rn | grep 'default' | awk '{print $2}'

  • वेब ब्राउज़र पर जाएं और इस डिफ़ॉल्ट गेटवे में टाइप करें और एंटर दबाएं। वेब सर्वर तक पहुँचा जा सकता है।

  • यदि मान Bridged एडाप्टर है , तो निम्न कार्य करें
    • मेजबान और अतिथि के आईपी पते का पता लगाएं
      • यदि आप खिड़कियों पर हैं, तो चलाएं ipconfigऔर आईपी पता प्राप्त करें
      • यदि आप लिनक्स, यूनिक्स या मैक ओएस पर हैं, तो चलाएं ifconfig | grep 'inet' और आईपी एड्रेस प्राप्त करें
      • IP पता 192.168.1.1 जैसा है
    • यदि आप होस्ट तक पहुंचना चाहते हैं, तो अतिथि में ब्राउज़र चलाएं और होस्ट का आईपी पता दर्ज करें
    • यदि आप अतिथि का उपयोग करना चाहते हैं, तो होस्ट में ब्राउज़र चलाएं और अतिथि का आईपी पता दर्ज करें

9

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

  • आपके VM के पास "होस्ट केवल" एडेप्टर कॉन्फ़िगर है;
  • आपकी होस्ट सेवाओं को सभी स्थानीय एडेप्टर पर सुनना चाहिए, या कम से कम जिन्हें आप संपर्क करने में सक्षम होना चाहते हैं;
  • आपके होस्ट को अपना स्वयं का वर्चुअल एडॉप्टर मिलेगा, और आप इसका आईपी पता लगाना चाहते हैं और इसे अपने गेस्ट ओएस में "होस्ट" फ़ाइल में जोड़ सकते हैं (हालांकि जो अतिथि ओएस के लिए काम करता है; विंडोज एक्सपी पर, यह सिर्फ "है" होस्ट "फ़ाइल C: / WINDOWS / system32 / ड्राइवरों / आदि में दफन)। इसे एक नाम दें जिसे आप मेजबान के होस्ट नाम के लिए उपयोग करना चाहते हैं।

एक बार जब आप ऐसा कर लेते हैं, तो आपको VM से होस्ट को होस्ट फ़ाइल में कोड किए गए नाम के साथ "देखना" करना चाहिए।

उदाहरण के लिए, मेरे Ubuntu 11.04 होस्ट पर, मुझे 192.168.56.1 पर "vboxnet0" वर्चुअल इंटरफ़ेस मिलता है। मशीनों में एडेप्टर 192.168.56.101 जैसे कुछ के साथ आते हैं। मुझे अपने वीएम में जाने की आवश्यकता नहीं है , लेकिन मुझे लगता है कि मेजबान के मेजबान फ़ाइल में एक सममित परिवर्तन के माध्यम से संभव होगा। मैंने जोड़ा

192.168.56.1 mymachine

अतिथि OS होस्ट फ़ाइलों के लिए, और वे (उदाहरण के लिए) मेरे होस्ट मशीन के वेब सर्वर को देख सकते हैं

http://mymachine/whatever

तुम निश्चित रूप से दोनों और मेजबान केवल एडेप्टर स्थापित कर सकते हैं।


0

आप VirtualBox में साझा किए गए फ़ोल्डर बना सकते हैं। यह स्वचालित रूप से आपके होस्ट ओएस में फ़ोल्डरों तक पहुंचने के लिए वर्चुअल बॉक्स के भीतर एक 'नेटवर्क शेयर' बनाएगा।

यहाँ Windows XP अतिथि OS में एक अच्छा कदम है:

http://www.giannistsakiris.com/index.php/2007/09/28/virtualbox-access-shared-folders-from-windows-xp-guest-os/


तो मैं अपने होस्ट को / vboxsvr / ShareName पर एक्सेस कर सकता हूं?
नत्फ़ुली काई

हाँ, आप C: \ STUFF जैसे एक फ़ोल्डर को VirtualBox के साथ साझा करने के लिए सेट करेंगे। वर्चुअलबॉक्स अतिथि ओएस के भीतर, आप उस vboxserver पर जा सकते हैं और साझा किए गए फ़ोल्डरों तक पहुंच सकते हैं।
कोबाल्टज

मुझे वास्तव में साझा फ़ोल्डर नहीं चाहिए। मुझे अपने होस्ट मशीन के लिए एक आईपी पता चाहिए। जब मैं इसे प्राप्त करता हूं, तो मैं इसका उपयोग अपनी होस्ट मशीन पर सेवाओं का उपयोग करने के लिए करना चाहता हूं, अर्थात: echo "GET /\r\n\r\n" | nc 192.168.100.100 80(अतिथि से मेरे होस्ट मशीन पर एक HTTP जीईटी अनुरोध भेजें।)
नाफ्टुली के

1
उस स्थिति में, आपको अपने अतिथि OS नेटवर्क एडेप्टर को ब्रिज पर सेट करने की आवश्यकता हो सकती है। यह आपके डीएचसीपी या राउटर से एक आईपी एड्रेस खींचेगा। फिर आप VBox Shared Folder के बजाय IP होस्ट के माध्यम से अपनी होस्ट मशीन को मूल रूप से एक्सेस कर पाएंगे।
कोबाल्टज

0

यहां एक अतिरिक्त नेटवर्क इंटरफ़ेस का उपयोग करके और अतिरिक्त इंटरफ़ेस पर रूट करने के लिए होस्ट के लिए नियत ट्रैफ़िक सेट करके इस समस्या का एक और समाधान है।


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