VirtualBox में NAT नेटवर्क में VMs पर कोई इंटरनेट एक्सेस नहीं है


14

मैं निम्नलिखित सेटिंग्स के साथ Ubuntu 14.04 LTS में VirtulBox 5 में एक NAT नेटवर्क बनाया है

नैटवर्क नाम: NatNetwrok1
नेटवर्क CIDR: 10.0.2.0/24
समर्थन DHCP: सक्षम
समर्थन IPv6:
बिना किसी पोर्ट अग्रेषण के अक्षम

इसके अतिरिक्त मेरे पास दो VM (दोनों Xubuntu क्लोन) हैं, मैंने सभी चार एडाप्टर में निम्नलिखित सेटिंग्स के साथ VM के प्रत्येक पर दो NIC को सक्षम करने के लिए नेटवर्क सेटिंग्स निर्धारित की हैं:

संलग्न: "नेट नेटवर्क"
नाम: "नेटनेट्रोक 1"

जब मैं दोनों VMs चलाता हूं तो मैं ifconfig कमांड चलाने के लिए निम्नलिखित सेटिंग्स देख सकता हूं

ifconfig Xubuntu1 पर परिणाम देता है

eth0      Link encap:Ethernet  HWaddr 08:00:27:00:8c:03  
          inet addr:10.0.2.9  Bcast:10.0.2.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe00:8c03/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:43 errors:0 dropped:0 overruns:0 frame:0
          TX packets:47 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:12133 (12.1 KB)  TX bytes:8517 (8.5 KB)

eth1      Link encap:Ethernet  HWaddr 08:00:27:9e:20:e8  
          inet addr:10.0.2.8  Bcast:10.0.2.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe9e:20e8/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:43 errors:0 dropped:0 overruns:0 frame:0
          TX packets:48 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:10294 (10.2 KB)  TX bytes:8798 (8.7 KB)

ifconfig Xubutracentu2 पर परिणाम देता है

eth0      Link encap:Ethernet  HWaddr 08:00:27:00:8c:03  
          inet addr:10.0.2.9  Bcast:10.0.2.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe00:8c03/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:43 errors:0 dropped:0 overruns:0 frame:0
          TX packets:47 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:12133 (12.1 KB)  TX bytes:8517 (8.5 KB)

eth1      Link encap:Ethernet  HWaddr 08:00:27:9e:20:e8  
          inet addr:10.0.2.8  Bcast:10.0.2.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe9e:20e8/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:43 errors:0 dropped:0 overruns:0 frame:0
          TX packets:48 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:10294 (10.2 KB)  TX bytes:8798 (8.7 KB)

इन 4 आईपी के बीच पिंग ठीक काम करता है
लेकिन मैं इन वीएम में से किसी पर भी इंटरनेट का उपयोग नहीं कर सकता हूं
जबकि अगर ओ "नैट नेटवर्क" को "एनएटी" में बदल देता है तो मैं नेटवर्क का उपयोग कर सकता हूं लेकिन ऐसा लगता है कि यह अलग-अलग वर्चुअल नेटवर्क का हिस्सा है और मैं पिंग नहीं कर सकता उन्हें एक दूसरे से
कोई भी समस्या की पहचान करने और ठीक करने में मेरी मदद कर सकता है

क्या कोई यह भी बता सकता है कि NAT और NAT नेटवर्क में क्या अंतर है


एक ही मुद्दा ... किसी को मदद कर सकता है?
मॉनिटर 35

मैं हाल ही में डिफ़ॉल्ट ubuntu repo से वर्चुअल बॉक्स 5.0.40 का उपयोग करके इस समस्या में भाग गया। इसके चारों ओर जाने के लिए, मैंने प्रत्येक वीएम को दो इंटरफेस के साथ कॉन्फ़िगर किया। एक आंतरिक NatNetwork के साथ, और दूसरा पुल मोड का उपयोग कर। अतिथि OS (ubuntu 16.04) के तहत, आपको दूसरे इंटरफ़ेस के लिए अतिथि में दिखाने के लिए / etc / network / interfaces को ट्वीक करना होगा। इससे प्रत्येक वीएम के लिए आंतरिक NAT में होना संभव है और एक ही समय में इंटरनेट तक पहुंच है।
जूलियोएचएम

