How to get VirtualBox VMs to use host's DNS?












60














I use VirtualBox for my VMs. My office network setup is wireless, i.e. I connect to my company's WiFi network, which has a local DNS to resolve local names (such as something.mycompany.com going to 123.45.67.89). When I build a new VM, it can connect to the outside internet inheriting the host's connection but it doesn't resolve local names using the local DNS. So I have to go into /etc/hosts on the VM and manually make an entry after I resolve the name on the host, which is annoying.



Is there a way to have VirtualBox automatically connect the guest to the host's DNS so that I do not have to do this manual step? My host is OSX Mountain Lion, the VMs are typically Ubuntu but I doubt that should matter.










share|improve this question





























    60














    I use VirtualBox for my VMs. My office network setup is wireless, i.e. I connect to my company's WiFi network, which has a local DNS to resolve local names (such as something.mycompany.com going to 123.45.67.89). When I build a new VM, it can connect to the outside internet inheriting the host's connection but it doesn't resolve local names using the local DNS. So I have to go into /etc/hosts on the VM and manually make an entry after I resolve the name on the host, which is annoying.



    Is there a way to have VirtualBox automatically connect the guest to the host's DNS so that I do not have to do this manual step? My host is OSX Mountain Lion, the VMs are typically Ubuntu but I doubt that should matter.










    share|improve this question



























      60












      60








      60


      33





      I use VirtualBox for my VMs. My office network setup is wireless, i.e. I connect to my company's WiFi network, which has a local DNS to resolve local names (such as something.mycompany.com going to 123.45.67.89). When I build a new VM, it can connect to the outside internet inheriting the host's connection but it doesn't resolve local names using the local DNS. So I have to go into /etc/hosts on the VM and manually make an entry after I resolve the name on the host, which is annoying.



      Is there a way to have VirtualBox automatically connect the guest to the host's DNS so that I do not have to do this manual step? My host is OSX Mountain Lion, the VMs are typically Ubuntu but I doubt that should matter.










      share|improve this question















      I use VirtualBox for my VMs. My office network setup is wireless, i.e. I connect to my company's WiFi network, which has a local DNS to resolve local names (such as something.mycompany.com going to 123.45.67.89). When I build a new VM, it can connect to the outside internet inheriting the host's connection but it doesn't resolve local names using the local DNS. So I have to go into /etc/hosts on the VM and manually make an entry after I resolve the name on the host, which is annoying.



      Is there a way to have VirtualBox automatically connect the guest to the host's DNS so that I do not have to do this manual step? My host is OSX Mountain Lion, the VMs are typically Ubuntu but I doubt that should matter.







      networking virtualbox dns virtualization






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited May 2 '17 at 14:48

























      asked Sep 6 '13 at 15:48









      amphibient

      74351331




      74351331






















          5 Answers
          5






          active

          oldest

          votes


















          87














          To enable DNS Proxy Mode using the host's resolver,
          run the following command:




          VBoxManage modifyvm "<VM name>" --natdnshostresolver1 on


          As a result, guest OS DNS requests will be intercepted and resolved using host DNS API, rather than having guest OS connect to external DNS servers as with --natdnsproxy1 on.



          You can get the name of the VM by running VBoxManage list runningvms.






          share|improve this answer



















          • 8




            For further information for others: this needs to be run from the host. If your host is Windows, open a Command Prompt, cd to "C:Program FilesOracleVirtualBox", and run that command. There doesn't seem to be any option in the VirtualBox Manager GUI (at least in all versions from 4.* to 5.0.20) which lets you set this any other way.
            – Graham
            Jun 3 '16 at 12:55










          • I'd like to add that you need to run this command as administrator. I tried it from my cmd and it didn't work for me, but then I ran cmd as administrator and it all worked perfectly fine.
            – SergeyOvchinnik
            Dec 19 '16 at 11:24






          • 3




            This used to work for me, but not with Ubuntu 16.04 and the latest virtualbox for Windows
            – Shanteva
            Jun 28 '17 at 12:26










          • Not working for me as well :(
            – Pavel Durov
            Dec 29 '17 at 13:24






          • 1




            This still works with MacOs High Sierra as the host, VirtualBox 5.2.6, running Windows 7 in the VM.
            – John Eikenberry
            Jan 25 at 20:12



















          5














          Yes it is possible. There are many modes available in VirtualBox to establish networking between the guest and the host. Rather than using the NAT mode (which is default), you can use the bridge-mode in which your guest machine can be treated as entirely separate entity on your network. So, not only your host, but any other machine (such as your DNS server) will see your guest as a separate machine.



          Once you setup the bridge-mode, just go to your ubuntu guest and get it to use your company's DNS server name or ip. Read this tutorial for more info: http://prahladyeri.wordpress.com/2012/08/02/how-to-setup-a-virtual-lan-on-your-machine-using-oracle-virtualbox/






          share|improve this answer





























            4














            This was a top Google result, so I wanted to clarify for others. Josiah's solution worked for me with the addition of adding the line:



            "hosts: files dns" to /etc/nsswitch.conf



            As others pointed out, the original solution does not work above Ubuntu 16.04. My guest VM is Ubuntu 16.04.



            Reference Creating Linux Server






            share|improve this answer



















            • 2




              Welcome to Super User! You could propose that as an edit to Josiah's answer, which would help those looking :)
              – bertieb
              Apr 2 at 17:48










            • Thanks for the tip! I tried adding just a comment, but it wasn't allowed. I submitted the edit instead.
              – pretzel11
              Apr 2 at 17:57



















            1














            I've also noticed my VPN connection interferes with vagrant internet connection.



            Thanks to this stackexchange, I was able to resolve by embedding into my Vagrantfile



            config.vm.provider "virtualbox" do |vb|
            vb.cpus = 1
            vb.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
            vb.memory = "2048"
            end


            And avoided the tedium of having to shutdown box to modify via command line, then reprovision



            export PATH=$PATH:/c/Program Files/Oracle/VirtualBox/
            VBoxManage list runningvms
            export vbox=`VBoxManage list runningvms | cut -d '"' -f 2`
            VBoxManage controlvm $vbox poweroff
            VBoxManage modifyvm $vbox --natdnshostresolver1 on
            vagrant.exe up --provision





            share|improve this answer































              -2














              None of these worked for me with my old Ubuntu 12.04 VM. My issue was with the Windows 10 VirtualBox Host-Only Network adapter. Setting the DNS to Google DNS servers in the TCP/IPv4 Properties fixed the issue for me. (see video and attached screenshots)




              1. Open Windows Control Panel > Network and Sharing Center

              2. Click "Change adapter settings"

              3. Right-mouse-click the "VirtualBox Host-Only Network" icon

              4. Select "Properties"

              5. Select "Internet Protocol Version 4 (TCP/IPv4)

              6. Click the "Properties" button

              7. Add your preferred DNS servers in the box

              8. Click the "OK" button

              9. Click the "Close" button


              This change was recognized in my VM after restarting the VM, you could also ifdown/ifup the network from the VM to pull the new DNS settings without rebooting the VM.



              Screenshot of steps to changing TCP/IPv4 DNS in Windows 10



              Quick Tweak (VirtualBox): Network connection loss due to DNS configuration






              share|improve this answer





















              • You totally misunderstood the question. The question is about resolving names in the LAN, not in the internet at large. That already works as expected and need no DNS change.
                – GabrielaGarcia
                Oct 17 at 22:49











              Your Answer








              StackExchange.ready(function() {
              var channelOptions = {
              tags: "".split(" "),
              id: "3"
              };
              initTagRenderer("".split(" "), "".split(" "), channelOptions);

              StackExchange.using("externalEditor", function() {
              // Have to fire editor after snippets, if snippets enabled
              if (StackExchange.settings.snippets.snippetsEnabled) {
              StackExchange.using("snippets", function() {
              createEditor();
              });
              }
              else {
              createEditor();
              }
              });

              function createEditor() {
              StackExchange.prepareEditor({
              heartbeatType: 'answer',
              autoActivateHeartbeat: false,
              convertImagesToLinks: true,
              noModals: true,
              showLowRepImageUploadWarning: true,
              reputationToPostImages: 10,
              bindNavPrevention: true,
              postfix: "",
              imageUploader: {
              brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
              contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
              allowUrls: true
              },
              onDemand: true,
              discardSelector: ".discard-answer"
              ,immediatelyShowMarkdownHelp:true
              });


              }
              });














              draft saved

              draft discarded


















              StackExchange.ready(
              function () {
              StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f641933%2fhow-to-get-virtualbox-vms-to-use-hosts-dns%23new-answer', 'question_page');
              }
              );

              Post as a guest















              Required, but never shown

























              5 Answers
              5






              active

              oldest

              votes








              5 Answers
              5






              active

              oldest

              votes









              active

              oldest

              votes






              active

              oldest

              votes









              87














              To enable DNS Proxy Mode using the host's resolver,
              run the following command:




              VBoxManage modifyvm "<VM name>" --natdnshostresolver1 on


              As a result, guest OS DNS requests will be intercepted and resolved using host DNS API, rather than having guest OS connect to external DNS servers as with --natdnsproxy1 on.



              You can get the name of the VM by running VBoxManage list runningvms.






              share|improve this answer



















              • 8




                For further information for others: this needs to be run from the host. If your host is Windows, open a Command Prompt, cd to "C:Program FilesOracleVirtualBox", and run that command. There doesn't seem to be any option in the VirtualBox Manager GUI (at least in all versions from 4.* to 5.0.20) which lets you set this any other way.
                – Graham
                Jun 3 '16 at 12:55










              • I'd like to add that you need to run this command as administrator. I tried it from my cmd and it didn't work for me, but then I ran cmd as administrator and it all worked perfectly fine.
                – SergeyOvchinnik
                Dec 19 '16 at 11:24






              • 3




                This used to work for me, but not with Ubuntu 16.04 and the latest virtualbox for Windows
                – Shanteva
                Jun 28 '17 at 12:26










              • Not working for me as well :(
                – Pavel Durov
                Dec 29 '17 at 13:24






              • 1




                This still works with MacOs High Sierra as the host, VirtualBox 5.2.6, running Windows 7 in the VM.
                – John Eikenberry
                Jan 25 at 20:12
















              87














              To enable DNS Proxy Mode using the host's resolver,
              run the following command:




              VBoxManage modifyvm "<VM name>" --natdnshostresolver1 on


              As a result, guest OS DNS requests will be intercepted and resolved using host DNS API, rather than having guest OS connect to external DNS servers as with --natdnsproxy1 on.



              You can get the name of the VM by running VBoxManage list runningvms.






              share|improve this answer



















              • 8




                For further information for others: this needs to be run from the host. If your host is Windows, open a Command Prompt, cd to "C:Program FilesOracleVirtualBox", and run that command. There doesn't seem to be any option in the VirtualBox Manager GUI (at least in all versions from 4.* to 5.0.20) which lets you set this any other way.
                – Graham
                Jun 3 '16 at 12:55










              • I'd like to add that you need to run this command as administrator. I tried it from my cmd and it didn't work for me, but then I ran cmd as administrator and it all worked perfectly fine.
                – SergeyOvchinnik
                Dec 19 '16 at 11:24






              • 3




                This used to work for me, but not with Ubuntu 16.04 and the latest virtualbox for Windows
                – Shanteva
                Jun 28 '17 at 12:26










              • Not working for me as well :(
                – Pavel Durov
                Dec 29 '17 at 13:24






              • 1




                This still works with MacOs High Sierra as the host, VirtualBox 5.2.6, running Windows 7 in the VM.
                – John Eikenberry
                Jan 25 at 20:12














              87












              87








              87






              To enable DNS Proxy Mode using the host's resolver,
              run the following command:




              VBoxManage modifyvm "<VM name>" --natdnshostresolver1 on


              As a result, guest OS DNS requests will be intercepted and resolved using host DNS API, rather than having guest OS connect to external DNS servers as with --natdnsproxy1 on.



              You can get the name of the VM by running VBoxManage list runningvms.






              share|improve this answer














              To enable DNS Proxy Mode using the host's resolver,
              run the following command:




              VBoxManage modifyvm "<VM name>" --natdnshostresolver1 on


              As a result, guest OS DNS requests will be intercepted and resolved using host DNS API, rather than having guest OS connect to external DNS servers as with --natdnsproxy1 on.



              You can get the name of the VM by running VBoxManage list runningvms.







              share|improve this answer














              share|improve this answer



              share|improve this answer








              edited Dec 21 at 20:56









              Scott

              15.5k113889




              15.5k113889










              answered Feb 28 '14 at 4:35









              Josiah

              1,2821129




              1,2821129








              • 8




                For further information for others: this needs to be run from the host. If your host is Windows, open a Command Prompt, cd to "C:Program FilesOracleVirtualBox", and run that command. There doesn't seem to be any option in the VirtualBox Manager GUI (at least in all versions from 4.* to 5.0.20) which lets you set this any other way.
                – Graham
                Jun 3 '16 at 12:55










              • I'd like to add that you need to run this command as administrator. I tried it from my cmd and it didn't work for me, but then I ran cmd as administrator and it all worked perfectly fine.
                – SergeyOvchinnik
                Dec 19 '16 at 11:24






              • 3




                This used to work for me, but not with Ubuntu 16.04 and the latest virtualbox for Windows
                – Shanteva
                Jun 28 '17 at 12:26










              • Not working for me as well :(
                – Pavel Durov
                Dec 29 '17 at 13:24






              • 1




                This still works with MacOs High Sierra as the host, VirtualBox 5.2.6, running Windows 7 in the VM.
                – John Eikenberry
                Jan 25 at 20:12














              • 8




                For further information for others: this needs to be run from the host. If your host is Windows, open a Command Prompt, cd to "C:Program FilesOracleVirtualBox", and run that command. There doesn't seem to be any option in the VirtualBox Manager GUI (at least in all versions from 4.* to 5.0.20) which lets you set this any other way.
                – Graham
                Jun 3 '16 at 12:55










              • I'd like to add that you need to run this command as administrator. I tried it from my cmd and it didn't work for me, but then I ran cmd as administrator and it all worked perfectly fine.
                – SergeyOvchinnik
                Dec 19 '16 at 11:24






              • 3




                This used to work for me, but not with Ubuntu 16.04 and the latest virtualbox for Windows
                – Shanteva
                Jun 28 '17 at 12:26










              • Not working for me as well :(
                – Pavel Durov
                Dec 29 '17 at 13:24






              • 1




                This still works with MacOs High Sierra as the host, VirtualBox 5.2.6, running Windows 7 in the VM.
                – John Eikenberry
                Jan 25 at 20:12








              8




              8




              For further information for others: this needs to be run from the host. If your host is Windows, open a Command Prompt, cd to "C:Program FilesOracleVirtualBox", and run that command. There doesn't seem to be any option in the VirtualBox Manager GUI (at least in all versions from 4.* to 5.0.20) which lets you set this any other way.
              – Graham
              Jun 3 '16 at 12:55




              For further information for others: this needs to be run from the host. If your host is Windows, open a Command Prompt, cd to "C:Program FilesOracleVirtualBox", and run that command. There doesn't seem to be any option in the VirtualBox Manager GUI (at least in all versions from 4.* to 5.0.20) which lets you set this any other way.
              – Graham
              Jun 3 '16 at 12:55












              I'd like to add that you need to run this command as administrator. I tried it from my cmd and it didn't work for me, but then I ran cmd as administrator and it all worked perfectly fine.
              – SergeyOvchinnik
              Dec 19 '16 at 11:24




              I'd like to add that you need to run this command as administrator. I tried it from my cmd and it didn't work for me, but then I ran cmd as administrator and it all worked perfectly fine.
              – SergeyOvchinnik
              Dec 19 '16 at 11:24




              3




              3




              This used to work for me, but not with Ubuntu 16.04 and the latest virtualbox for Windows
              – Shanteva
              Jun 28 '17 at 12:26




              This used to work for me, but not with Ubuntu 16.04 and the latest virtualbox for Windows
              – Shanteva
              Jun 28 '17 at 12:26












              Not working for me as well :(
              – Pavel Durov
              Dec 29 '17 at 13:24




              Not working for me as well :(
              – Pavel Durov
              Dec 29 '17 at 13:24




              1




              1




              This still works with MacOs High Sierra as the host, VirtualBox 5.2.6, running Windows 7 in the VM.
              – John Eikenberry
              Jan 25 at 20:12




              This still works with MacOs High Sierra as the host, VirtualBox 5.2.6, running Windows 7 in the VM.
              – John Eikenberry
              Jan 25 at 20:12













              5














              Yes it is possible. There are many modes available in VirtualBox to establish networking between the guest and the host. Rather than using the NAT mode (which is default), you can use the bridge-mode in which your guest machine can be treated as entirely separate entity on your network. So, not only your host, but any other machine (such as your DNS server) will see your guest as a separate machine.



              Once you setup the bridge-mode, just go to your ubuntu guest and get it to use your company's DNS server name or ip. Read this tutorial for more info: http://prahladyeri.wordpress.com/2012/08/02/how-to-setup-a-virtual-lan-on-your-machine-using-oracle-virtualbox/






              share|improve this answer


























                5














                Yes it is possible. There are many modes available in VirtualBox to establish networking between the guest and the host. Rather than using the NAT mode (which is default), you can use the bridge-mode in which your guest machine can be treated as entirely separate entity on your network. So, not only your host, but any other machine (such as your DNS server) will see your guest as a separate machine.



                Once you setup the bridge-mode, just go to your ubuntu guest and get it to use your company's DNS server name or ip. Read this tutorial for more info: http://prahladyeri.wordpress.com/2012/08/02/how-to-setup-a-virtual-lan-on-your-machine-using-oracle-virtualbox/






                share|improve this answer
























                  5












                  5








                  5






                  Yes it is possible. There are many modes available in VirtualBox to establish networking between the guest and the host. Rather than using the NAT mode (which is default), you can use the bridge-mode in which your guest machine can be treated as entirely separate entity on your network. So, not only your host, but any other machine (such as your DNS server) will see your guest as a separate machine.



                  Once you setup the bridge-mode, just go to your ubuntu guest and get it to use your company's DNS server name or ip. Read this tutorial for more info: http://prahladyeri.wordpress.com/2012/08/02/how-to-setup-a-virtual-lan-on-your-machine-using-oracle-virtualbox/






                  share|improve this answer












                  Yes it is possible. There are many modes available in VirtualBox to establish networking between the guest and the host. Rather than using the NAT mode (which is default), you can use the bridge-mode in which your guest machine can be treated as entirely separate entity on your network. So, not only your host, but any other machine (such as your DNS server) will see your guest as a separate machine.



                  Once you setup the bridge-mode, just go to your ubuntu guest and get it to use your company's DNS server name or ip. Read this tutorial for more info: http://prahladyeri.wordpress.com/2012/08/02/how-to-setup-a-virtual-lan-on-your-machine-using-oracle-virtualbox/







                  share|improve this answer












                  share|improve this answer



                  share|improve this answer










                  answered Sep 6 '13 at 16:55









                  Prahlad Yeri

                  5931515




                  5931515























                      4














                      This was a top Google result, so I wanted to clarify for others. Josiah's solution worked for me with the addition of adding the line:



                      "hosts: files dns" to /etc/nsswitch.conf



                      As others pointed out, the original solution does not work above Ubuntu 16.04. My guest VM is Ubuntu 16.04.



                      Reference Creating Linux Server






                      share|improve this answer



















                      • 2




                        Welcome to Super User! You could propose that as an edit to Josiah's answer, which would help those looking :)
                        – bertieb
                        Apr 2 at 17:48










                      • Thanks for the tip! I tried adding just a comment, but it wasn't allowed. I submitted the edit instead.
                        – pretzel11
                        Apr 2 at 17:57
















                      4














                      This was a top Google result, so I wanted to clarify for others. Josiah's solution worked for me with the addition of adding the line:



                      "hosts: files dns" to /etc/nsswitch.conf



                      As others pointed out, the original solution does not work above Ubuntu 16.04. My guest VM is Ubuntu 16.04.



                      Reference Creating Linux Server






                      share|improve this answer



















                      • 2




                        Welcome to Super User! You could propose that as an edit to Josiah's answer, which would help those looking :)
                        – bertieb
                        Apr 2 at 17:48










                      • Thanks for the tip! I tried adding just a comment, but it wasn't allowed. I submitted the edit instead.
                        – pretzel11
                        Apr 2 at 17:57














                      4












                      4








                      4






                      This was a top Google result, so I wanted to clarify for others. Josiah's solution worked for me with the addition of adding the line:



                      "hosts: files dns" to /etc/nsswitch.conf



                      As others pointed out, the original solution does not work above Ubuntu 16.04. My guest VM is Ubuntu 16.04.



                      Reference Creating Linux Server






                      share|improve this answer














                      This was a top Google result, so I wanted to clarify for others. Josiah's solution worked for me with the addition of adding the line:



                      "hosts: files dns" to /etc/nsswitch.conf



                      As others pointed out, the original solution does not work above Ubuntu 16.04. My guest VM is Ubuntu 16.04.



                      Reference Creating Linux Server







                      share|improve this answer














                      share|improve this answer



                      share|improve this answer








                      edited Apr 2 at 17:52

























                      answered Apr 2 at 17:27









                      pretzel11

                      413




                      413








                      • 2




                        Welcome to Super User! You could propose that as an edit to Josiah's answer, which would help those looking :)
                        – bertieb
                        Apr 2 at 17:48










                      • Thanks for the tip! I tried adding just a comment, but it wasn't allowed. I submitted the edit instead.
                        – pretzel11
                        Apr 2 at 17:57














                      • 2




                        Welcome to Super User! You could propose that as an edit to Josiah's answer, which would help those looking :)
                        – bertieb
                        Apr 2 at 17:48










                      • Thanks for the tip! I tried adding just a comment, but it wasn't allowed. I submitted the edit instead.
                        – pretzel11
                        Apr 2 at 17:57








                      2




                      2




                      Welcome to Super User! You could propose that as an edit to Josiah's answer, which would help those looking :)
                      – bertieb
                      Apr 2 at 17:48




                      Welcome to Super User! You could propose that as an edit to Josiah's answer, which would help those looking :)
                      – bertieb
                      Apr 2 at 17:48












                      Thanks for the tip! I tried adding just a comment, but it wasn't allowed. I submitted the edit instead.
                      – pretzel11
                      Apr 2 at 17:57




                      Thanks for the tip! I tried adding just a comment, but it wasn't allowed. I submitted the edit instead.
                      – pretzel11
                      Apr 2 at 17:57











                      1














                      I've also noticed my VPN connection interferes with vagrant internet connection.



                      Thanks to this stackexchange, I was able to resolve by embedding into my Vagrantfile



                      config.vm.provider "virtualbox" do |vb|
                      vb.cpus = 1
                      vb.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
                      vb.memory = "2048"
                      end


                      And avoided the tedium of having to shutdown box to modify via command line, then reprovision



                      export PATH=$PATH:/c/Program Files/Oracle/VirtualBox/
                      VBoxManage list runningvms
                      export vbox=`VBoxManage list runningvms | cut -d '"' -f 2`
                      VBoxManage controlvm $vbox poweroff
                      VBoxManage modifyvm $vbox --natdnshostresolver1 on
                      vagrant.exe up --provision





                      share|improve this answer




























                        1














                        I've also noticed my VPN connection interferes with vagrant internet connection.



                        Thanks to this stackexchange, I was able to resolve by embedding into my Vagrantfile



                        config.vm.provider "virtualbox" do |vb|
                        vb.cpus = 1
                        vb.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
                        vb.memory = "2048"
                        end


                        And avoided the tedium of having to shutdown box to modify via command line, then reprovision



                        export PATH=$PATH:/c/Program Files/Oracle/VirtualBox/
                        VBoxManage list runningvms
                        export vbox=`VBoxManage list runningvms | cut -d '"' -f 2`
                        VBoxManage controlvm $vbox poweroff
                        VBoxManage modifyvm $vbox --natdnshostresolver1 on
                        vagrant.exe up --provision





                        share|improve this answer


























                          1












                          1








                          1






                          I've also noticed my VPN connection interferes with vagrant internet connection.



                          Thanks to this stackexchange, I was able to resolve by embedding into my Vagrantfile



                          config.vm.provider "virtualbox" do |vb|
                          vb.cpus = 1
                          vb.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
                          vb.memory = "2048"
                          end


                          And avoided the tedium of having to shutdown box to modify via command line, then reprovision



                          export PATH=$PATH:/c/Program Files/Oracle/VirtualBox/
                          VBoxManage list runningvms
                          export vbox=`VBoxManage list runningvms | cut -d '"' -f 2`
                          VBoxManage controlvm $vbox poweroff
                          VBoxManage modifyvm $vbox --natdnshostresolver1 on
                          vagrant.exe up --provision





                          share|improve this answer














                          I've also noticed my VPN connection interferes with vagrant internet connection.



                          Thanks to this stackexchange, I was able to resolve by embedding into my Vagrantfile



                          config.vm.provider "virtualbox" do |vb|
                          vb.cpus = 1
                          vb.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
                          vb.memory = "2048"
                          end


                          And avoided the tedium of having to shutdown box to modify via command line, then reprovision



                          export PATH=$PATH:/c/Program Files/Oracle/VirtualBox/
                          VBoxManage list runningvms
                          export vbox=`VBoxManage list runningvms | cut -d '"' -f 2`
                          VBoxManage controlvm $vbox poweroff
                          VBoxManage modifyvm $vbox --natdnshostresolver1 on
                          vagrant.exe up --provision






                          share|improve this answer














                          share|improve this answer



                          share|improve this answer








                          edited Dec 5 at 21:50

























                          answered Dec 5 at 21:10









                          Valdis Vitayaudom

                          112




                          112























                              -2














                              None of these worked for me with my old Ubuntu 12.04 VM. My issue was with the Windows 10 VirtualBox Host-Only Network adapter. Setting the DNS to Google DNS servers in the TCP/IPv4 Properties fixed the issue for me. (see video and attached screenshots)




                              1. Open Windows Control Panel > Network and Sharing Center

                              2. Click "Change adapter settings"

                              3. Right-mouse-click the "VirtualBox Host-Only Network" icon

                              4. Select "Properties"

                              5. Select "Internet Protocol Version 4 (TCP/IPv4)

                              6. Click the "Properties" button

                              7. Add your preferred DNS servers in the box

                              8. Click the "OK" button

                              9. Click the "Close" button


                              This change was recognized in my VM after restarting the VM, you could also ifdown/ifup the network from the VM to pull the new DNS settings without rebooting the VM.



                              Screenshot of steps to changing TCP/IPv4 DNS in Windows 10



                              Quick Tweak (VirtualBox): Network connection loss due to DNS configuration






                              share|improve this answer





















                              • You totally misunderstood the question. The question is about resolving names in the LAN, not in the internet at large. That already works as expected and need no DNS change.
                                – GabrielaGarcia
                                Oct 17 at 22:49
















                              -2














                              None of these worked for me with my old Ubuntu 12.04 VM. My issue was with the Windows 10 VirtualBox Host-Only Network adapter. Setting the DNS to Google DNS servers in the TCP/IPv4 Properties fixed the issue for me. (see video and attached screenshots)




                              1. Open Windows Control Panel > Network and Sharing Center

                              2. Click "Change adapter settings"

                              3. Right-mouse-click the "VirtualBox Host-Only Network" icon

                              4. Select "Properties"

                              5. Select "Internet Protocol Version 4 (TCP/IPv4)

                              6. Click the "Properties" button

                              7. Add your preferred DNS servers in the box

                              8. Click the "OK" button

                              9. Click the "Close" button


                              This change was recognized in my VM after restarting the VM, you could also ifdown/ifup the network from the VM to pull the new DNS settings without rebooting the VM.



                              Screenshot of steps to changing TCP/IPv4 DNS in Windows 10



                              Quick Tweak (VirtualBox): Network connection loss due to DNS configuration






                              share|improve this answer





















                              • You totally misunderstood the question. The question is about resolving names in the LAN, not in the internet at large. That already works as expected and need no DNS change.
                                – GabrielaGarcia
                                Oct 17 at 22:49














                              -2












                              -2








                              -2






                              None of these worked for me with my old Ubuntu 12.04 VM. My issue was with the Windows 10 VirtualBox Host-Only Network adapter. Setting the DNS to Google DNS servers in the TCP/IPv4 Properties fixed the issue for me. (see video and attached screenshots)




                              1. Open Windows Control Panel > Network and Sharing Center

                              2. Click "Change adapter settings"

                              3. Right-mouse-click the "VirtualBox Host-Only Network" icon

                              4. Select "Properties"

                              5. Select "Internet Protocol Version 4 (TCP/IPv4)

                              6. Click the "Properties" button

                              7. Add your preferred DNS servers in the box

                              8. Click the "OK" button

                              9. Click the "Close" button


                              This change was recognized in my VM after restarting the VM, you could also ifdown/ifup the network from the VM to pull the new DNS settings without rebooting the VM.



                              Screenshot of steps to changing TCP/IPv4 DNS in Windows 10



                              Quick Tweak (VirtualBox): Network connection loss due to DNS configuration






                              share|improve this answer












                              None of these worked for me with my old Ubuntu 12.04 VM. My issue was with the Windows 10 VirtualBox Host-Only Network adapter. Setting the DNS to Google DNS servers in the TCP/IPv4 Properties fixed the issue for me. (see video and attached screenshots)




                              1. Open Windows Control Panel > Network and Sharing Center

                              2. Click "Change adapter settings"

                              3. Right-mouse-click the "VirtualBox Host-Only Network" icon

                              4. Select "Properties"

                              5. Select "Internet Protocol Version 4 (TCP/IPv4)

                              6. Click the "Properties" button

                              7. Add your preferred DNS servers in the box

                              8. Click the "OK" button

                              9. Click the "Close" button


                              This change was recognized in my VM after restarting the VM, you could also ifdown/ifup the network from the VM to pull the new DNS settings without rebooting the VM.



                              Screenshot of steps to changing TCP/IPv4 DNS in Windows 10



                              Quick Tweak (VirtualBox): Network connection loss due to DNS configuration







                              share|improve this answer












                              share|improve this answer



                              share|improve this answer










                              answered Oct 17 at 21:13









                              Tony

                              1




                              1












                              • You totally misunderstood the question. The question is about resolving names in the LAN, not in the internet at large. That already works as expected and need no DNS change.
                                – GabrielaGarcia
                                Oct 17 at 22:49


















                              • You totally misunderstood the question. The question is about resolving names in the LAN, not in the internet at large. That already works as expected and need no DNS change.
                                – GabrielaGarcia
                                Oct 17 at 22:49
















                              You totally misunderstood the question. The question is about resolving names in the LAN, not in the internet at large. That already works as expected and need no DNS change.
                              – GabrielaGarcia
                              Oct 17 at 22:49




                              You totally misunderstood the question. The question is about resolving names in the LAN, not in the internet at large. That already works as expected and need no DNS change.
                              – GabrielaGarcia
                              Oct 17 at 22:49


















                              draft saved

                              draft discarded




















































                              Thanks for contributing an answer to Super User!


                              • Please be sure to answer the question. Provide details and share your research!

                              But avoid



                              • Asking for help, clarification, or responding to other answers.

                              • Making statements based on opinion; back them up with references or personal experience.


                              To learn more, see our tips on writing great answers.





                              Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


                              Please pay close attention to the following guidance:


                              • Please be sure to answer the question. Provide details and share your research!

                              But avoid



                              • Asking for help, clarification, or responding to other answers.

                              • Making statements based on opinion; back them up with references or personal experience.


                              To learn more, see our tips on writing great answers.




                              draft saved


                              draft discarded














                              StackExchange.ready(
                              function () {
                              StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f641933%2fhow-to-get-virtualbox-vms-to-use-hosts-dns%23new-answer', 'question_page');
                              }
                              );

                              Post as a guest















                              Required, but never shown





















































                              Required, but never shown














                              Required, but never shown












                              Required, but never shown







                              Required, but never shown

































                              Required, but never shown














                              Required, but never shown












                              Required, but never shown







                              Required, but never shown







                              Popular posts from this blog

                              Plaza Victoria

                              In PowerPoint, is there a keyboard shortcut for bulleted / numbered list?

                              How to put 3 figures in Latex with 2 figures side by side and 1 below these side by side images but in...