Network unreachable on Ubuntu guest after trying to set up a host only network on Virtualbox

6,486

This might just be a bug in VirtualBox, but it did take me a lot of time to figure out what was going wrong. The fact that the same network interface eth0 wasn't working in two different guest operating systems was the clue. The easiest way to get the interface to work again is to do the following sequence of steps:

  1. Remove the persistent rules for naming the network interfaces when the networking service starts (/etc/udev/rules.d/*net-rules for Ubuntu)
  2. Restore default settings for the network interface configuration file (/etc/network/interfaces for Ubuntu)
  3. Restart the networking service (/etc/init.d/networking restart)

This article pointed me in the right direction.

What’s happening here is that when you clone your VM, VirtualBox apply a new MAC Address to your network interfaces but they don’t update the linux configuration files to mirror these changes and so the kernel doesn’t firstly can’t find or start the interface that matches it’s configuration (with the old MAC Address) and it finds a new interface (the new MAC Address) that it has no configuration information for. The result is that only your networking service can only start the loopback networking interface and eth0 is dead.

Share:
6,486

Related videos on Youtube

gkb0986
Author by

gkb0986

Updated on September 18, 2022

Comments

  • gkb0986
    gkb0986 over 1 year

    I have a Mac OS X host and a bunch of guests including Ubuntu and Arch Linux. I was trying to set up a host-only network at eth1 to let me ssh into the system. But now eth0 isn't working properly either. Ubuntu can no longer connect to remote hosts or browse the internet. It tells me that the network is unreachable. What's gone wrong here? I've included some diagnostics below.

    $ifconfig
    lo        Link encap:Local Loopback  
            inet addr:127.0.0.1  Mask:255.0.0.0
            inet6 addr: ::1/128 Scope:Host
            UP LOOPBACK RUNNING  MTU:16436  Metric:1
            RX packets:10968 errors:0 dropped:0 overruns:0 frame:0
            TX packets:10968 errors:0 dropped:0 overruns:0 carrier:0
            collisions:0 txqueuelen:0 
            RX bytes:897264 (897.2 KB)  TX bytes:897264 (897.2 KB)
    

    Other diagnostic commands and the output:

    $sudo lspci -n
    00:00.0 0600: 8086:1237 (rev 02)
    00:01.0 0601: 8086:7000
    00:01.1 0101: 8086:7111 (rev 01)
    00:02.0 0300: 80ee:beef
    00:03.0 0200: 8086:100e (rev 02)
    00:04.0 0880: 80ee:cafe
    00:05.0 0401: 8086:2415 (rev 01)
    00:06.0 0C03: 106B:003F
    00:07.0 0680: 8086:7113 (REV 08)
    00:0D.0 0106: 8086:2829 (REV 02)
    
    
    $sudo lshw -c network                                                                                                      
    *-network DISABLED      
    description: Ethernet interface
    product: 82540EM Gigabit Ethernet Controller
    vendor: Intel Corporation
    physical id: 3
    bus info: pci@0000:00:03.0
    logical name: eth0
    version: 02
    serial: 08:00:27:7d:22:df
    size: 1Gbit/s
    capacity: 1Gbit/s
    width: 32 bits
    clock: 66MHz
    capabilities: pm pcix bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation
    configuration: autonegotiation=on broadcast=yes driver=e1000 driverversion=7.3.21-k8-NAPI duplex=full firmware=N/A latency=64 link=no mingnt=255 multicast=yes port=twisted pair speed=1Gbit/s
    resources: irq:19 memory:f0000000-f001ffff ioport:d010(size=8)
    
    
    
    $lsmod 
    Module                  Size  Used by
    nls_utf8               12557  1 
    isofs                  40257  1 
    vboxsf                 43743  2 
    vesafb                 13844  1 
    snd_intel8x0           38570  2 
    snd_ac97_codec        134869  1 snd_intel8x0
    ac97_bus               12730  1 snd_ac97_codec
    snd_pcm                97275  2 snd_intel8x0,snd_ac97_codec
    snd_seq_midi           13324  0 
    snd_rawmidi            30748  1 snd_seq_midi
    snd_seq_midi_event     14899  1 snd_seq_midi
    rfcomm                 47604  0 
    snd_seq                61929  2 snd_seq_midi,snd_seq_midi_event
    bnep                   18281  2 
    bluetooth             180113  10 rfcomm,bnep
    ppdev                  17113  0 
    psmouse                97519  0 
    snd_timer              29990  2 snd_pcm,snd_seq
    joydev                 17693  0 
    snd_seq_device         14540  3 snd_seq_midi,snd_rawmidi,snd_seq
    vboxvideo              12622  1 
    serio_raw              13211  0 
    snd                    79041  11 snd_intel8x0,snd_ac97_codec,snd_pcm,snd_rawmidi,snd_seq,snd_timer,snd_seq_device
    soundcore              15091  1 snd
    vboxguest             235498  7 vboxsf
    parport_pc             32866  0 
    drm                   241971  2 vboxvideo
    i2c_piix4              13301  0 
    snd_page_alloc         18529  2 snd_intel8x0,snd_pcm
    mac_hid                13253  0 
    lp                     17799  0 
    parport                46562  3 ppdev,parport_pc,lp
    usbhid                 47238  0 
    hid                    99636  1 usbhid
    e1000                 108589  0
    
  • pmaruszczyk
    pmaruszczyk over 9 years
    What do you mean by "Restore default settings for the network interface configuration file (/etc/network/interfaces for Ubuntu)" ?
  • gkb0986
    gkb0986 over 9 years
    I presume you'd backup the network interface configuration somewhere safe before you try to add a host-only network. Or you could use a vanilla network interface configuration that's shared online. Here's an example.