VMWare Workstation 网络设置 桥接模式 网络地址转换(NAT)模式 仅主机模式

news2024/9/24 23:25:40

文章目录

  • 网络模式
  • 配网要求
  • CentOS
  • DHCP
  • 虚拟网络
  • 桥接模式
    • 默认配置
    • 测试
    • 手动配置
    • 测试
  • 网络地址转发模式 (NAT)


网络模式

  • 桥接模式:
    • 主机与虚拟机对等, 虚拟机注册到主机所在的局域网, 会占用该网络的IP
    • 该局域网内的所有机器, 包括主机和其他机器和所有虚拟机, 均可互相访问
  • 网络地址转发(NAT)模式:
    • 可以认为是在主机下建立了一个虚拟局域网, 虚拟机注册到该网络, 不会占用主机所在局域网的IP
    • 虚拟机可通过主机访问互联网
    • 主机和所有虚拟机可以互相访问
    • 虚拟机可以访问局域网中的其他机器. 但是反过来不行(貌似NAT-PAT端口多路复用(不同端口指向不同虚拟机)可以实现该功能)
  • 仅主机模式:
    • 和NAT类似
    • 但是虚拟机只能和主机互相访问
    • 不能通过主机访问互联网
    • 也不能访问主机局域网中的其他机器

配网要求

作为一名 Java 从业者, 通常需要主机与虚拟机具有如下的网络特点

  • 主机与各虚拟机之间能够互相访问
  • 各虚拟机之间能够互相访问
  • 虚拟机能够访问互联网
  • 每一台虚拟机的IP地址一经配置则固定不变, 即使主机所在网络发生变化, 也不能影响虚拟机的IP
    • 很多中间件有高可用, 需要互相配置IP地址, 一旦虚拟机IP发生变化, 修改起来会很麻烦

这样看来桥接模式不符合第四点, 仅主机模式模式不符合第三点, 只有NAT模式符合要求

CentOS

  • CentOS Stream 9 之前, 网络配置在 /etc/sysconfig/network-scripts 下, 格式是 ifcfg
  • CentOS Stream 9, 网络配置在 /etc/NetworkManager/system-connections 下, 格式是 keyfile, 就是 ini 配置文件的格式

CentOS Stream 9 也没有了以前配置网络的命令

  • service network start/restart/status
  • systemctl start/restart/status network

CentOS Stream 9 重新加载网络配置

  • nmcli c reload
  • nmcli c up ens160, 这里的 ens160 是网卡名, 可根据实际情况更改

CentOS Stream 9 之前的配置大致是这个样子

TYPE=Ethernet # 网络类型为以太网
BOOTPROTO=static # 手动分配IP地址
DEVICE=ens32 # 网卡设备名,设备名和文件名一定要一致
ONBOOT=yes # 网卡随网络服务启动
IPADDR=192.168.1.201 # 网卡IP地址, 要和Windows在同一个网段, 即192.168.1.*
NETMASK=255.255.255.0 # 子网掩码
GATEWAY=192.168.1.1 # 默认网关
DNS1=8.8.8.8 # DNS,8.8.8.8为Google提供的免费DNS服务器IP地址

CentOS Stream 9 的默认配置如下, 可以看到默认的 ipv4 配置是自动获取 IP 地址, 如果有 DHCP 服务, 则该配置的虚拟机在启动后, 应该能自动拿到 IP 地址, 可以直接访问互联网

[connection]
id=ens160
uuid=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
type=etherent
autoconnect-priority=-999
interface-name=ens160
timestamp=1692376766

[ethernet]

[ipv4]
method=auto

[ipv6]
addr-gen-mode=eui64
method=auto

[proxy]

下面的测试均以 CentOS Stream 9 为例, 在 CentOS Stream 9 下的默认配置与效果, 在其他版本下不一定一致, 但大致相同

DHCP