जवाबों:


7

काम क्यों नहीं कर रहे हैं?

16.04 (और शायद 14.04) में नेट नेटवर्क का मुख्य पैक संस्करण की सुविधा VirtualBox (5.0.36) है bugged

इसे जाँचे!

आप इसे स्वयं देख सकते हैं: यदि ls /usr/lib/virtualbox/VBoxNetNATनिष्पादन योग्य मौजूद है, तो आपके पास कुछ अन्य प्रकार का मुद्दा हो सकता है।

इसे ठीक करो!

यह बग नए संस्करणों में तय किया गया है। तो आपको एक नया संस्करण स्थापित करना चाहिए:

पुराना संस्करण निकालें

उदाहरण के लिए यदि आप उपयोग aptकर रहे हैं तो आप चला सकते हैं:

sudo apt remove virtualbox --auto-remove

नया संस्करण स्थापित करें

फिक्स नए संस्करणों के लिए उपलब्ध है (उबंटू याक्विटी +)। पुराने संस्करणों के लिए:

  • Virtualbox.org पर जाएँ, और नवीनतम संस्करण को मैन्युअल रूप से डाउनलोड करें
  • या
  • निम्नलिखित स्क्रिप्ट का उपयोग करें:

    # add the official repository
    wget -q -O - https://www.virtualbox.org/download/oracle_vbox_2016.asc | sudo apt-key add -
    echo deb http://download.virtualbox.org/virtualbox/debian `lsb_release -cs` non-free contrib | sudo tee /etc/apt/sources.list.d/virtualbox.org.list
    # install the newer version
    sudo apt install virtualbox-5.1
    

1
यदि आपके पास वर्चुअलबॉक्स का पिछला संस्करण स्थापित है, तो सुनिश्चित करें कि आपने virtualbox-dkmsइस फ़िक्स के लिए भी स्थापना रद्द कर दी है। अन्यथा, आप अभी भी इंटरनेट के बिना फंस सकते हैं
बराक इटकिन

7

मैं डिफ़ॉल्ट apt रिपॉजिटरी से VirtualBox 5.0.40 का उपयोग करके इस में भाग गया। इसके चारों ओर पाने के लिए, मैंने प्रत्येक वीएम को दो नेटवर्क इंटरफेस का उपयोग करने के लिए कॉन्फ़िगर किया है।

  • एडाप्टर 1: ब्रिज एडेप्टर (अपने असली निक के लिए)
  • एडाप्टर 2: NAT नेटवर्क (अपनी पसंद का)

Guets OS (Ubuntu 16.04) के तहत, /etc/network/interfacesदूसरे इंटरफ़ेस को दिखाने के लिए आपको ट्वीक करने की आवश्यकता होगी । मेरे मामले में, मुझे NAT नेटवर्क के अंदर स्थिर IP का उपयोग करने के लिए VMs की आवश्यकता थी, इसलिए मुझे यही मिला।

## Bridge to Internet
auto enp0s3
iface enp0s3 inet dhcp

## NAT Network among VMs
## Static is optional
## DHCP if you don't need it
auto enp0s8
iface enp0s8 inet static
  address 10.10.11.100
  netmask 255.255.255.0

यह, निश्चित रूप से, मेरा नेट नेटवर्क सबनेट का उपयोग करता है 10.10.11.0/24। अपने परिदृश्य के अनुकूल नंबरों को या बस अपनी इच्छानुसार इसे dhcp पर छोड़ दें।

