虚拟机下ubuntu16.04 NAT网络配置

为VMware虚拟机内安装的Ubuntu 16.04设置静态IP地址(NAT方式)

时间:2016-05-17来源:linux网站 作者:RJKD

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

即可解决问题。



遇到的问题:

DNS总是被自动清除导致无法上网。

能Ping通IP却无法ping通百度

解决办法:

最近学习Linux,在虚拟机中安装的是Ubuntu操作系统,用了几天发现Ubuntu无法上网,打开命令终端,输入命令:

ping www.baidu.com -c2

结果显示名称无法识别,而直接与宿主机之间使用 IP 地址进行互ping,则可以ping得通;在Ubuntu的浏览器中输入www.baidu.com ,无法打开百度网页;但输入百度的IP地址,则可以打开百度,这说明是DNS服务出现了问题,网上找到解决方法,修改了/etd/resolv.conf文件,但该文件中有这么一句话:

#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN  //不要手动编辑该文件,你的改变会被重写

果然,虽然在该文件里加上了 nameserver  xxx.xxx.xxx.xxx ,一时可用了,但重新启动后内容又清空了,又无法解析域名了。


再次上网搜解决方案,有的说要关闭NetworkManager服务,如该网页所示:http://www.linuxdiyf.com/linux/21598.html

但个人感觉服务还是不要随便关的好。后来搜到两个解决方案,亲测搜有效:


方案1:

(i) 创建 /etc/resolvconf/resolv.conf.d/tail文件 (etc/resolvconf/resolv.conf.d 文件夹下已有了 head和base文件)

(ii) 在该文件中写入自己需要的dns服务器 (后面会补充Windows下查看DNS服务器的方法)

nameserver 202.118.176.2

(iii) 重启 resolvconf程序

sudo /etc/init.d/resolvconf restart    (我试了一下在,没有效果,又重启的虚拟机,有效了)

(iv) 查看 /etc/resolv.conf文件,可以看到里面自动添加了 nameserver 202.118.176.2 , ping www.baidu.com 一可以通了


方案2:

修改 /etc/network/interfaces文件:

###interfaces中#######    
auto eth0    
iface eth0 inet static    
address 192.168.1.200    
netmask 255.255.255.0                  #子网掩码    
gateway 192.168.1.1                      #网关
broadcast 192.168.1.255    
dns-nameservers 202.118.176.2    #设置dns服务器  ---这一行是新添加的

即新添加 dns-nameservers 202.118.176.2 那一行。

(注意,nameserver用复数形式:dns-nameservers。我第一次添加没在意,用的是dns-nameserver,就行不通)


综上,个人感觉第二个方案简单,因为 /etc/network/interfaces文件本身就是存在的。


用Windows宿主机查看DNS服务器的IP

1.打开网络与共享中心:

2.点击当前正在使用的网络:

3.点击“详细信息”:

4.即可看到DNS服务器网址:

来源:网络


智能推荐

NAT虚拟网络配置

我们知道 在局域网内部访问时,必须是同一网段才可以访问。我们修改网络配置前,必须知道所属网段才行: 1. 查看网段   2. 通过上面操作我们可以看到网段为194, 网关ip为2。现在我们通过 vi /etc/sysconfig/network-scripts/ifcfg-xxx 来设置服务器ipTYPE=Ethernet 3. 修改就完...

ubuntu 18.04 虚拟机网络配置(NAT)

虚拟机NAT设置 注意两个勾要选上。 接下来,设置虚拟机网络: 在网络适配器这里选择自定义vmnet8网卡(NAT模式)。vmnet8网卡的设置去宿主机网络适配器上配置。 ubuntu网卡配置 ubuntu16.04和18.04有很大差异,网卡配置与之前相比也有不同。 编辑/etc/netplan/目录下默认的网络配置文件,文件后缀为.yaml,我的是叫01-network-manager-all...

虚拟机中的ubuntu16.04如何连接网络?

刚装完ubuntu,接下来就是解决联网问题,然后在解决的过程中误入歧途,把vim和vi给卸载了,后来联网的时候需要使用vi或者vim编辑器打开/etc/network/interfaces文件编辑,此时就傻眼了,因为使用apt-get install vim 时发现没网啊,装个毛线。解决方法:重装虚拟机吧hhh。 言归正传,在有vim或者vi的条件下如何给虚拟机联网: 一、在VMware的左侧那个...

ubuntu16.04虚拟机桥接模式配置静态IP

