热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

VMwareworkstation网络设置详解

前言这篇日志主要是讲如何设置虚拟机的链接方式和网段,有时候我们辛辛苦苦装了个虚拟机,想在里面看看网页却苦于网络无法连接,明明宿主是可以上网的,为何虚拟机就是无法链接呢?简介vmwareworkstation有3种网络连接方式:1Host-only连接方式让虚机具有
前言

         这篇日志主要是讲如何设置虚拟机的链接方式和网段,有时候我们辛辛苦苦装了个虚拟机,想在里面看看网页却苦于网络无法连接,明明宿主是可以上网的,为何虚拟机就是无法链接呢?

简介

         vmware workstation有3种网络连接方式:

1 Host-only连接方式
      让虚机具有与宿主机不同的各自独立IP地址,但与宿主机位于不同网段,同时为宿主主机新增一个IP地址,且保证该IP地址与各虚机IP地址位于同一网段。最终结果是新建了一个由所有虚机与宿主主机所构成的局域网,但该局域网与宿主主机本身所处的现有局域网是相互独立的,如果不做额外路由设置,这两个局域网之间不会连通,因此新建的局域网可以认为是一个单独从属于当前宿主主机的私有网络,其成员为当前宿主主机和相关的所有虚机,这也是Host-only命名的由来。
从网络技术上相当于为宿主主机增添了一个虚拟网卡,让宿主主机变成一台双网卡主机(宿主网卡+虚拟网卡)。同时在宿主主机后端加设一个虚拟交换机,让宿主主机和所有虚机构成另一个虚拟的局域网。由于具备双网卡,宿主主机可同时参与两个局域网(现有的宿主局域网+新建的虚拟局域网),只不过缺省情况下两个局域网不连通。

2 Bridge(桥接)连接方式
让虚机具有与宿主机不同的各自独立IP地址,但与宿主机保持在同一网段,最终结果是所有虚机都加入宿主主机所在的局域网,这与在该局域网中添加入其他宿主主机在效果上没什么区别。
从网络技术上相当于在宿主主机前端加设了一个虚拟交换机,然后宿主主机和所有虚机共享这个交换机;或者干脆理解成在宿主主机上作点增强,使其兼具一个交换机(当然是虚拟的)功能,供该宿主主机和网段内其他虚机使用。

3 NAT连接方式
虽然从表面现象看,虚机无自己的IP地址,而是共享宿主主机的IP地址,但技术本质上却是基于Host-only方式的(即,虚机还是有自己独立IP地址的,只不过实际中不投入使用),与Host-only方式一样,宿主主机成为双网卡主机,同时参与现有的宿主局域网和新建的虚拟局域网,但由于加设了一个虚拟的NAT服务器,使得虚拟局域网内的虚机在对外访问时,完全“冒用”宿主主机的IP地址,这样从外部网络来看,只能看到宿主主机,完全看不到新建的虚拟局域。


总结:对于3种方式,用通俗的话来说就是Host-Only方式只有你能访问,外网无法访问,虚拟机也无法访问外网,虚拟机有一个内网IP,与宿主组成局域网;Bridge方式你能访问虚拟机,外网也能访问虚拟机,虚拟机可以访问外网,虚拟机会和主机一样有一个外网IP;Nat方式你能访问,外网无法访问,虚拟机可以访问外网,虚拟机有一个内网IP,与宿主组成局域网。


配置环境

        首先你的宿主机子上要安装了vmware workstation,关于vmware workstation的安装请查看《vmware workstation安装与卸载》。本次操作使用的wmware workstation版本7.0.0

设置虚拟网卡

下面以Nat的设置方式来举例说明(ps:其他方式差不多)其他方式差不多。修改使其网段使用192.168.126.*,小林所有虚拟机都基本用的Nat方式,IP也是固定的,懒得设置其他网段了。

Edit>>Virtual Network Editor

从这张图我们可以看到,Vmware可以设置10个虚拟机网络(VMnet0 to VMnet9)默认开启3个:

  连接方式 DHCP(虚拟机自动获取IP) 网段
Vmnet0 Bridge 根据宿主机所在网络是否支持 和宿主一样
VMnet1 Host Only 默认开启,可以关闭 192.168.157.*
VMnet8 Nat 默认开启,可以关闭 192.168.237.*

操作:选择VMnet8 Nat之后修改Subnet IP修改成192.168.126.0,如果和其他虚拟网卡冲突,则把其他虚拟网卡更换网段就行

点击OK保存即可

虚拟机网络设置

此操作是在虚拟机中的操作系统做的网络设置,确保虚拟机选择网络链接方式是Nat

VM>>Settings

windows系列
控制面板>>网络和 Internet>>网络和共享中心>>本地连接,或者正在使用的网络连接>> 属性
 

 
IP 地址:随便使用192.168.126.*(ps:这里*要比2大,因为默认上0是没有的,1是宿主在用,2是网关和dns)

