【OS_Linux】Linux中虚拟机的三种上网方式——桥接、NAT、Host-only
1.桥接
桥接方便做实验,配置ip方便。可以和局域网中的其他机器进行通信,也可以和公网进行通信。缺点是会占用主机所在局域网的一个ip。
2. NAT
NAT模式下虚拟机可以和主机进行通信,可以上网,而且不占用局域网的IP,但是不能和其他机器进行通信。(使用虚拟网卡8)
配置虚拟机NAT模式上网
2.1 虚拟机NAT模式上网的原理
当我们安装了VMware Workstation软件后就会为主机提供一块虚拟网卡VMware Network Adapter VMnet8,这块虚拟网卡是为了在NAT模式下主机连通虚拟机使用的。同时Vmware为主机提供DHCP服务和NAT服务,即虚拟的DHCP服务器和NAT服务器各一台,DHCP服务器为各虚拟机分配ip地址,NAT服务器将虚拟机对外网的访问转换成主机对外网的访问。

【注意】
⑴宿主主机的虚拟网卡VMnet8与其物理网卡是相互独立的,通过IP可以看出二者并不在同一网段, VMnet8仅用作主机连通虚拟机,虚拟机连接主机依然是通过虚拟NAT服务器完成的,而非Vmnet8。将虚拟网卡VMnet8禁用后不影响虚拟机访问外网和宿主主机,但是主机却不能连通虚拟机。
⑵虚拟NAT服务器相当于一个路由器的作用,将各虚拟机对外网的请求转换为主机对外网的请求,NAT服务器的ip地址就是各虚拟机的网关。一般来讲网关就是一台机器所连路由器的ip地址。
2.2 虚拟机配置NAT模式上网的步骤
step1 打开vmware,点击“编辑”下的“虚拟网络编辑器”,进行NAT和DHCP设置。由于主机和虚拟机是靠VMnet8通信的,因此虚拟机和VMnet8应该属于同一个子网,即子网ip相同。由主机下的ipconfig命令可得知VMnet8的子网ip

以上图为例,可得知VMnet8的子网ip为192.168.128.0。据此进行NAT设置


最后点击确定即完成了NAT设置。
step2 在虚拟机的设置里面为虚拟机添加“网络适配器”,并选择NAT模式上网


step3 修改网卡配置文件,命令为:
vi /etc/sysconfig/network-scripts/ifcfg-eth0
以下是虚拟网卡VMnet8的子网IP为192.168.128.0时的一个配置示例:
DEVICE=eth0
NM_CONTROLLED=yes
ONBOOT=yes
TYPE=Ethernet
BOOTPROTO=static
IPADDR=192.168.128.10
NETMASK=255.255.255.0
GATEWAY=192.168.128.2
DNS1=114.114.114.114
【注意】
⑴BOOTPROTO可设置为static或dhcp,当为static时表明该虚拟机采用IPADDR所指定的静态IP,永远不会改变(推荐)。若BOOTPROTO设置为dhcp即动态获取IP, 此时IPADDR也是可以设置的,只不过仅能设置为DHCP所规定的的地址段。
⑵设置IP地址时需注意,IP地址都是有网络地址(网段)和主机号两部分共同组成的,任意一网段下的主机号不能全为0或全为1,主机号全0表示网络地址,全1是广播地址。由NETMASK可知该网络为C类IP段,即IP最后一段表示主机号,所以最后一段不能为0或255。
编辑完成后:wq命令保存退出,如下命令重启网络服务:service network restart
用ping命令检查主机是否可以连通虚拟机,以及虚拟机是否可以ping通外网。
3.Host-only
当设置为Host-only上网时,虚拟机只能和主机进行通信,不可以上网。也不可以和其他机器进行通信。(即主机使用VMnet1与虚拟机通信)


