Vagrant/VirtualBox can't resolve some domains from w/in VM

14,681

Solution 1

This seems to have "magically" resolved itself when I upgraded the host Mac OS from Lion (10.7.4) to Mountain Lion (10.8) so not gonna waste anymore cycles on it..

Solution 2

I solved that issue by adding the lines below to my Vagrantfile:

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

Below is the whole of it:

$setup = <<SCRIPT
    DEBIAN_FRONTEND=noninteractive apt-get update
SCRIPT

$dependencies = <<SCRIPT
    DEBIAN_FRONTEND=noninteractive apt-get install -y postgresql libpq-dev
    DEBIAN_FRONTEND=noninteractive apt-get install -y python-dev libjpeg-dev zlib1g-dev
    DEBIAN_FRONTEND=noninteractive apt-get install -y python-virtualenv virtualenvwrapper
SCRIPT

Vagrant.configure('2') do |config|

    config.vm.box = 'ubuntu/trusty64'

    # config.ssh.forward_agent = true
    config.vm.network "private_network", ip: "192.168.10.90"

    config.vm.synced_folder ".", "/vagrant", id: "vagrant-root", disabled: true
    config.vm.synced_folder ".", "/siaq"

    config.vm.provider :virtualbox do |vb|
        vb.name = "siaq"
        vb.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
        vb.customize ["modifyvm", :id, "--memory", "512"]
    end

    config.vm.provision "shell", inline: $setup
    config.vm.provision "shell", inline: $dependencies
end
Share:
14,681

Related videos on Youtube

Meltemi
Author by

Meltemi

Updated on September 18, 2022