在命令行中试着ping下google,发现虚拟机可以连接上外网了

在宿主中ping下虚拟机也发现可以ping了

redhat linux系列
在终端中输入
vi /etc/sysconfig/network-script/ifcfg-eth0

修改BootProto(默认的可能是DHCP),然后分别添加或者修改IPADDR(IP地址),NETMASK(子网掩码),GATEWAY(网关),

DEVICE=eth0
BOOTPROTO=static
OnBOOT=yes
HWADDR=00:0c:29:47:0c:8c
IPADDR=192.168.126.126
NETMASK=255.255.255.0
GATEWAY=192.168.126.2

然后重启网卡

service network restart

推荐阅读
  • 本文详细介绍了如何在预装Ubuntu系统的笔记本电脑上安装Windows 7。针对没有光驱的情况,提供了通过USB安装的具体方法,并解决了分区、驱动器无法识别等问题。 ... [详细]
  • 嵌入式开发环境搭建与文件传输指南
    本文详细介绍了如何为嵌入式应用开发搭建必要的软硬件环境,并提供了通过串口和网线两种方式将文件传输到开发板的具体步骤。适合Linux开发初学者参考。 ... [详细]
  • 本文探讨了为何相同的HTTP请求在两台不同操作系统(Windows与Ubuntu)的机器上会分别返回200 OK和429 Too Many Requests的状态码。我们将分析代码、环境差异及可能的影响因素。 ... [详细]
  • Symfony是一个功能强大的PHP框架,以其依赖注入(DI)特性著称。许多流行的PHP框架如Drupal和Laravel的核心组件都基于Symfony构建。本文将详细介绍Symfony的安装方法及其基本使用。 ... [详细]
  • 本文介绍了数据库体系的基础知识,涵盖关系型数据库(如MySQL)和非关系型数据库(如MongoDB)的基本操作及高级功能。通过三个阶段的学习路径——基础、优化和部署,帮助读者全面掌握数据库的使用和管理。 ... [详细]
  • 本文详细介绍了如何在不同操作系统和设备上设置和配置网络连接的IP地址,涵盖静态和动态IP地址的设置方法。同时,提供了关于路由器和机顶盒等设备的IP配置指南。 ... [详细]
  • Coursera ML 机器学习
    2019独角兽企业重金招聘Python工程师标准线性回归算法计算过程CostFunction梯度下降算法多变量回归![选择特征](https:static.oschina.n ... [详细]
  • 本题来自WC2014,题目编号为BZOJ3435、洛谷P3920和UOJ55。该问题描述了一棵不断生长的带权树及其节点上小精灵之间的友谊关系,要求实时计算每次新增节点后树上所有可能的朋友对数。 ... [详细]
  • 解决TensorFlow CPU版本安装中的依赖问题
    本文记录了在安装CPU版本的TensorFlow过程中遇到的依赖问题及解决方案,特别是numpy版本不匹配和动态链接库(DLL)错误。通过详细的步骤说明和专业建议,帮助读者顺利安装并使用TensorFlow。 ... [详细]
  • Linux中的yum安装软件
    yum俗称大黄狗作用:解决安装软件包的依赖关系当安装依赖关系的软件包时,会将依赖的软件包一起安装。本地yum:需要yum源,光驱挂载。yum源:(刚开始查看yum源中的内容就是上图 ... [详细]
  • 在尝试使用C# Windows Forms客户端通过SignalR连接到ASP.NET服务器时,遇到了内部服务器错误(500)。本文将详细探讨问题的原因及解决方案。 ... [详细]
  • yikesnews第11期:微软Office两个0day和一个提权0day
    点击阅读原文可点击链接根据法国大选被黑客干扰,发送了带漏洞的文档Trumps_Attack_on_Syria_English.docx而此漏洞与ESET&FireEy ... [详细]
  • 苹果系统频繁弹窗提示无法验证服务器身份?竟是网易邮箱证书过期所致
    近日,众多苹果用户发现iOS、iPadOS和macOS系统频繁弹出无法验证服务器身份的警告。问题根源在于网易邮箱未能及时更新其数字证书,导致原证书过期后无法被信任。 ... [详细]
  • 通常情况下,修改my.cnf配置文件后需要重启MySQL服务才能使新参数生效。然而,通过特定命令可以在不重启服务的情况下实现配置的即时更新。本文将详细介绍如何在线调整MySQL配置,并验证其有效性。 ... [详细]
  • 本文详细介绍了 Python 中的条件语句和循环结构。主要内容包括:1. 分支语句(if...elif...else);2. 循环语句(for, while 及嵌套循环);3. 控制循环的语句(break, continue, else)。通过具体示例,帮助读者更好地理解和应用这些语句。 ... [详细]
author-avatar
天雨
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有