【OS_Linux】Linux中虚拟机的三种上网方式——桥接、NAT、Host-only的更多相关文章
- Linux 双线策略路由的三种实现方式总结+端口映射
Linux 双线策略路由的三种实现方式总结+端口映射 Linux 双线策略路由的三种实现方式总结+端口映射 网络环境 服务器(网关): eth0 为LAN口,IP为 LAN_IP = 192.168. ...
- linux中vim编辑器三种模式及常用命令的使用
Linux命令经常使用才会烂熟于心 命令行模式: 移动光标: 向下左右箭头可以移动光标: 将光标移动到行尾:$; 将光标移动到行头:^: 将光标移动到页尾:shift+g; 将光标移动到页头:1+sh ...
- Linux下SVN的三种备份方式
原文链接:http://blog.csdn.net/windone0109/article/details/4040772 (本文例子基于FreeBSD/Linux实现,windows环境请自己做出相 ...
- iOS中正则表达式的三种使用方式
1.利用NSPredicate(谓词)匹配 例如匹配有效邮箱: NSString *email = @“nijino_saki@163.com”: NSString *regex = @"[ ...
- java中线程的三种实现方式
一下记录下线程的3中实现方式:Thread,Runnable,Callable 不需要返回值时,建议使用Runnable:有返回值时建议使用Callable 代码如下所示: package com.f ...
- Golang中map的三种声明方式和简单实现增删改查
package main import ( "fmt" ) func main() { test3 := map[string]string{ "one": & ...
- VMware三种连接方式bridge, nat, host-only
大家在安装完虚拟机后,默认安装了两个虚拟网卡,VMnet1和 VMnet8,其他的未安装(当然也可以手动安装其他的).其中VMnet1是host网卡,用于host方式连接网络的.VMnet8是NAT网 ...
- linux中文件的三种time(atime,mtime,ctime)
linux下文件有3个时间的,分别是atime,mtime,ctime.有些博友对这3个时间还是比较迷茫和困惑的,我整理了下,写下来希望对博友们有所帮助. 1 这三个time的含义 简名 全名 中文名 ...
- SpringMVC中HandlerMapping的三种配置方式
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE beans PUBLIC "-/ ...
随机推荐
- java面试基础问题
1.一个".java"源文件中是否可以包括多个类(不是内部类)?有什么限制? 可以有多个类,但只能有一个public的类,并且public的类名必须与文件名相一致. 2.Java有 ...
- Qt 进程和线程之三:线程同步、可重入与线程安全
一.同步线程方法 使用线程的目的是允许代码并行运行,但是有时线程必须停止并等待其他线程.例如,如果两个线程试图同时写入相同的变量,结果是不确定的,所以需要同步线程.同步线程是一种保护共享资源等数据的常 ...
- vue.js 中如何解除绑定事件
我们项目中有一个点赞需求,只允许点击一次赞,再次点击则取消赞, 为了防止用户多次连续点击,在点赞后需要解绑事件,成功调取API后,才可再次点击取消赞. 目前用的方法是加入一个flag控制点击事件可否点 ...
- ecshop文章分类页面调用文章的内容
有的时候需要用到,所以总结了一下. 打开includes/lib_article.php文件 红色部分为添加的部分 function get_cat_articles($cat_id, $page = ...
- asp.net,监听输入框值的即时变化onpropertychange、oninput
作者:自由天堂发布站点:WEB六零零 网页设计制作原文地址:http://www.web600.net/html/editor/JavaScript/201001131529.html 要达到的效果 ...
- 提升 Web开发性能的 10 个技巧
随着网络的高速发展,网络性能的持续提高成为能否在芸芸App中脱颖而出的关键.高度联结的世界意味着用户对网络体验提出了更严苛的要求.假如你的网站不能做到快速响应,又或你的App存在延迟,用户很快就会移情 ...
- input type=file 选择图片并且实现预览效果
通过<input />标签,给它指定type类型为file,可提供文件上传: accept:可选择上传类型,如:只要传图片,且不限制图片格式,为image/*: multiple:规定是否 ...
- WebService学习之旅(五)基于Apache Axis2发布第一个WebService
上篇博文介绍了如何將axis2 webservice引擎安装到Web容器中,本节开始介绍如何基于apache axis2发布第一个简单的WebService. 一.WebService服务端发布步骤 ...
- 前端开发神器 - Brackets
做了几年的 .Net 项目开发,后来公司转 Java 语言开发,Java 做了还没一年,公司准备前后端分离开发,而我被分到前端! Brackets是一款基于web(html+css+js)开发的web ...
- Objective-C Numbers
In Objective-C programming language, in order to save the basic data types like int, float, bool in ...