为VMware虚拟机内安装的Ubuntu 16.04设置静态IP地址
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
即可解决问题。