当前位置: 首页 > news >正文

Hyper-V如何设置网络-虚拟交换机设置

Hyper-V如何设置网络-虚拟交换机设置

  • 缘起
  • 虚拟交换机类型
    • 1. 外部交换机;
    • 2. 内部交换机;
    • 3. 专用交换机;
    • 4.default switch;
  • 虚拟机上openwrt多种网络连接方式

缘起

发现win10还有个虚拟机Hyper-V的功能,不太占资源,不用另外装VMare了,所以立即使用上。但设置网络的时候,不像WMare那样直接管理虚拟网卡,只有个虚拟交换机可用,所以各种查证、试验,现在终于搞清楚了。
首先,虚拟机管理器服务开启后,宿主机本身的网卡已经被虚拟机管理器管理了,不再属于宿主机。宿主机不再是个物理机,也是虚拟机管理器管理下的一个虚拟机。虚拟机管理器为宿主机生成一个或者多个虚拟网卡(根据设置),并且通过虚拟交换机形成各种组合,一整体的形式形成对外网络连接。原来的物理网卡是这个整体对外联络的出口。
虚拟机只需要设定连接那个虚拟交换机,虚拟机管理器会自动建立虚拟网卡与之连接,所以只管理虚拟交换机就可以了。

虚拟交换机类型

正式建立虚拟机之前,想让建立虚拟机的网络连接,就需要使用到虚拟交换机,否则虚拟机上没有可用网卡:
打开Hyper-V管理器,右侧有设置区:点击虚拟交换机管理器
在这里插入图片描述
看到系统内存在一个default switch,这个是虚拟机服务开始后,就默认存在的一个虚拟交换机,同时会在宿主机上生成一个虚拟网卡连接到default switch:这个虚拟交换机功能在后面说。
在这里插入图片描述
先说自建虚拟交换机。
打开“虚拟交换机管理器”后,自建的交换机,分三种:
在这里插入图片描述

1. 外部交换机;

可以与宿主机直接连接的交换机,处在宿主机同一网段,如果宿主机在192.168.31.0这个网络,那么虚拟机也能在这个网段下工作,与该网段下其他机器互通。交换机名称可以随便取,如“out”。
外部网络还有个选项:“允许管理操作系统共享此网络适配器”,重点:只有外部网络有这个选项。
在这里插入图片描述
当勾选的时候物理结构是这样的:
宿主机中存在两个虚拟网络,一个是连接default switch,一个是连接“虚拟交换机(外部)”
这个时候,打开宿主机的网络设置,可以看到两个虚拟网卡,一个实体网卡。这个实体网卡是因为共享了新建的外部虚拟交换机。虚拟网卡中,除了默认的连接default switch的,还有一个就是连接新建外部交换机的虚拟网卡:
在这里插入图片描述

在不勾选“允许管理操作系统共享此网络适配器”时,如果宿主机只有一个网卡,那么本机将失去互联网连接。因为物理网卡已经被虚拟机管理器管理,宿主机上只有一个连接default switch的虚拟网卡,并且这个default switch不和任何网络连接,这时候的结构如下:
在这里插入图片描述
这个时候,宿主机上应该看不到物理网卡,但我的宿主机上任然看到物理网卡(自己也有点晕),但不起作用:
在这里插入图片描述

2. 内部交换机;

内部交换机是用来宿主机和其他虚拟机交互信息用的。只在虚拟机管理器内部通讯,不和外部通讯。这时候的结构如下:
在这里插入图片描述
宿主机上看到的是,一个物理网卡、一个连接default switch的虚拟网卡、一个连接内部交换机的虚拟网卡,这个虚拟内部交换机我取名为“internal”:
这里我给内部交换机取名:internal

3. 专用交换机;

除宿主机之外的虚拟机之间通讯用的,结构如下:
在这里插入图片描述

4.default switch;

default switch是内部虚拟交换机的一种,但比普通内部虚拟交换机多了NAT功能。是由宿主机向其他虚拟机进行地址转发,所以,宿主机需要具备DHCP功能,或者全部虚拟机使用静态地址,手工指定IP、gateway、dns等。