नोट: स्थैतिक विन्यास में ध्यान देने योग्य एक महत्वपूर्ण बात यह है कि, इस विशेष परिदृश्य के लिए, आप इसे डिफ़ॉल्ट गेटवे निर्दिष्ट नहीं कर सकते। enp0s8एक डिफ़ॉल्ट (जैसे 10.10.11.1) देने से ओएस इस गेटवे के लिए एक मार्ग बना देगा और यह मार्ग आपके इंटरनेट एक्सेस को भी खराब कर सकता है। आपको केवल यह करने की आवश्यकता है कि जब इस विशेष इंटरफ़ेस को अन्य नेटवर्क के लिए मार्गों की आवश्यकता होती है, तो इसे कॉन्फ़िगर किए गए एक तरफ से।

अपने पर्यावरण के लिए उबंटू द्वारा निर्दिष्ट इंटरफ़ेस नाम जानने के लिए, आप कर सकते हैं dmesg | grep eth

यहाँ छवि विवरण दर्ज करें


खदान ने बेहतर काम किया जब मैंने eth0 और eth1 दोनों के लिए 'dhcp' का इस्तेमाल किया। यह केवल NAT के लिए 10.0.2.15 को स्वचालित रूप से असाइन किया गया है और मेरे सार्वजनिक इंटरनेट eth1 में एक IP नहीं है, लेकिन मैं VM से इंटरनेट को पिंग कर सकता हूं!
मिल्लन

6

वर्चुअलबॉक्स मैनुअल के अनुसार, ये आपके वीएम के लिए नेटवर्क संभावनाएं हैं:

  • NAT: VM और होस्ट के बीच आंतरिक नेटवर्क। इसके अलावा आप इंटरनेट तक पहुंच सकते हैं। NAT मोड में दो या अधिक VMs के बीच कनेक्टिविटी नहीं है, केवल होस्ट और इंटरनेट के साथ।

  • आंतरिक: इस कॉन्फ़िगरेशन वाले सभी वीएम के बीच कनेक्टिविटी होगी, लेकिन होस्ट या इंटरनेट के साथ नहीं।

  • केवल होस्ट करें: इस कॉन्फ़िगरेशन के साथ होस्ट और सभी वीएम के बीच एक वर्चुअल नेटवर्क बनाया जाएगा, लेकिन आपके पास कोई इंटरनेट एक्सेस नहीं होगा।

  • NAT नेटवर्क: आप एक ही पूर्व-परिभाषित NAT नेटवर्क और होस्ट में सभी VM तक पहुँच सकते हैं, लेकिन आप इंटरनेट से कनेक्ट नहीं कर पाएंगे।

  • Bridged: आपका VM उसी नेटवर्क में होगा, जिस पर आपका होस्ट इस नेटवर्क में अन्य कंप्यूटर / सर्वर के रूप में है, और इस प्रकार, यदि आपका होस्ट है तो उसके पास इंटरनेट शुल्क होगा।

  • सामान्य: उन्नत और अधिक विशिष्ट कॉन्फ़िगरेशन शायद ही कभी उपयोग किए जाते हैं।

इसलिए, यदि आप एनएटी नेटवर्क को होस्ट करने के लिए कनेक्टिविटी के साथ एक आंतरिक नेटवर्क बनाना चाहते हैं, लेकिन ध्यान दें कि आपके पास कोई इंटरनेट एक्सेस नहीं होगा। NAT केवल तब सेट किया जाता है जब आप सिर्फ अपने VM से इंटरनेट एक्सेस चाहते हैं और कुछ नहीं।

हालाँकि, इनमें से कोई भी सेटिंग आपके साथ ठीक नहीं है यदि आप वीएम और इंटरनेट दोनों के बीच कनेक्टिविटी चाहते हैं। जहाँ तक मुझे पता है, आपकी एकमात्र पसंद दोनों VMs को ब्रिज मोड में कॉन्फ़िगर करना है, इसलिए वे आपके द्वारा होस्ट नेटवर्क में 'अलग-अलग' कंप्यूटर होंगे और आप उन सभी और इंटरनेट को उनमें से किसी से भी पिंग कर पाएंगे।

