होस्टनाम द्वारा VMWare फ्यूजन लिनक्स अतिथि को संबोधित करें?


11

मेरे पास एक उबंटू सर्वर 9.04 इमेज है जो VMWare Fusion 3.0.0 में स्थापित है, जो अतिथि के नेटवर्क कनेक्शन के लिए NAT विकल्प का उपयोग कर रहा है। मैक होस्ट से, मैं आईपी पते का उपयोग करके लिनक्स अतिथि को ठीक कर सकता हूं, लेकिन मैं सुविधा के लिए होस्टनाम द्वारा इसका उल्लेख करने में सक्षम होना चाहूंगा। अर्थात:

mac-host:~ ssh user@linux-guest.local

मेरे पास कुछ साल पहले समानताओं का उपयोग करके एक समान सेटअप था, लेकिन मुझे याद नहीं है कि इसे कैसे सेट किया गया था। इसमें "बस काम" हो सकता है।

इस काम को करने के बारे में कोई सुझाव?

जवाबों:


14

संपादित करें निर्देशों का पहला संस्करण जो मैंने पोस्ट किया है वह वीएमनेट 8 पर वीएमवेयर के नाम और गेटवे के साथ टकराव का कारण बना। यह संस्करण समस्या को ठीक करता है।

सॉफ्टवेयर संस्करण:

  • मैक ओएस एक्स संस्करण 10.6.3
  • VMware संलयन संस्करण 3.1.0 (261058)
  • उबंटू 10.04 एलटीएस

मैंने क्या किया है:

  • VM के निर्माण के दौरान, NAT को नेटवर्किंग सेट करें।

  • लिनक्स गेस्ट पर: हार्डवेयर एड्रेस HWaddr, ब्रॉडकास्ट एड्रेस Bcast, IPv4 इंटरनेट एड्रेस inet addrऔर मास्क Maskका इस्तेमाल करने के लिए ifconfig चलाएं ।

    UbuntuGuest$ifconfig
    eth0      Link encap:Ethernet  HWaddr 00:0c:29:53:bf:e5  
              inet addr:192.168.213.129  Bcast:192.168.213.255  Mask:255.255.255.0
                     <snip>
    
  • लिनक्स अतिथि पर: नेमसर्वर जानकारी देखें

    UbuntuGuest$cat /etc/resolv.conf
    nameserver 192.168.213.2
    domain localdomain
    search localdomain
    
  • लिनक्स गेस्ट पर: गेटवे एड्रेस लुकअप करें: (लाइन के गेटवे कॉलम में सूचीबद्ध 0.0.0.0 डेस्टिनेशन के रूप में।)

    UbuntuGuest$route -n
    Kernel IP routing table
    Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
    192.168.213.0   0.0.0.0         255.255.255.0   U     0      0        0 eth0
    0.0.0.0         192.168.213.2   0.0.0.0         UG    100    0        0 eth0
    
  • OS X होस्ट पर: Linux अतिथि को एक स्थिर IP पता असाइन करने के dhcpd.confलिए vmnet8(NAT वर्चुअल स्विच) के लिए फ़ाइल संपादित करें । (चौथी पंक्ति पर अपनी पसंद के संपादक का उपयोग करें)

    OSXHost$cd /Library/Application\ Support/VMware\ Fusion/vmnet8/
    OSXHost$sudo chmod u+w dhcpd.conf
    OSXHost$sudo cp dhcpd.conf dhcpd.conf.bak.20100619
    OSXHost$sudo emacs dhcpd.conf
    
  • OS X होस्ट पर: फ़ाइल कुछ इस तरह दिखने लगेगी:

    # Configuration file for ISC 2.0 vmnet-dhcpd operating on vmnet8.
    #
    # This file was automatically generated by the VMware configuration program.
    # See Instructions below if you want to modify it.
    #
    # We set domain-name-servers to make some DHCP clients happy
    # (dhclient as configured in SuSE, TurboLinux, etc.).
    # We also supply a domain name to make pump (Red Hat 6.x) happy.
    #
    
    
    ###### VMNET DHCP Configuration. Start of "DO NOT MODIFY SECTION" #####
    # Modification Instructions: This section of the configuration file contains
    # information generated by the configuration program. Do not modify this
    # section.
    # You are free to modify everything else. Also, this section must start
    # on a new line
    # This file will get backed up with a different name in the same directory
    # if this section is edited and you try to configure DHCP again.
    
    # Written at: 12/26/2009 10:35:10
    allow unknown-clients;
    default-lease-time 1800;                # default is 30 minutes
    max-lease-time 7200;                    # default is 2 hours
    
    subnet 192.168.213.0 netmask 255.255.255.0 {
          range 192.168.213.128 192.168.213.254;
          option broadcast-address 192.168.213.255;
          option domain-name-servers 192.168.213.2;
          option domain-name localdomain;
          default-lease-time 1800;         # default is 30 minutes
          max-lease-time 7200;             # default is 2 hours
      option routers 192.168.213.2;
    }
    host vmnet8 {
        hardware ethernet 00:50:56:C0:00:08;
        fixed-address 192.168.213.1;
        option domain-name-servers 0.0.0.0;
        option domain-name "";
        option routers 0.0.0.0;
    }
    ####### VMNET DHCP Configuration. End of "DO NOT MODIFY SECTION" #######
    