虚拟机上openwrt多种网络连接方式

这里不说如何安装openwrt,只说openwrt虚拟机如何和宿主机连接。
1.虚拟机只安装内部交换机,只使用openwrt非联网的功能,如KMS服务器。
2.虚拟机只安装外部交换机,宿主机共享外部虚拟交换机。可以作为旁路由,需要设置宿主机的网关指向虚拟机、虚拟机的网关指向实体路由器。这样设置系统会提示遭到攻击。
2.虚拟机安装外部虚拟交换机和内部虚拟交换机,并且宿主机不共享外部虚拟交换机,再在openwrt中开启DHCP。这样就相当于在宿主机前段设置了一个虚拟机的软路由,宿主机通过内部交换机连接虚拟机软路由,虚拟机软路由用外部虚拟交换机和外部网络通讯。宿主机和外部网络不是一个网段,正常情况下,宿主机可以访问到外部网络,但外部网络不能访问宿主机。这时候openwrt的所有功能都可以使用,这种情况,应该把虚拟机的cpu和内存设置的强一些。

相关文章:

Hyper-V如何设置网络-虚拟交换机设置

Hyper-V如何设置网络-虚拟交换机设置 缘起虚拟交换机类型1. 外部交换机;2. 内部交换机;3. 专用交换机;4.default switch; 虚拟机上openwrt多种网络连接方式 缘起 发现win10还有个虚拟机Hyper-V的功能,不太占资源&…...

SAP不同语言开发

文章目录 1 Please write English Nmae2 go to goto menu and translation3 Write your target language .4 Please input Chinese5 Summary 1 Please write English Nmae 2 go to goto menu and translation 3 Write your target language . 4 Please input Chinese 5 Summary…...

瑞_Java开发手册_(一)编程规约

文章目录 编程规约的意义(一)命名风格(二)常量定义(三)代码格式(四)OOP 规约(五)日期时间(六)集合处理(七)并发…...

【JVM】本地方法接口 Native Interface

一、JNI简介 JVM本地方法接口(Java Native Interface,JNI)是一种允许Java代码调用本地方法(如C或C编写的方法)的机制。这种技术通常用于实现高性能的计算密集型任务,或者与底层系统库进行交互。 二、JNI组…...

JS 本地存储 sessionStorage localStorage

本地存储 随着互联网的快速发展,基于网页的应用越来越普遍,同时也变的越来越复杂,为了满足各种各样的需求,会经常性在本地存储大量的数据,HTML5规范提出了相关解决方案。 本地存储特性 1、数据存储在用户浏览器中 2…...

K8S 存储卷

意义:存储卷----数据卷 容器内的目录和宿主机的目录进行挂载 容器在系统上的生命周期是短暂的,delete,k8s用控制器创建的pod,delete相当于重启,容器的状态也会回复到初始状态 一旦回到初始状态,所有的后天编辑的文件…...

一个SqlSugar实际案例

