为VMware虚拟机内安装的Ubuntu 16.04设置静态IP地址并且上网

来源:互联网 发布:sql开发工程师招聘 编辑:程序博客网 时间:2024/06/05 05:18

        之前虚拟机一直未使用固定IP地址上网,但每次IP地址一换,spark-shell启动就会失败。看了一些教程设置完固定IP地址却不能正常上网。下面这篇文章出自简书,解决了设置完IP地址不能上网的问题。

        二更:早上重启后又不能上网了。百度后发现是resolv.conf文件被重写了,DNS服务器地址没了,自然也无法上网。参考另一篇博客:http://www.cnblogs.com/lanxuezaipiao/p/3613497.html,解决了resolv.conf文件被重写的问题。现附上办法二(与ubuntu版本号无关):

前面提到固定IP的上网方式主要是修改/etc/network/interfaces这个文件,配置IP、网关什么的,其实这里面还有个参数可以配置,那就是DNS了,对应的参数名为dns-nameservers,这里设置的优先级比resolv.conf高,也就是网络会从这里读取DNS配置,如果没配置才去看resolv.conf里面的设置,因此在这里面配置DNS更简单。

复制代码
# interfaces(5) file used by ifup(8) and ifdown(8)auto loiface lo inet loopbackauto eth0iface eth0 inet staticaddress 192.168.1.151netmask 255.255.255.0gateway 192.168.1.2dns-nameservers 202.38.64.1

设置完重启网络:sudo service networking  restart

正文:

1.安装环境

VMware 10.0.4 build-2249910

Ubuntu 16.04 x86_64

2.在VMware中,配置网络环境

VMware在默认安装完成之后,会创建三个虚拟的网络环境:VMnet0、VMnet1和VMnet8。其类型分别为:桥接网络,Host-only和NAT。其中,NAT表示VMWware内安装的Ubuntu将会在一个子网中,VMware通过网络地址转换,通过物理机的IP上网。

这里,我们选择NAT方式,来实现Ubuntu的静态IP地址配置。

打开VMware,在顶部依次选择:编辑 > 虚拟网路编辑器,打开虚拟网路编辑器:


首先,去掉VMnet0和VMnet1,只保留VMnet8。然后,去掉如下图中的“使用本地DHCP服务奖IP地址分配给虚拟机”:


此外,这里的子网IP为:192.168.8.0,子网掩码为:255.255.255.0,因此,在Ubuntu中,设置IP地址的时候,可以设置为192.168.8.x,x可以为1~255。

选择“NAT设置”,打开NAT设置面板:


查看自己的网关地址,例如,此处的网关应该为:192.168.8.2。

最后,在VMWare的虚拟机管理界面,选择Ubuntu的“编辑虚拟机设置”,打开Ubuntu这个虚拟的设置界面。

选择网络适配器,然后确定网络连接选中的是“自定义”中的VMnet8(NAT模式):


完成以上步骤,VMWare的网络环境也就设置完成。

3.为Ubuntu设置静态IP地址

3.1.通过网路管理面板设置IP

在Ubuntu桌面的右上角,点击网络图标,然后选择“Edit Connections”:


Step 1 点击“Edit”按钮,打开编辑页面

Step 2 Method:选择Manual

Step 3 将IP地址填入Addresses栏


这里,我们设置的IP地址为: IP: 192.168.8.100 子网掩码: 255.255.255.0 网关: 192.168.8.2

然后,选择保存。

最后,点击Ubuntu桌面右上角的网络图标,选择“Disconnect”,断开连接。然后再打开该菜单,选择"Connect",即可连接上网。

3.2.通过Terminal命令行来设置IP地址

打开Ubuntu的终端,输入:

sudo gedit /etc/network/interfaces

表示使用gedit编辑器打开interfaces文件。 在打开的文件中,若有内容,先全部删除。然后输入如下代码:

auto lo

iface lo inet loopback

auto ens33

iface ens33 inet static

address 192.168.8.100

netmask 255.255.255.0

gateway 192.168.8.2

如下图所示:


然后,配置DNS服务器:

sudo gedit /etc/resolv.conf

在里面填入阿里的DNS:223.5.5.5

nameserver 223.5.5.5

保存

关闭gedit(先保存,后关闭),然后,在命令行中输入:

sudo /etc/init.d/networking restart

重启网络即可。

4.可能会遇到的问题

4.1.通过命令行设置网络时的问题

如果在重启网络的时候,出现如下的错误:

[....] Restarting networking (via systemctl): networking.serviceJob for networking.service failed because the control process exited with error code. See "systemctl status networking.service" and "journalctl -xe" for details.


(1)极有可能是在编写interfaces文件的时候,拼写错误:


再次打开interfaces文件,可以看到,出现了多处拼写错误:

sudo gedit /etc/network/interfaces


修改错误后,重启网络即可:

sudo /etc/init.d/networking restart

(2)在Ubuntu 16.04版本中,网卡的名称不是eth0,而是ens33。所以,在配置interfaces文件的时候,不要用eth0代替ens33,否则也会出现这个问题。当然,你可以通过ifconfig查看自己的网卡情况。


4.2.重启系统之后,发现网络无法使用,右上角的网络图标点击之后显示“device not managed”

解决方法:

sudo gedit /etc/NetworkManager/NetworkManager.conf

打开该文件,将“managed=false”修改为“managed=true”。

重启network manager:

sudo service network-manager restart

即可解决问题。

本文永久更新地址:http://www.linuxdiyf.com/linux/20707.htm



作者:ALTHE
链接:http://www.jianshu.com/p/625de9911bfb
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
阅读全文
0 0