ध्यान देने योग्य बातें:

  • subnetअनुभाग लिनक्स अतिथि पर एकत्र IP जानकारी से मेल खाना चाहिए। inet addrभीतर हो जाएगा range, netmaskसे मेल खाएगी Mask, option broadcast-addressसे मेल खाएगा Bcast, option domain-name-serversऔर option domain-nameजानकारी के साथ इकट्ठा की भरपाई कर देंगे cat /etc/resolv.confऔर option routersसे मेल खाएगी Gatewayसे route -nआदेश।

  • हम एक स्थिर आईपी पता देना चाहते हैं, ताकि हम ओएस एक्स होस्ट की hostsफ़ाइल में एक प्रविष्टि जोड़ सकें । पता subnetपरिभाषित के भीतर होना चाहिए । वे पते जो असाइन करने के लिए उपलब्ध नहीं हैं, वे rangeसबनेट सेक्शन, ब्रॉडकास्ट एड्रेस, fixed-addressफॉर host vmnet8, डीएनएस सर्वर और गेटवे के भीतर हैं। और मुझे लगता है कि सबनेट के बराबर पते की अनुमति नहीं है। इस उदाहरण में, सबनेट है 192.168.213.0इसलिए उपलब्ध पते 192.168.213.1 to 192.168.213.255कम 192.168.213.128 to 192.168.213.245(सीमा) कम 192.168.213.255(प्रसारण) कम 192.168.213.1(मेजबान vmnet8) कम 192.168.213.2(गेटवे और डीएनएस सर्वर) से हैं। नेट यह है कि पते 192.168.213.3 to 192.168.213.127उपलब्ध हैं।


  • पर ओएस एक्स मेजबान: एक नया बनाएं hostनीचे प्रविष्टि डीओ, उसे संशोधित धारा । यह प्रविष्टि लिनक्स अतिथि को एक स्थिर आईपी प्रदान करेगी। लिनक्स अतिथि से hardware ethernetमिलान करने की आवश्यकता है । के लिए उपलब्ध स्थिर पता चुनें । , , और विकल्पों में दिए गए मैच के लिए जरूरत की धारा । (जो हम पहले ही लिनक्स अतिथि पर एकत्रित जानकारी के खिलाफ मिलान कर चुके हैं।) इस उदाहरण में मेजबान प्रविष्टि है:HWaddrifconfigfixed-addressoption broadcast-addressoption domain-name-serversoption domain-nameoption routerssubnetdhcpd.conf

    ####### VMNET DHCP Configuration. End of "DO NOT MODIFY SECTION" #######
    host serpents-hold {
        hardware ethernet 00:0c:29:53:bf:e5;
        fixed-address 192.168.213.3;
        option broadcast-address 192.168.213.255;
        option domain-name-servers 192.168.213.2;
        option domain-name localdomain;
        option routers 192.168.213.2;
    }
    
  • OS X होस्ट सहेजें पर dhcpd.confऔर अपने संपादक को बंद करें।

  • OS X होस्ट और सभी मेहमान: सभी VMs और VMware को बंद करें।

  • OS X होस्ट पर: VMware सेवाओं को पुनरारंभ करें:

    OSXHost$cd /Library/Application\ Support/VMware\ Fusion/ 
    OSXHost$sudo ./boot.sh --restart 
    
  • OS X होस्ट पर: देखें Activity Monitorऔर सुनिश्चित करें कि प्रत्येक नाम की दो प्रक्रियाएं vmnet-dhcpdचल रही हैं। (एक vmnet8, NAT नेटवर्क के लिए है, दूसरा होस्ट केवल नेटवर्क के लिए है।) यदि आप दोनों को नहीं देखते हैं, तो संभवतः vmnet8/dhcpd.confOS X होस्ट पर फ़ाइल में कोई समस्या है । इसे ठीक करें और VMware सेवाओं के पुनरारंभ को दोहराएं।

  • OS X होस्ट पर: VMware और Linux अतिथि VM को प्रारंभ करें।

  • Linux अतिथि पर अतिथि VM जाँच करें कि सेटिंग्स अपेक्षित हैं:

    UbuntuGuest$ifconfig
    eth0      Link encap:Ethernet  HWaddr 00:0c:29:53:bf:e5  
              inet addr:192.168.213.3  Bcast:192.168.213.255  Mask:255.255.255.0
              inet6 addr: fe80::20c:29ff:fe53:bfe5/64 Scope:Link
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
              RX packets:103 errors:0 dropped:0 overruns:0 frame:0
              TX packets:71 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000 
              RX bytes:10961 (10.9 KB)  TX bytes:9637 (9.6 KB)
    lo <snip>    
    UbuntuGuest$cat /etc/resolv.conf
    nameserver 192.168.213.2
    domain localdomain
    search localdomain
    UbuntuGuest$route -n
    Kernel IP routing table
    Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
    192.168.213.0   0.0.0.0         255.255.255.0   U     0      0        0 eth0
    0.0.0.0         192.168.213.2   0.0.0.0         UG    100    0        0 eth0
    UbuntuGuest$
    
  • लिनक्स अतिथि पर: जांचें कि बाहरी दुनिया उपलब्ध है:

    UbuntuGuest$ping google.com
    PING google.com (72.14.213.104) 56(84) bytes of data.
    64 bytes from pv-in-f104.1e100.net (72.14.213.104): icmp_seq=1 ttl=128 time=47.6 ms
    64 bytes from 2.bp.blogspot.com (72.14.213.104): icmp_seq=2 ttl=128 time=48.7 ms
    64 bytes from 2.bp.blogspot.com (72.14.213.104): icmp_seq=3 ttl=128 time=48.2 ms
    ^C
    --- google.com ping statistics ---
    4 packets transmitted, 3 received, 25% packet loss, time 3093ms
    rtt min/avg/max/mdev = 47.687/48.223/48.714/0.491 ms
    UbuntuGuest$
    
  • OS X होस्ट पर:hosts फ़ाइल में hostname के लिए एक मैपिंग जोड़ें :

    OSXHost$cd /etc
    OSXHost$sudo emacs hosts
    

    लिनक्स अतिथि के होस्टनाम और ऊपर निर्दिष्ट आईपी पते का उपयोग करके होस्ट फ़ाइल के अंत में एक पंक्ति जोड़ें।

    192.168.213.2   serpents-hold
    
  • OS X होस्ट पर: फ़ाइल को सहेजें और Emacs से बाहर निकलें।

  • OS X होस्ट पर: टेस्ट करें कि लिनक्स गेस्ट होस्टनाम द्वारा उपलब्ध है:

    OSXHost$ping serpents-hold
    PING serpents-hold (192.168.213.3): 56 data bytes
    64 bytes from 192.168.213.3: icmp_seq=0 ttl=64 time=0.169 ms
    64 bytes from 192.168.213.3: icmp_seq=1 ttl=64 time=0.244 ms
    ^C
    --- serpents-hold ping statistics ---
    2 packets transmitted, 2 packets received, 0.0% packet loss
    round-trip min/avg/max/stddev = 0.169/0.207/0.244/0.037 ms
    OSXHost$
    

