本文主要是介绍Ubuntu桥接无法连接外网问题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
软硬件情况:win7主机,virtualbox虚拟ubuntu系统
上篇文章讲了NAT方式下,虚拟机可以访问外网,但是主机拼通虚拟机,这节就来讲解一下如何让主机和虚拟机相通并且虚拟机可以访问外网。
打开虚拟机的设置窗口,进入网络选项卡,将网络连接1中的连接方式从默认 的NAT修改为Bridged Adapter。
经过上面这步的配置,如果客户机的IP地址设置为DHCP模式,那现在应该就可以正常访问网络了。如果不想动态分配IP地址,可以再按照下面的方式设置IP和DNS。
$ sudo vi /etc/network/interfaces
auto eth0
iface eth0 inet static
address 192.168.0.120
gateway 192.168.0.1
netmask 255.255.255.0
$ sudo vi /etc/resolv.conf
nameserver 208.67.222.222
nameserver 208.67.220.220
$ sudo /etc/init.d/networking restart
上面的设置,除了IP以外,其他要和主机上的设置保持一致。在这里使用了eth0,但是需要注意的是,由于添加了虚拟网卡的缘故,在你的虚拟机中有可能不是eth0,而是eth1或者eth2等,这个需要根据实际情况来设置,具体是什么,可以通过下面的命令来查询:
$ ifconfig -a
如果将eth1等名称设置为eth0的话,所有的设置是无效的,而且在启动网络服务的时候,会得到如下错误信息:
SIOCSIFADDR: No such device
eth0: ERROR while getting interface flags: No such device
SIOCSIFNETMASK: No such device
eth0: ERROR while getting interface flags: No such device
Failed to bring up eth0
基本上经过了以上的设置,网络就应该已经OK了,可以在客户机上直接ping一下其他的地址来进行测试:
$ ping -c 4 192.168.0.1
$ ping -c 4 koubei.com
上面配置以后,可能出现Unknow Host.需要将网关添加到路由列表.
sudo route add default gw 192.168.1.1
补充一点,VirtualBox 2.x时代建立的虚拟网卡和网络桥,现在已经没有用了,网络桥可以直接删除,虚拟网卡可以在设备管理器中删除,也可以在VirtualBox/ 全局设定/网络中删除。
再补充一下NAT和桥接的区别,简单来说,如果使用NAT,客户机和主机是公用一套网络资源的,优势就是简单,什么都不用配置,主机可以正常上网,客户机就可以正常上网,缺点就是,局域网中其他机器是访问不到这个虚拟机的,而我的虚拟机主要是用来架设LAMP的,无法被访问当然不符合要求;这就是桥接网络的优势,可以将虚拟机模拟成具体网中的独立节点,和其他电脑的地位是一致的,可以访问别人,也可以被别人访问,当然,如果是在公司架设的话,这个肯定要受限制了,毕竟很多公司的IP地址都是和Mac地址绑定的。所以,具体使用哪种方式连接网络,完全根据实际需要而定。
结合自己的实际情况,我只修改了sudo vi /etc/network/interfaces和sudo vi /etc/resolv.conf,然后结合上一篇文章讲过的将sudo rm /etc/udev/rules.d/70-persistent-net.rules 删除后,重启ubuntu系统就实现了主机和虚拟机相通并且虚拟机可以访问外网的功能。
这篇关于Ubuntu桥接无法连接外网问题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!