DHCP 服务可以按照一定的规则和限制给客户端动态分配 IP 地址

NAT 模式和仅主机模式, 内置了 DHCP 服务, 桥接模式则使用主机所在局域网的 DHCP 服务, 即这三种网络模式的虚拟机, 如果系统配置了自动获取 IP 地址, 则虚拟机启动后就能获得一定限制内随机的 IP 地址, 每次启动后, 分配的 IP 地址可能会发生变化

虚拟网络

本机目前只连接了无线, 所以本次实验以无线网卡为准

在这里插入图片描述

在控制面板中, 我们可以看到网卡的信息, 以太网是有线网卡(本次暂无), WLAN 是无线网卡

当安装了 VMWare Workstation 后, 会多出来 VMnew1 和 VMnet8 两张虚拟网卡

在 VMWare Workstation 的 虚拟网络编辑器 中可以查看和配置这些虚拟网络

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

VMnet1 对应的是仅主机模式, VMnet8 对应的 NAT 模式, VMnet0 对应桥接模式, 据说桥接模式直接使用了主机网卡, 所以不会在控制面板的网络适配器中显示

桥接模式

默认情况下, 我们用桥接模式创建的 CentOS Stream 9 虚拟机可以直接访问互联网

虽然桥接模式没有 DHCP, 但是桥接模式会使用主机所在局域网的 DHCP 服务

桥接模式下, 虚拟机和主机对等, 应当在相同的网段, 有相同的子网掩码, 所以要配置虚拟机网络, 需要先了解主机当前的网络

无线局域网适配器 WLAN:

   连接特定的 DNS 后缀 . . . . . . . :
   IPv6 地址 . . . . . . . . . . . . : 2409:8a0c:247:8f70:46f:6c47:8c14:77da
   临时 IPv6 地址. . . . . . . . . . : 2409:8a0c:247:8f70:c96e:29a0:184f:3906
   本地链接 IPv6 地址. . . . . . . . : fe80::9ce9:cfa2:bedb:b6cc%3
   IPv4 地址 . . . . . . . . . . . . : 192.168.1.2
   子网掩码  . . . . . . . . . . . . : 255.255.255.0
   默认网关. . . . . . . . . . . . . : fe80::1%3
                                      192.168.1.1

可知主机网络如下

  • 默认网关: 192.168.1.1
  • 子网掩码: 255.255.255.0
  • 主机地址: 192.168.1.2

所以桥接模式的虚拟机地址可以配置为 192.168.1.3 ~ 192.168.1.254 中和其他设备不冲突的任何一个地址, 具体可以百度网络相关方面的知识

我们以 192.168.1.129/24 为例, /24 就是子网掩码 255.255.255.0

默认配置

在这里插入图片描述

首先查看虚拟网络编辑器中 VMnet0 的配置, 应将其桥接至正确的物理无线网卡上, 默认的自动一般都是没有问题不需要修改的

在这里插入图片描述

然后我们看虚拟机设置, 将网络连接修改为桥接模式, 然后启动虚拟机, 通过 ip a 查看虚拟机网络信息

在这里插入图片描述

可以看到 ens160 的地址被分配了 192.168.1.5

测试

互相访问试试看

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

可以看到

  • 主机可以访问虚拟机
  • 虚拟机可以访问主机
  • 虚拟机可以访问主机局域网内的其他机器
  • 主机局域网内的其他机器可以访问虚拟机

手动配置

/etc/NetworkManager/system-connections 下默认只有一个配置文件 ens160.nmconnection, 其内容如下

[connection]
id=ens160
uuid=9b698abd-9a30-3055-98c2-8ace52598494
type=ethernet
autoconnect-priority=-999
interface-name=ens160
timestamp=1692431323

[ethernet]

[ipv4]
method=auto

[ipv6]
addr-gen-mode=eui64
method=auto

[proxy]

在配置节 ipv4 下修改配置如下

