快速业务通道

Android @ Linux VirtualBox的网络配置

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-04-10

VirtualBox启动后,如下配置Android虚拟机的网络

为了让Android在虚拟机中能上网,需要在Linux中设置一下Internet connection sharing.

在默认的情况下,需要将我的无线因特网共享到vboxnet0所在192.168.56.0网段.

使用iptables来完成的命令如下

  1. sudo iptables -A FORWARD -i wlan0 -o vboxnet0 -s 192.168.56.0/24 -m conntrack --ctstate NEW -j ACCEPT
  2. sudo iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
  3. sudo iptables -A POSTROUTING -t nat -j MASQUERADE

为使这个因特网共享设置每次启动都有效,先如下动作

  1. sudo iptables-save | sudo tee /etc/iptables.sav

然后在/etc/rc.local中加入如下行

  1. iptables-restore < /etc/iptables.sav

注意要保证系统已经启动了路由功能

  1. sudo sh -c "echo 1 > /proc/sys/net/ipv4/ip_forward"

编辑/etc/sysctl.conf确保如下行已经设置

  1. net.ipv4.conf.default.forwarding=1
  2. net.ipv4.conf.all.forwarding=1

启动Android之后按Alt-F1进入字符控制台使用命令如下设置网络

  1. root@android:/ # route add default gw 192.168.56.1 dev eth0
  2. root@android:/ # setprop net.dns1 192.168.0.1

其中 192.168.56.1是你的Linux主机在vboxnet0设备上分配到的IP地址,与虚拟机获得的IP(默认是192.168.56.101)应该是互相能ping通的.

而192.168.0.1是你的Linux主机可以访问得到的DNS,无线路由器情况下就是无线路由器的内网IP.

Android中为了使这个网络配置永久有效,你可以通过系统的配置来设置网络,每次启动的时候内核参数要指定一个固定数据分区的硬盘,比如说DATA=sda1.

如下图所示:

秀一张新浪在android虚拟机中的照片

本文出自 “快乐的技术员” 博客,请务必保留此出处http://carltao.blog.51cto.com/856514/425978

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号