दूसरी ओर, ऐसा लगता है कि आपने एक वीएम को दूसरे से क्लोन किया है क्योंकि दोनों मशीनों में एक ही मैक एड्रेस ( ifconfig कमांड जानकारी में HWaddr ) है, इस बात से अवगत रहें कि आपको चेकबॉक्स की जांच करनी चाहिए जो पढ़ता है " सभी नेटवर्क कार्ड के मैक एड्रेस को रीइंस्ट्रिक्ट करें। "जब क्लोनिंग। एक ही मैक पते वाले दो डिवाइस हमेशा समस्याएं पैदा करते हैं।

मैं वर्चुअलबॉक्स का विशेषज्ञ नहीं हूं इसलिए हो सकता है कि अन्य उपयोगकर्ता आपको अन्य पॉज़िटिव कॉन्फ़िगरेशन बता सकें कि आपको क्या चाहिए। उम्मीद है आपको यह जानकारी उपयोगी लगेगी।

अधिक जानकारी के लिए आप पढ़ सकते हैं इस


3
यह सच नहीं है कि NAT नेटवर्क आपके मेहमानों को इंटरनेट से जुड़ने से रोकेगा। मैं नेट नेटवर्क पर वीएम मेहमानों से इंटरनेट से जुड़ सकता हूं। मंचों पर अंतिम टिप्पणी के अनुसार .virtualbox.org / viewtopic.php?f=3&t=69504 , "NAT मोड का अर्थ है कि प्रत्येक VM अपने ही राउटर के पीछे अलग-थलग है ... NAT नेटवर्क NAT के समान है, सिवाय इसके कि आप कोई VM हो सकते हैं उसी आंतरिक राउटर से जुड़ा। "
eebbesen

2

यह VirtualBox में एक बग हो सकता है। मैंने एक ही (Ubuntu 16.04.2 LTS, VirtualBox 5.0.32_Ubuntu r112930) का अनुभव किया है: एक NAT नेटवर्क सेट करें, जो दो उबंटू VMs के लिए कॉन्फ़िगर किया गया है। प्रत्येक वीएम दूसरे में पिंग / एसएसएच कर सकता है, और पोर्ट फॉरवर्डिंग के माध्यम से मैं प्रत्येक वीएम में मेजबान से एसएसएच कर सकता हूं। लेकिन वीएम के अंदर से कोई इंटरनेट एक्सेस नहीं है। एक सहकर्मी ने विंडोज होस्ट, वर्चुअलबॉक्स (अज्ञात संस्करण) और उसी वीएम के साथ एक ही कोशिश की, और यह काम कर गया।

वर्कअराउंड के रूप में, मैंने प्रत्येक वीएम के लिए एक दूसरा नेटवर्क कार्ड कॉन्फ़िगर किया है: पहला इंटरनेट का उपयोग करने के लिए एनएटी, दूसरा अतिथि (नों) का उपयोग करने के लिए "एनएटी नेटवर्क" का उपयोग करने वाला दूसरा। मुझे पहले (NAT) कार्ड पर SSH पोर्ट अग्रेषित करना था, और VM (2222 -> 22 VM1, 2223 -> VM2 पर 23) पर एक अलग SSH पोर्ट कॉन्फ़िगर करना था।

प्रलेखन के आधार पर , NAT और NAT नेटवर्क दोनों को इंटरनेट तक पहुंचने में सक्षम होना चाहिए। अंतर यह है कि पहले ने मेजबान, अतिथि कनेक्शन को अलग कर दिया है, इसलिए मेहमान एक-दूसरे तक नहीं पहुंच सकते हैं, केवल मेजबान। बाद वाले सभी मेहमान एक ही नेटवर्क में आते हैं (और डीएचसीपी जैसी सेवाएं प्रदान करते हैं), ताकि वे एक-दूसरे तक पहुंच सकें।

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