method=manual
address1=192.168.1.129/24

manual 代表手动配置网络地址

执行 nmcli c reloadnmcli c up ens160 重新载入网络配置, 可看到 IP 地址已经更改

在这里插入图片描述

测试

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

可见, 测试结果与预期完全相同, 即

  • 主机可以访问虚拟机
  • 虚拟机可以访问主机
  • 虚拟机可以访问主机局域网内的其他机器
  • 主机局域网内的其他机器可以访问虚拟机

网络地址转发模式 (NAT)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/900240.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

ElasticSearch索引库、文档、RestClient操作

文章目录 一、索引库1、mapping属性2、索引库的crud 二、文档的crud三、RestClient 一、索引库 es中的索引是指相同类型的文档集合,即mysql中表的概念 映射:索引中文档字段的约束,比如名称、类型 1、mapping属性 mapping映射是对索引库中文…

ORA-600 ksuloget2 恢复----惜分飞

客户在win 32位的操作系统上调至sga超过2G,数据库运行过程中报ORA-600 ksuloget2错误 Thread 1 cannot allocate new log, sequence 43586 Checkpoint not complete Current log# 1 seq# 43585 mem# 0: D:\ORACLE\ORADATA\ORCL\REDO01.LOG Fri Aug 04 14:57:02 2023 Errors i…

正则表达式:贪婪与非贪婪模式

正则中的三种模式,贪婪匹配、非贪婪匹配和独占模式。 在这 6 种元字符中,我们可以用 {m,n} 来表示 (*)()(?) 这 3 种元字符: 贪婪模式,简单说就是尽可能进行…

激活函数总结(十三):Tanh系列激活函数补充(LeCun Tanh、TanhExp)

