Ubuntu16.04虚拟机设置固定IP上网

由于经常需要直接在主机通过IP连接到虚拟机,所以上网搜了一些Ubuntu设置固定IP上网的方法,其中遇到了一些问题,参考了大神的博客内容,之后会列出原文链接,如果侵犯了您的权利,请与我联系删除,谢谢.

设置固定IP的方法很多,大家都知道虚拟机上网有三种模式:bridged、host-only和NAT, 其中NAT模式对应VMnet8虚拟网络,host-only模式对应VMnet1虚拟网络,bridged模式对应 VMnet0虚拟网络,都是由VMware虚拟机自动配置而生成的,不需要用户自行设置。VMnet8和VMnet1提供DHCP服务,VMnet0虚拟 网络则不提供。

当前环境:
虚拟机版本:VMware WorkStation 12
系统版本:Ubuntu 16.04

1. 设置虚拟机上网方式为NAT

虚拟机设置中的网络适配器里,选择NAT模式

设置网络连接模式

2. 配置VMnet8虚拟网络

启动虚拟网络编辑器

在VMware的编辑选项中打开虚拟网络编辑器

按照下图中对虚拟网络进行设置,虚拟网络的列表里默认是有VMnet0,VMnet1和VMnet8三种,我只有一种是因为我把另外两种给移除了,在这里我们选择VMnet8网络,其中子网IP根据自己的情况进行设置,只要不把原来已有的给占用即可.

虚拟网络编辑器

3. 进入到Ubuntu系统中配置网络

主要配置下面三个方面的内容:

  1. 修改文件/etc/network/interfaces,这里是IP、网关、掩码等的一些配置;
  2. 修改文件/etc/resolv.conf,这个文件保存DNS的有关信息;
  3. 解决resolv.conf被重写问题;
  4. 重启虚拟机网络

(1).修改文件/etc/network/interfaces

输入命令:sudo vi /etc/network/interfaces
或者:sudo gedit /etc/network/interfaces

配置如下:

#interfaces(5) file used by ifup(8) and ifdown(8)
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-nameservers 8.8.8.8

其中较新版本的比如我的Ubuntu16.04 就是ens33,有的版本是eth0, 具体可以在终端输入ifconfig命令查看,如图:

这里写图片描述

另外其中的网关要和虚拟网络编辑器中设置的一致,一般好像为192.168.XXX.2

上面最后一行设置的DNS不是必要的,可在下一步设置,这一步的优先级比resolv.conf中高,会优先在这一步读取DNS,如果没有配置才会去resolve.conf里面查找.

(2)修改文件/etc/resolv.conf

输入命令:sudo vi /etc/resolv.confsudo gedit /etc/resolv.conf

配置如下:

nameserver 114.114.114.114

这里具体DNS因人而异

(3)解决resolv.conf被重写问题

第二步中你虽然配置了DNS,但是每次重启虚拟机或重启网络后/etc/resolv.conf文件就会被重写,也就是又恢复原样了,你以前的配置就不存在了,每次都要手动配置是极不可取的,所以这步是必须的,首先我们要搞清楚resolv.conf被重写的原因和机制,这在不同 Ubuntu版本下有所差异。

在这一步,教程原文上有两种办法,第一种是根据不同系统版本来采取不同的办法,第二种是于版本无关,通用的做法.我选了第二种,如果想看第一种方法,可以在文末的原文链接里去看.

第二种办法就是在前面第(1)步中在最后面直接加上你的DNS地址,因为interfaces优先级比resolv.conf高,会优先看interfaces里面的DNS.

(4)重启虚拟机网络

配置完成后需要重启一下网络:

sudo service networking restart 

或者

sudo /etc/init.d/networking restart

在这一步我重启网络失败了,只能选择了下面的重启网卡

sudo ifconfig eth0 down 
sudo ifconfig eth0 up

赶紧试试是不是可以了

参考:
原文链接

猜你喜欢

转载自blog.csdn.net/Scrat_Kong/article/details/85805381