在虚拟机安装好ubuntu16.04后,发现只有NAT模式可以上网,而桥接模式不能上网,经过一番摸索总结方法如下: 一、配置IP地址、默认网关、子网掩码 命令: 1. ifconfig(查看网卡信息) 有两块网卡,配置ens33(以太网) 我的是配置好的,你的显示可能和这个不一样,这一步只是看以太网卡的名字,配置时会用到 接下来切换用户,提高权限 2. sudo -s (进入管理员模式,修改配置文...

虚拟机安装Ubuntu16.04 64位以及安装后的简单配置

  公司有个项目要QT交叉编译arm板,摸索了几天,为避免以后走弯路,从这里开始记录从无到实现最终目标时的全过程,亲测有效!! 环境:vm15下的ubuntu16.04 64位 QT:QT5.12.9 交叉编译工具: poky glibc x86_64 meta toolchain qt5 cortexa9hf vfp neon toolchain 1.7.sh(arm板厂家提供) Ar...

猜你喜欢

VM虚拟机 ubuntu16.04配置CPU版本的caffe

               这次虚拟机下在ubuntu16.04下配caffe真是走了许多弯路,里面布满了坑,索性最后终于装好了,记下来让后面的人少入坑,并且在这里不得不吐槽下下载依赖项的速度,真是令人抓急。                ...

详解 KDTree

简介 kd树(k-dimensional树的简称),是一种分割k维数据空间的数据结构。主要应用于多维空间关键数据的搜索(如:范围搜索和最近邻搜索)。 一个KDTree的例子 上图的树就是一棵KDTree,形似二叉搜索树,其实KDTree就是二叉搜索树的变种。这里的K = 3. 首先来看下树的组织原则。将每一个元组按0排序(第一项序号为0,第二项序号为1,第三项序号为2),在树的第n层,第 n%3 ...

linux 环境下设置Kettle的转换,作业定时执行简单操作

1,Centos目录下面创建三个文件(kettleFile--存放kettle的转换或者作业;kettleLogs--存放运行中的日志;kettleShs--存放任务定时的shell文件) A 2,对应的shell定时文件设置: ①Kettle的转换文件对应的shell文件--test_tr.sh(kettle中的pan.sh是针对转换的) #!/bin/bash currTime=$(date ...

小趋势2

复杂世界中的微变量 美 马克.佩恩 架构 本书为6大类,以50篇短文讲述复杂世界的50种小趋势,这些看似微小的变化,正在给我们身处的社会造成巨大的变革。 一.爱情和感情 二.健康和饮食 三.科技 四.生活方式 五.政治 六.工作和业务 1.1全职先生 由男性养家糊口的传统观念业已被颠覆 更多的女性接受更好的教育 更多的男性自愿或被迫成为全职先生 成为一名全职先生的关键,在于不要把排在收入榜第2名所...

linux如何安装与配置Linux VNC服务

说明: 文章前半部分是转载别人的文章,具体详看:http://gushiren.blog.51cto.com/3392832/1673788 一、Redhat上VNC Server配置 前提:连接到互联网,将使用yum在线安装VNC服务器 1.安装 TigerVNC Server # yum searchtigervnc-server   返回大概如下内容: tigervnc-server.x86...

问答精选

How does Gmail recognize email signatures (alternatively, "What's the best way to recognize email signatures?")

Gmail automatically greys text that looks like a signature. Anyone have any guesses how it does this? (I've noticed that it depends on the presence of the sender's name, but I think that's only part o...

Identifying Cats vs Dogs: Error in Flattening in Keras Tensorflow

I am working to further develop my understanding in Keras and have come upon a confusing error. I am using the most recent packages through Anaconda. The error appears to be with model.add(Flatten()),...

Get min and max values for getOrientation on accelerometer?

I am currently working with the accelerometer on Android, and have run into an interesting situation. I need to find out the maximum values for the following, WITHOUT requiring the end user to flop th...

Collapse all list and expand only the selected list in vuetify

I have a v-list-group with 2 sub-group inside it like in the image shown below. Whenever I click the parent list-group other groups are getting collapsed, but when I click a sub-group inside a list-gr...

Codestyle in SonarQube

We are using SonarQube for analyzing an Symfony Project. In the IDE(PHPSTORM) we setup a predefined Codestyle (PSR2) and the same in SonarQube. SonarQube complains about the following code style and s...

相关问题

相关文章

热门文章

推荐文章

相关标签

推荐问答