激活函数总结(十三):Tanh系列激活函数补充 1 引言2 激活函数2.1 LeCun Tanh激活函数2.2 TanhExp激活函数 3. 总结 1 引言 在前面的文章中已经介绍了介绍了一系列激活函数 (Sigmoid、Tanh、ReLU、Leaky ReLU、PReLU、Swish、ELU、SELU、GELU、…

pytorch 42 C#使用onnxruntime部署内置nms的yolov8模型

在进行目标检测部署时,通常需要自行编码实现对模型预测结果的解码及与预测结果的nms操作。所幸现在的各种部署框架对算子的支持更为灵活,可以在模型内实现预测结果的解码,但仍然需要自行编码实现对预测结果的nms操作。其实在onnx opset===11版本以后,其已支持将nms操作嵌入…

2.基于SpringBoot3集成SpringDoc Swagger3

1. 引入依赖 我们在build.gradle中引入依赖 implementation org.springdoc:springdoc-openapi-starter-webmvc-ui:2.1.0 implementation org.springdoc:springdoc-openapi-starter-webmvc-api:2.1.02. 新增SpringDocConfig.java文件 Configuration public class SpringDocCo…

ElasticSearch 数据聚合、自动补全(自定义分词器)、数据同步

文章目录 数据聚合一、聚合的种类二、DSL实现聚合1、Bucket(桶)聚合2、Metrics(度量)聚合 三、RestAPI实现聚合 自动补全一、拼音分词器二、自定义分词器三、自动补全查询四、实现搜索款自动补全(例酒店信息&#xff0…

【图论】最短路的传送问题

一.分层图问题(单源传送) (1)题目 P4568 [JLOI2011] 飞行路线 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) (2)思路 可知背景就是求最短路问题,但难点是可以使一条路距离缩短至0&#xf…

excel逻辑函数篇2

1、IF(logical_test,[value_if_true],[value_if_false]):判断是否满足某个条件,如果满足返回一个值,如果不满足则返回另一个值 if(条件,条件成立返回的值,条件不成立返回的值) 2、IFS(logical_test1,value_if_true1,…):检查是否…

虚拟机问题

虚拟机无法识别USB设备 经排查为VMware USB Arbitration Service 没有启动,但是VMware USB Arbitration Service依赖于VMware Workstation Server启动 VMware USB Arbitration Service(VMUSBArbService)是由 VMware 虚拟化软件提供的一个服务,用于协调和管理主机系统上的…

每日一题——接雨水(单调栈)

接雨水——单调栈 题目链接 单调递增的栈还是单调递减的栈 我们常说的**”积水成洼“**,指的就是说:当两边地势高于中间的地势时,中间的区域就成了洼地,也就可以积水了。 这一题就是如此,我们需要通过一个栈来记录数…

UE4中关于利用粒子系统做轨迹描绘导致系统流畅性下降的问题

UE4中关于利用粒子系统做轨迹描绘导致系统流畅性下降的问题 文章目录 UE4中关于利用粒子系统做轨迹描绘导致系统流畅性下降的问题前言假设及验证1. 过多的粒子发射器影响仿真系统2. 粒子数目太多,降低粒子发射频率,同时增大粒子显示范围3. 把信息输出到屏…

揭秘程序员的鄙视链,你在哪一层?看完我想哭

虽然不同的编程语言都有其优缺点,而且程序员之间的技能和能力更加重要,但是有些程序员可能会因为使用不同的编程语言而产生鄙视链。 以下是一些可能存在的不同编程语言程序员之间的鄙视链: 低级语言程序员鄙视高级语言程序员:使用…

Java教程:如何使用切面环绕方法对所有接口进行添加出入参日志保存功能

背景: ----在很多时候我们做开发时,往往只是提供一个对外接口来进行前后端调试,或第三方系统联调,并使用log进行日志打印,每当出现问题进行排查时,只需要查看服务器日志就可以定位到问题,从而解…

Three.js程序化3D城市建模【OpenStreetMap】

对于我在 Howest 的研究项目,我决定构建一个 3D 版本的 Lucas Bebber 的“交互式讲故事的动画地图路径”项目。 我将使用 OSM 中的矢量轮廓来挤出建筑物的形状并将它们添加到 3js 场景中,随后我将对其进行动画处理 推荐:用 NSDT编辑器 快速搭…

在抽象类中使用@Autowired注入其他bean

概述 今天写代码时,使用模板设计模式,需要在抽象类中使用Autowired注入指定的Bean,然后调用指定方法。 问题 发现Autowired注解有红色下划线 解决 其实没有什么关系,只要实现类继承这个抽象方法,然后加入IOC容器&am…

深入理解SSO原理,项目实践使用一个优秀开源单点登录项目(附源码)

深入理解SSO原理,项目实践使用一个优秀开源单点登录项目(附源码)。 一、简介 单点登录(Single Sign On),简称为 SSO。 它的解释是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。 ❝ 所谓一次登录,处处登录。同样一处退出,处处退出。 ❞ 二…

内核配置知识

Linux内核配置系统的组成 Linux内核源码很多,有上千条配置选项,配置相当复杂。 为了更好选择自己想要的功能配置,linux内核源码组织了一个配置系统; 配置系统包括三部分: Makefile:负责整体的配置编译 …

人工智能在网络安全中的作用:当前的局限性和未来的可能性

人工智能 (AI) 激发了网络安全行业的想象力,有可能彻底改变安全和 IT 团队处理网络危机、漏洞和勒索软件攻击的方式。 然而,对人工智能的能力和局限性的现实理解至关重要,并且存在许多挑战阻碍人工智能对网络安全产生直接的变革性影响。 在…

Python学习 -- 高阶、闭包、回调、偏函数与装饰器探究

Python函数作为编程的核心,涵盖了众多令人兴奋的概念,如高阶函数、闭包、回调、偏函数和装饰器。本篇博客将深入研究这些概念,结合实际案例为你解析函数的精妙,以及如何巧妙地运用它们来构建更强大、灵活的程序。 高阶函数&#…