SqlGugar是一个非常好的数据库操作框架,今天用一个示例来分享如何使用。 新建一张课程表 结构如下: CREATE TABLE t_course (id int NOT NULL AUTO_INCREMENT COMMENT ID,title varchar(1024) NOT NULL COMMENT 课程标题,description text NOT NULL C…...

【RT-DETR有效改进】ShapeIoU、InnerShapeIoU关注边界框本身的IoU(包含二次创新)

前言 大家好,我是Snu77,这里是RT-DETR有效涨点专栏。 本专栏的内容为根据ultralytics版本的RT-DETR进行改进,内容持续更新,每周更新文章数量3-10篇。 专栏以ResNet18、ResNet50为基础修改版本,同时修改内容也支持Re…...

从理论到实践:数字孪生技术的全面应用探讨

数字孪生是一种将实际物体或系统的数字模型与其实时运行状态相结合的概念。这一概念的核心在于创建一个虚拟的、与真实世界相对应的数字副本,以便监测、分析和优化实体系统的性能。 简单理解,数字孪生就是在一个设备或系统的基础上,创造一个…...

2.1.2 一个关于y=ax+b的故事

跳转到根目录:知行合一:投资篇 已完成: 1、投资&技术   1.1.1 投资-编程基础-numpy   1.1.2 投资-编程基础-pandas   1.2 金融数据处理   1.3 金融数据可视化 2、投资方法论   2.1.1 预期年化收益率   2.1.2 一个关于yaxb的…...

Rust-解引用

“解引用”(Deref)是“取引用”(Ref)的反操作。取引用,我们有&、&mut等操作符,对应的,解引用,我们有操作符,跟C语言是一样的。示例如下: 比如说,我们有引用类型p:&i32;,那么可以用符…...

记录一下vue项目引入百度地图

公共部分 #allmap { width: 500px; height: 500px; font-family: "微软雅黑"; } 1、 <div id"allmap"> <baidu-map :center"center" :zoom"zoom" ready"handler"></baidu-map> </div> data()…...

基于Docker官方php:7.4.33-fpm镜像构建支持67个常见模组的php7.4.33镜像

实践说明&#xff1a;基于RHEL7(CentOS7.9)部署docker环境(23.0.1、24.0.2)&#xff0c;所构建的php7.4.33镜像应用于RHEL7-9(如AlmaLinux9.1)&#xff0c;但因为docker的特性&#xff0c;适用场景是不限于此的。 文档形成时期&#xff1a;2017-2023年 因系统或软件版本不同&am…...

opencv通过轮廓点生成闭合图像

前言 有时候需要将某一些点生成闭合的二值图像。记录一下。 // 轮廓点个数 int nrCurvePoints curContour.nr; // 轮廓点 DIM2DL* curvePoints curContour.pts;std::vector<cv::Point> points; // 轮廓点集合 for (int cntPoint 0; cntPoint < nrCurvePoints; cn…...

Python 网络编程之TCP详细讲解

【一】传输层 【1】概念 传输层是OSI五层模型中的第四层&#xff0c;负责在网络中的两个端系统之间提供数据传输服务主要协议包括**TCP&#xff08;传输控制协议&#xff09;和UDP&#xff08;用户数据报协议&#xff09;** 【2】功能 **端到端通信&#xff1a;**传输层负责…...

直饮水系统服务认证:提升水质与安全的必要举

直饮水系统作为一种便捷、卫生的饮水方式&#xff0c;已经越来越受到人们的欢迎。然而&#xff0c;随着市场的发展&#xff0c;直饮水系统的质量和服务也面临着一些挑战。因此&#xff0c;直饮水系统服务认证应运而生&#xff0c;成为了提升水质与安全的必要举措。 一、直饮水…...

Qt 调试系统输出报警声以及添加资源

文章目录 前言一、方法1 使用 Qsound1.添加都文件 直接报错2.解决这个错误 添加 QT multimedia3. 加入代码又遇到新的错误小结 二、第二种方法1.引入库2.添加资源2.1依次点击Qt--->Qt Resource File--->Choose2.2给资源文件起个名字&#xff0c;如&#xff1a;res&#…...

Linux下文件的创建写入读取编程

在linux下操作一个文件&#xff0c;首先要保证文件的存在&#xff08;不存在就创建&#xff09;&#xff0c;接着打开文件&#xff08;打开成功&#xff09;并得到文件描述符&#xff0c;接着在进行读写操作&#xff0c;最后还需要关闭文件。如果我们对文件进行读写之后不关闭文…...

python 解析

list(pd.DataFrame) # 所有列名切片&#xff1a;print("显式 切片:\n", df.loc[:, "number":"sum"]) 所有行&#xff0c;列是从number 到sum &#xff0c;前闭后开print("隐式 切片:\n", df.iloc[:, 1:3]) # 结果和上面一样转化成字典…...

谷歌aab包在Android 14闪退而apk没问题(targetsdk 34)

问题原因 Unity应用(target SDK 34)上线到GooglePlay&#xff0c;有用户反馈fold5设备上&#xff08;Android14系统&#xff09;疯狂闪退&#xff0c;经测试&#xff0c;在小米手机Android14系统的版本复现成功了&#xff0c;奇怪的是apk直接安装没问题&#xff0c;而打包成aa…...

[特殊字符] 智能合约中的数据是如何在区块链中保持一致的?

&#x1f9e0; 智能合约中的数据是如何在区块链中保持一致的&#xff1f; 为什么所有区块链节点都能得出相同结果&#xff1f;合约调用这么复杂&#xff0c;状态真能保持一致吗&#xff1f;本篇带你从底层视角理解“状态一致性”的真相。 一、智能合约的数据存储在哪里&#xf…...

Linux应用开发之网络套接字编程(实例篇)

服务端与客户端单连接 服务端代码 #include <sys/socket.h> #include <sys/types.h> #include <netinet/in.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <arpa/inet.h> #include <pthread.h> …...

Java 语言特性(面试系列2)

一、SQL 基础 1. 复杂查询 &#xff08;1&#xff09;连接查询&#xff08;JOIN&#xff09; 内连接&#xff08;INNER JOIN&#xff09;&#xff1a;返回两表匹配的记录。 SELECT e.name, d.dept_name FROM employees e INNER JOIN departments d ON e.dept_id d.dept_id; 左…...

8k长序列建模,蛋白质语言模型Prot42仅利用目标蛋白序列即可生成高亲和力结合剂

蛋白质结合剂&#xff08;如抗体、抑制肽&#xff09;在疾病诊断、成像分析及靶向药物递送等关键场景中发挥着不可替代的作用。传统上&#xff0c;高特异性蛋白质结合剂的开发高度依赖噬菌体展示、定向进化等实验技术&#xff0c;但这类方法普遍面临资源消耗巨大、研发周期冗长…...

深入浅出:JavaScript 中的 `window.crypto.getRandomValues()` 方法

深入浅出&#xff1a;JavaScript 中的 window.crypto.getRandomValues() 方法 在现代 Web 开发中&#xff0c;随机数的生成看似简单&#xff0c;却隐藏着许多玄机。无论是生成密码、加密密钥&#xff0c;还是创建安全令牌&#xff0c;随机数的质量直接关系到系统的安全性。Jav…...

聊聊 Pulsar:Producer 源码解析

一、前言 Apache Pulsar 是一个企业级的开源分布式消息传递平台&#xff0c;以其高性能、可扩展性和存储计算分离架构在消息队列和流处理领域独树一帜。在 Pulsar 的核心架构中&#xff0c;Producer&#xff08;生产者&#xff09; 是连接客户端应用与消息队列的第一步。生产者…...

关于iview组件中使用 table , 绑定序号分页后序号从1开始的解决方案

问题描述&#xff1a;iview使用table 中type: "index",分页之后 &#xff0c;索引还是从1开始&#xff0c;试过绑定后台返回数据的id, 这种方法可行&#xff0c;就是后台返回数据的每个页面id都不完全是按照从1开始的升序&#xff0c;因此百度了下&#xff0c;找到了…...

vue3 定时器-定义全局方法 vue+ts

1.创建ts文件 路径&#xff1a;src/utils/timer.ts 完整代码&#xff1a; import { onUnmounted } from vuetype TimerCallback (...args: any[]) > voidexport function useGlobalTimer() {const timers: Map<number, NodeJS.Timeout> new Map()// 创建定时器con…...

Module Federation 和 Native Federation 的比较

前言 Module Federation 是 Webpack 5 引入的微前端架构方案&#xff0c;允许不同独立构建的应用在运行时动态共享模块。 Native Federation 是 Angular 官方基于 Module Federation 理念实现的专为 Angular 优化的微前端方案。 概念解析 Module Federation (模块联邦) Modul…...

SpringTask-03.入门案例

一.入门案例 启动类&#xff1a; package com.sky;import lombok.extern.slf4j.Slf4j; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cache.annotation.EnableCach…...