How to set up network on VirtualBox for Android 2.

2019-01-17 13:09发布

问题:

I'm trying to install a VirtualBox virtual machine for developing on Android 2.3 (Gingerbread) but I cannot properly configure the internet connection.

I followed many tutorials on the web and tried to apply some workaround suggested here on StackOverflow (for example Android x86 porting, unable to make it work ), but I still can't connect from my Android machine.

Some details:

  • When I execute netcfg on android console it returns only the lo interface (127.0.0.1).
  • The iso image I'm using is "android-x86-2.3-RC1-asus_laptop.iso" downloaded from http://www.android-x86.org/download. I use it on a Lenovo notebook with Windows 7 (but I've tried also on Ubuntu 11.04 Natty).
  • I've tried to setup both host-only and bridged interface on my virtual machine, but they don't seem to work.

回答1:

If you are going to be using VirtualBox, you need to use the eeepc.iso image not the asus-laptop.iso image.

Also, you will want to double check a few settings on your VM to make sure they are configured correctly:

  • OS Type: Linux 2.6
  • Memory: 256MB or more
  • Sound: Sound Blaster 16
  • Network: NAT or Bridged, the adapter must be PC-net-FAST III

From http://www.android-x86.org/documents/virtualboxhowto

I also found the following two things to be very helpful:

  • Disable Mouse Integration (under the Machine Menu)
  • Once the VM has started, open the app drawer and launch Settings. Find the ethernet section and enable it. You should see an eth0 device you can configure.


回答2:

An answer for Android 4.0, which is a combination of Goyuix's advice and other information on the internet.

  1. download the ASUS eeepc iso
  2. Choose Linux 2.6 32bit and PC-net fast III in the VM settings in Virtual Box.
  3. Install the OS. Create a "bootable" "primary" partition, and install OS as "read write".
  4. In Android 4.0 there's no Ethernet configuration in the settings page. Instead:
  5. Hit Alt+F1 to bring up the console.
  6. Type "netcfg". You should see "eth0" in the list.
  7. Follow the instructions here. For the sake of SO community they're reproduced as below:
  8. execute ifconfig eth0 up. (Note it is not "ipconfig"!)
  9. execute dhcpcd -LK -d eth0.
  10. Find out the DNS server's address in your network. In a typical setup this is the "default gateway" address of ipconfig on the host machine. Now execute setprop net.dns1 192.168.56.1, substitute the correct IP address.
  11. Hit Alt+F7 to exit the console. It's still says "no connection" at the bottom right. But internet is working. Open the browser to verify.


回答3:

I have my in NAT, and works fine

try it in bridge and it works as well

the problem must be in your configuration, try to see if the network interface is active



回答4:

The answer above allowed me to finally connect to my virtual android device. The problem, however, was that I was unable to connect to the internet.

I have PC-net-FAST III, bridged, adapter, and ethernet enabled in my android settings with eth0 selected in ethernet devices. Other isos did not have the ethernet options in settings.