Comments

  • Meltemi
    Meltemi over 1 year

    Just trying out VirtualBox & Vagrant and my initial lucid64 VM can't resolve us.archive.ubuntu.com but can resolve security.ubuntu.com, google.com and www.apple.com (but not apple.com w/out the www?!?!).

    The host that the VM is running in can resolve us.archive.ubuntu.com just fine as well as every other domain.

    No idea what's going on?!?

    vagrant@lucid64:~$ sudo apt-get install dkms -y
    Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    The following extra packages will be installed:
      fakeroot make patch
    Suggested packages:
      make-doc diffutils-doc
    The following NEW packages will be installed:
      dkms fakeroot make patch
    0 upgraded, 4 newly installed, 0 to remove and 23 not upgraded.
    Need to get 458kB of archives.
    After this operation, 2,359kB of additional disk space will be used.
    Err http://us.archive.ubuntu.com/ubuntu/ lucid/main make 3.81-7ubuntu1
      Could not resolve 'us.archive.ubuntu.com'
    Err http://us.archive.ubuntu.com/ubuntu/ lucid/main patch 2.6-2ubuntu1
      Could not resolve 'us.archive.ubuntu.com'
    Err http://us.archive.ubuntu.com/ubuntu/ lucid-updates/main dkms 2.1.1.2-2ubuntu1
      Could not resolve 'us.archive.ubuntu.com'
    Err http://us.archive.ubuntu.com/ubuntu/ lucid/main fakeroot 1.14.4-1ubuntu1
      Could not resolve 'us.archive.ubuntu.com'
    Failed to fetch http://us.archive.ubuntu.com/ubuntu/pool/main/m/make-dfsg/make_3.81-7ubuntu1_amd64.deb  Could not resolve 'us.archive.ubuntu.com'
    Failed to fetch http://us.archive.ubuntu.com/ubuntu/pool/main/p/patch/patch_2.6-2ubuntu1_amd64.deb  Could not resolve 'us.archive.ubuntu.com'
    Failed to fetch http://us.archive.ubuntu.com/ubuntu/pool/main/d/dkms/dkms_2.1.1.2-2ubuntu1_all.deb  Could not resolve 'us.archive.ubuntu.com'
    Failed to fetch http://us.archive.ubuntu.com/ubuntu/pool/main/f/fakeroot/fakeroot_1.14.4-1ubuntu1_amd64.deb  Could not resolve 'us.archive.ubuntu.com'
    E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?
    

    Vanilla installation. My first attempt. Following instructions in a Deploying Rails book.

    Edit: Adding /etc/resolv.conf:

    vagrant@lucid64:~$ cat /etc/resolv.conf 
    nameserver 10.0.2.3
    domain mydomain.com
    search mydomain.com
    

    Also some dig info:

    vagrant@lucid64:~$ dig us.archive.ubuntu.com
    ;; Truncated, retrying in TCP mode.
    
    ; <<>> DiG 9.7.0-P1 <<>> us.archive.ubuntu.com
    ;; global options: +cmd
    ;; connection timed out; no servers could be reached
    

    but it seems to resolve the domain name when the +trace flag is used?!? (or am I reading this wrong?)

    vagrant@lucid64:~$ dig us.archive.ubuntu.com +trace
    
    ; <<>> DiG 9.7.0-P1 <<>> us.archive.ubuntu.com +trace
    ;; global options: +cmd
    .           199183  IN  NS  d.root-servers.net.
    .           199183  IN  NS  k.root-servers.net.
    .           199183  IN  NS  m.root-servers.net.
    .           199183  IN  NS  a.root-servers.net.
    .           199183  IN  NS  j.root-servers.net.
    .           199183  IN  NS  e.root-servers.net.
    .           199183  IN  NS  l.root-servers.net.
    .           199183  IN  NS  b.root-servers.net.
    .           199183  IN  NS  f.root-servers.net.
    .           199183  IN  NS  g.root-servers.net.
    .           199183  IN  NS  h.root-servers.net.
    .           199183  IN  NS  i.root-servers.net.
    .           199183  IN  NS  c.root-servers.net.
    ;; Received 256 bytes from 10.0.2.3#53(10.0.2.3) in 1 ms
    
    com.            172800  IN  NS  a.gtld-servers.net.
    com.            172800  IN  NS  b.gtld-servers.net.
    com.            172800  IN  NS  c.gtld-servers.net.
    com.            172800  IN  NS  d.gtld-servers.net.
    com.            172800  IN  NS  e.gtld-servers.net.
    com.            172800  IN  NS  f.gtld-servers.net.
    com.            172800  IN  NS  g.gtld-servers.net.
    com.            172800  IN  NS  h.gtld-servers.net.
    com.            172800  IN  NS  i.gtld-servers.net.
    com.            172800  IN  NS  j.gtld-servers.net.
    com.            172800  IN  NS  k.gtld-servers.net.
    com.            172800  IN  NS  l.gtld-servers.net.
    com.            172800  IN  NS  m.gtld-servers.net.
    ;; Received 499 bytes from 193.0.14.129#53(k.root-servers.net) in 191 ms
    
    ubuntu.com.     172800  IN  NS  ns1.canonical.com.
    ubuntu.com.     172800  IN  NS  ns2.canonical.com.
    ubuntu.com.     172800  IN  NS  ns3.canonical.com.
    ;; Received 151 bytes from 192.42.93.30#53(g.gtld-servers.net) in 46 ms
    
    us.archive.ubuntu.com.  600 IN  A   91.189.92.192
    us.archive.ubuntu.com.  600 IN  A   91.189.92.193
    us.archive.ubuntu.com.  600 IN  A   91.189.91.13
    us.archive.ubuntu.com.  600 IN  A   91.189.91.23
    us.archive.ubuntu.com.  600 IN  A   91.189.91.24
    us.archive.ubuntu.com.  600 IN  A   91.189.91.25
    us.archive.ubuntu.com.  600 IN  A   91.189.92.151
    us.archive.ubuntu.com.  600 IN  A   91.189.92.152
    us.archive.ubuntu.com.  600 IN  A   91.189.92.153
    us.archive.ubuntu.com.  600 IN  A   91.189.92.154
    us.archive.ubuntu.com.  600 IN  A   91.189.92.155
    us.archive.ubuntu.com.  600 IN  A   91.189.92.176
    us.archive.ubuntu.com.  600 IN  A   91.189.92.177
    us.archive.ubuntu.com.  600 IN  A   91.189.92.179
    us.archive.ubuntu.com.  600 IN  A   91.189.92.180
    us.archive.ubuntu.com.  600 IN  A   91.189.92.181
    us.archive.ubuntu.com.  600 IN  A   91.189.92.182
    us.archive.ubuntu.com.  600 IN  A   91.189.92.183
    us.archive.ubuntu.com.  600 IN  A   91.189.92.184
    ubuntu.com.     172800  IN  NS  ns2.canonical.com.
    ubuntu.com.     172800  IN  NS  ns3.canonical.com.
    ubuntu.com.     172800  IN  NS  ns1.canonical.com.
    ;; Received 455 bytes from 91.189.95.3#53(ns2.canonical.com) in 183 ms
    

    Edit2 - more dig:

    vagrant@lucid64:~$ dig @10.0.2.3 security.ubuntu.com +short
    91.189.92.181
    91.189.92.184
    91.189.92.151
    91.189.92.166
    vagrant@lucid64:~$ dig @10.0.2.3 us.archive.ubuntu.com
    ;; Truncated, retrying in TCP mode.
    
    ; <<>> DiG 9.7.0-P1 <<>> @10.0.2.3 us.archive.ubuntu.com
    ; (1 server found)
    ;; global options: +cmd
    ;; connection timed out; no servers could be reached
    
    • ravi yarlagadda
      ravi yarlagadda almost 12 years
      What's the network configuration look like on the VM? What DNS server(s) are you using? Do you have reliable connectivity to them?
    • Meltemi
      Meltemi almost 12 years
      Hmmm, I'm not even certain how to tell. I'm new to Ubuntu and Vagrant. I'll add /etc/resolv.conf info (above). Lemme know where to look if you want more…
  • Meltemi
    Meltemi almost 12 years
    no i cannot ping the 10.0.2.3 host. It appears that the VirtualBox (or Vagrant) has assigned the VM an IP of 10.0.2.2. The host is at 10.0.1.201. VB/Vagrant set the nameserver to 10.0.2.3 which "works" and resolves some domains (see edit2 above) but not the most important for a Ubuntu box.
  • Benja
    Benja over 10 years
    I have the same issue, it seems it happens only on first run, just like if DNS isn't ready, and when I "vagrant provision" a second time, hosts are resolved.