यह बहुत अच्छा है ... अगर आपका OSX होस्ट है। काश मैं खिड़कियों को कहीं और समतुल्य पाता।
टीजे एल

1
बढ़िया जानकारी। धन्यवाद। V4.x के लिए 2 अपडेट 1. dhcpd.conf का स्थान अब है: "/ लाइब्रेरी / वरीयताएँ / VMware फ्यूजन /" 2. फ्यूजन 4 में, फ्यूजन बंद होने पर नेटवर्किंग सेवा नहीं चलती है। नेटवर्किंग सेवा को पुनरारंभ करने के लिए, फ्यूजन को पुनरारंभ करें।
सिम्मट्री

8

मूल प्रश्न का एक चरण उत्तर इस आदेश को चलाने के लिए है:

$ sudo apt-get Install libnss-mdns

इस पैकेज को स्थापित करने से सुविधा को तुरंत सक्षम होना चाहिए। फिर आप अपने वीएम पर प्राप्त कर सकेंगे your-vm-hostname.local। यह केवल वीएम के स्थानीय नेटवर्क के भीतर काम करेगा, जो इस बात पर निर्भर करता है कि आपने इसे अपने वर्चुअलाइजेशन सॉफ्टवेयर में कैसे कॉन्फ़िगर किया है।

इस फीचर को Apple और Zeroconf द्वारा अन्य सभी के द्वारा Bonjour कहा जाता है। इसे OS X और iOS में बनाया गया है। विंडोज पर इसे प्राप्त करने का सबसे आसान तरीका विंडोज के लिए आईट्यून्स स्थापित करना है।


इसका उपयोग करते हुए, मुझे अतिथि मशीन के नाम के लिए '.local' को जोड़ने की आवश्यकता है, उदाहरण के लिए ubuntu-guest.local, जब मैं इसे होस्ट की ओर से संदर्भित करता हूं। एक तरफ, यह अद्भुत काम करता है!
नथानिएल वैबब्रोट

@NathanielWaisbrot यह सच है। यही मूल पोस्टर चाहता था।
hashemi

3

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


2

यह मानते हुए कि आप केवल एक कमांड लाइन पर लॉगिन करना चाहते हैं, एक ssh config फाइल क्यों नहीं बनाते ? मैं अपने vm के लिए ऐसा कुछ करता हूँ।

# ~/.ssh/config
Host linux-box    
Hostname localhost
Port 8822

तो मैं कर सकता हूँ

mac-box:~ ssh linux-box

1

यदि आप NAT का उपयोग कर रहे हैं, तो यह DNS सर्वर के साथ रजिस्टर करने की कोशिश कर सकता है, हालाँकि होस्ट के अलावा अन्य कंप्यूटरों के लिए, यह IP आपकी मशीनों के समान होगा और कुछ समस्याओं का कारण बन सकता है।

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


1
हां मुझे लगता है कि यह काम करेगा, लेकिन मैं एक स्थिर निजी नेटवर्क पसंद करूंगा। VM एक लैपटॉप पर है जो घूमता रहता है और कभी-कभी इंटरनेट कनेक्शन नहीं होता है। यदि मैंने ब्रिज-मोड का उपयोग किया है, तो होस्ट ऑफलाइन होने पर मैं उससे संपर्क नहीं कर पाऊंगा।
आम्र्स
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.