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

通过命令行配置调整KVM的虚拟网络

a38ca96e4d2b7a02b908572f7c7532c8.gif

正文共:1234 字 20 图,预估阅读时间:2 分钟

在上篇文章中最小化安装的CentOS7部署KVM虚拟机,我们介绍了如何在最小化安装的CentOS 7系统中部署KVM组件和相关软件包。因为没有GUI图形界面,我们还特地介绍了如何通过命令行创建存储池和虚拟机。

接着前面的操作,我们今天首先将虚拟机开机。

virsh start vsr

a9f578db8dc567c4a86f9417ef3e6dad.png

这里需要注意一下,当虚拟机在没有开机的情况下,前面的ID编号是空的,只有在启动之后才会分配ID。所以建议对虚拟机的操作尽量保持以虚拟机名称为操作对象,命令里面也是这么介绍的。

e6591aa1db0ed55fe6095d9e50d4c820.png

然后我们还是使用VNC客户端连接到虚拟机的图形界面,IP地址使用KVM主机的IP地址192.168.1.93,端口使用创建虚拟机时配置的5901。

7a523b77aa919d71ae9e897b2a47c180.png

然后我们按照正常的设备配置进行操作。首先,我们可以看到VSR自动获取到了192.168.122.25这个地址,和virbr0属于同一网段。按照我们之前通过“虚拟系统管理器VMM”配置的经验不会吧!KVM竟然不支持磁盘的精简置备!?,这个虚拟网卡默认连接到默认的虚拟网络的,启用了DHCP,并且开启了NAT转发。

e15e5c47c88bb389953802d2ce1ce888.png

然后,我在内核中还注意到了一个现象,那就是又多了一个vnet0的网卡,这个网卡在安装完KVM的时候还是不存在的。

3d937ce9828e17904f9495751dd37eb8.png

接下来,我们看看KVM中网络的相关配置。

d6c139699dd81e92362cf1019565284b.png

可以看到,有两个文件为非空状态。其中default.conf的文件内容如下:

6c52cc4545af8e5934095c850d13cc5e.png

对于该配置文件,顶部有着重提示:这是一个自动生成的文件,对它的更改可能会被覆盖并丢失。应使用命令virsh net-edit default对此配置进行更改或使用libvirt API的其他应用程序。

在下面的配置中,我们可以看到主要是DHCP相关的配置,里面还指向了dnsmasq目录下的相关文件,不过这两个文件都是空的。

我们再看一下virbr0.status中的内容。

5a5bea3879afb86a399c8c0148958155.png

可以看到,主要是记录了DHCP分配的地址信息。

然后我们登录虚拟机看一下。

56f5dd1f543ebe9d320677ac253b0d62.png

我们可以看到,VSR通过DHCP获取到了192.168.122.25这个IP地址。再看一下路由表信息。

f84642ff7c6149dc6723d6454d201224.png

可以看到下发了一条默认路由,下一跳指向网关192.168.122.1。同时还分配了一个默认的DNS服务器。

eeef8c743fcc6dd5bce8fdccea52d39b.png

这就说明,KVM主机默认还配置了DNS代理,怪不得要用dnsmasq呢。dnsmasq是一个轻量级的DNS服务器和DHCP服务器,可以同时为KVM虚拟机提供DNS服务和DHCP服务。

然后我们看一下虚拟机访问公网是否正常。

d8e61bc0da18ea5415449e2eb6c7fbec.png

没有问题。

正常来讲,CentOS主机的IPv4转发默认是关闭的,并且没有使能NAT功能,我们看看现在的相关配置。

9698907070bc01e906baa967b725a2e6.png

可以看到,IPv4转发已经被开启了,NAT转发中也使能了192.168.122.0/24整个网段的源地址,跟dnsmasq中的配置是一致的。

然后我们看一下virsh中网络相关的配置命令。

e96d63850440a2d58126e857577041cc.png

首先查看一下默认网络default的信息。

20302815f6acb229687ac9e71fad1a09.png

接下来,我想将默认的NAT模式修改为桥接模式,首先关闭并删除默认网络“default”。

virsh net-destroy default
virsh net-undefine default

9d6dc8c8c6afe46a7c4ccb9050a889cf.png

然后新建一个XML文件/var/lib/libvirt/network/bridge.xml,配置将虚拟网卡virbr0桥接到网卡ens224上。

<network><name>bridge</name><forward mode="bridge"/><bridge name="ens224"/><virtualport type="openvswitch"/>
</network>

92835e41593bcf00f73053ae7b85b941.png

然后就可以使用以下命令创建一个新的名为“bridge”的桥接网络:

virsh net-define /var/lib/libvirt/network/bridge.xml
virsh net-autostart bridge
virsh net-start bridge

56bfb07997afb0730a8dcd9a5adeb82a.png

注意,桥接的网卡在使用时需要注意以下几点限制:

1、确保桥接的物理网卡处于开启状态,且未被其他进程或服务所占用;

2、桥接的物理网卡不应该配置IP地址,因为IP地址已经被分配给桥接设备;

3、网卡在桥接模式下工作时,其MAC地址会被虚拟机的MAC地址替代,因此不能使用MAC地址来作为唯一的识别标志;

4、当虚拟机从网络中接收到数据时,数据包首先被发送到桥接设备上,如果不属于桥接设备上的任何虚拟机,那么数据包将被丢弃,这可能会导致网络阻塞。

5454d9d6fb9fe3969d9dfac0988d3d90.png

所以,我们看到,应该是因为使用了NetworkManager的原因,自动为网卡ens224分配了IP地址,导致虚拟机无法获取IP地址。然后我们修改NetworkManager的配置文件/etc/NetworkManager/NetworkManager.conf,在[main]部分添加配置使其不再管理网卡ens224:

[main]
no-auto-default=ens224

然后重启网络服务就可以了。

5b729bb96fbdacd2c3e4726acf3bfbcb.png

9518a111c2ba5aab371269e64277887e.gif

长按二维码
关注我们吧

99840faebc11d2f4c6cf85e04378c32e.jpeg

e7549ea150c2b1fd5f3268d55a7823a4.png

最小化安装的CentOS7部署KVM虚拟机

网络之路1:初识网络

网络之路2:初识路由表

什么是OpenStack?

使用Python批量处理Excel的内容

如何使用Python提取Excel中固定单元格的内容

全面升级:网工Python的最佳实践

OpenWrt配置单臂路由模式

OpenWrt部署配置openVPN服务器

OpenWrt配置openVPN客户端

将OpenWrt部署在x86服务器上

通过Nginx做一个openVPN配置文件下载页面

相关文章:

通过命令行配置调整KVM的虚拟网络

正文共&#xff1a;1234 字 20 图&#xff0c;预估阅读时间&#xff1a;2 分钟 在上篇文章中&#xff08;最小化安装的CentOS7部署KVM虚拟机&#xff09;&#xff0c;我们介绍了如何在最小化安装的CentOS 7系统中部署KVM组件和相关软件包。因为没有GUI图形界面&#xff0c;我们…...

Apache POI操作excel

第1部分&#xff1a;引言 1.1 Apache POI简介 Apache POI是一个开源的Java库&#xff0c;用于处理Microsoft Office文档。自2001年首次发布以来&#xff0c;它已经成为Java社区中处理Office文档事实上的标准。Apache POI支持HSSF&#xff08;用于旧版本的Excel格式&#xff0…...

Python错误集锦:faker模块生成xml文件时提示:`xml` requires the `xmltodict` Python library

原文链接&#xff1a;http://www.juzicode.com/python-error-faker-exceptions-unsupportedfeature-xml-requires-the-xmltodict-python-library 错误提示&#xff1a; faker模块生成xml文件时提示&#xff1a; xml requires the xmltodict Python library Traceback (most r…...

Vue3-尚硅谷笔记

1. Vue3简介 2020年9月18日&#xff0c;Vue.js发布版3.0版本&#xff0c;代号&#xff1a;One Piece&#xff08;n 经历了&#xff1a;4800次提交、40个RFC、600次PR、300贡献者 官方发版地址&#xff1a;Release v3.0.0 One Piece vuejs/core 截止2023年10月&#xff0c;最…...

RockChip Android12 System之MultipleUsers

一:概述 System中的MultipleUsers不同于其他Preference采用system_dashboard_fragment.xml文件进行加载,而是采用自身独立的xml文件user_settings.xml加载。 二:Multiple Users 1、Activity packages/apps/Settings/AndroidManifest.xml <activityandroid:name="S…...

第12天:前端集成与Django后端 - 用户认证与状态管理

第12天&#xff1a;前端集成与Django后端 - 用户认证与状态管理 目标 整合Django后端与Vue.js前端&#xff0c;实现用户认证和应用状态管理。 任务概览 设置Django后端用户认证。创建Vue.js前端应用。使用Vuex进行状态管理。实现前端与后端的用户认证流程。 详细步骤 1. …...

在ROS2中蓝牙崩溃的原因分析

在ROS2中&#xff0c;如果蓝牙模块没有成功启动&#xff0c;可能的原因有几个方面&#xff1a; 1. **硬件问题**&#xff1a;首先需要确认蓝牙硬件本身是否正常工作&#xff0c;包括检查蓝牙模块是否正确连接到系统&#xff0c;以及模块是否存在物理损坏。 2. **驱动问题**&a…...

【PythonWeb开发】Flask中间件钩子函数实现封IP

在 Flask 框架中&#xff0c; 提供了几种类型的钩子&#xff08;类似于Django的中间件&#xff09;&#xff0c;它们是在请求的不同阶段自动调用的函数。这些钩子让你能够对请求和响应的处理流程进行扩展&#xff0c;而无需修改核心代码。 Flask钩子的四种类型 before_first_r…...

可以一键生成热点营销视频的工具,建议收藏

在当今的商业环境中&#xff0c;热点营销已经成为了一种非常重要的营销策略。那么&#xff0c;什么是热点营销呢&#xff1f;又怎么做热点营销视频呢&#xff1f; 最近高考成绩慢慢公布了&#xff0c;领导让结合“高考成绩公布”这个热点&#xff0c;做一个关于企业或产品的营销…...

Unity Meta Quest 开发:关闭 MR 应用的安全边界

社区链接&#xff1a; SpatialXR社区&#xff1a;完整课程、项目下载、项目孵化宣发、答疑、投融资、专属圈子 &#x1f4d5;教程说明 这期教程我将介绍如何在应用中关闭 Quest 系统的安全边界。 视频讲解&#xff1a; https://www.bilibili.com/video/BV1Gm42157Zi &#x1…...

4.sql注入攻击(OWASP实战训练)

4.sql注入攻击&#xff08;OWASP实战训练&#xff09; 引言1&#xff0c;实验环境owasp&#xff0c;kali Linux。2&#xff0c;sql注入危害3&#xff0c;sql基础回顾4&#xff0c;登录owasp5&#xff0c;查询实例&#xff08;1&#xff09;简单查询实例&#xff08;2&#xff0…...

前端Web开发HTML5+CSS3+移动web视频教程 Day1

链接 HTML 介绍 写代码的位置&#xff1a;VSCode 看效果的位置&#xff1a;谷歌浏览器 安装插件 open in browser&#xff1a; 接下来要保证每次用 open in browser 打开的是谷歌浏览器。只需要将谷歌浏览器变为默认的浏览器就可以了。 首先进入控制面板&#xff0c;找到默…...

中医实训室:在传统针灸教学中的应用与创新

中医实训室是中医教育体系中的重要组成部分&#xff0c;尤其在传统针灸教学中&#xff0c;它扮演着无可替代的角色。这里是理论与实践的交汇点&#xff0c;是传统技艺与现代教育理念的碰撞之地。本文将探讨中医实训室在传统针灸教学中的应用与创新实践。 首先&#xff0c;实训室…...

React Hooks 小记(七)_useReducer

useReducer usereducer 相当于 复杂的 useState 当状态更新逻辑较复杂时可以考虑使用 useReducer。useReducer 可以同时更新多个状态&#xff0c;而且能把对状态的修改从组件中独立出来。 相比于 useState&#xff0c;useReducer 可以更好的描述“如何更新状态”。例如&#…...

甲子光年专访天润融通CEO吴强:客户经营如何穿越低速周期?

作者&#xff5c;陈杨、编辑&#xff5c;栗子 社会的发展从来都是从交流和联络开始的。 从结绳记事到飞马传信&#xff0c;从电话电报到互联网&#xff0c;人类的联络方式一直都在随着时代的发展不断进步。只是传统社会通信受限于技术导致效率低下&#xff0c;对经济社会产生影…...

还不到6个月,GPTs黄了

相比起来&#xff0c;人们还不如使用一个足够强大、灵活且通用的AI助手来满足各类复杂需求。更严重的是一些独立GPTs显露出的安全隐患。除此之外&#xff0c;最大的问题在于OpenAI模糊不清的货币化政策。 文章正文 上周&#xff0c;不少人发现微软官网忽然更新了一条“GPT Bu…...

IOS Swift 从入门到精通:BlurEffect BlendMode stroke

文章目录 UIBlurEffectBlendModestroke基本用法:描边样式:与strokeBorder的区别:组合使用:自定义形状:UIBlurEffect 在Swift中,实现模糊效果通常是通过UIKit框架中的UIBlurEffect类来完成的,这通常被称作毛玻璃效果。 **创建UIBlurEffect实例:**选择一个模糊效果的样…...

西木科技Westwood-Robotics人型机器人Bruce配置和真机配置

西木科技Westwood-Robotics人型机器人Bruce配置和真机配置 本文内容机器人介绍Bruce机器人Gazebo中仿真代码部署Bruce真机代码部署 本文内容 人形机器人Brcue相关介绍docker中安装Gazebo并使用Bruce机器人控制器更换环境配置 机器人介绍 公司&#xff1a;西木科技Westwood-R…...

【招聘贴】JAVA后端·唯品会·BASE新加坡

作者|老夏&#xff08;题图&#xff1a;公司业务介绍页&#xff09; “ 请注意&#xff0c;这两个岗是BASE新加坡的&#xff0c;欢迎推荐给身边需要的朋友&#xff08;特别是在新加坡的&#xff09;。” VIP海外业务-产品技术团队&#xff0c;这两个岗位属于后端工程组的岗&…...

CVPR2024|vivo提出使用对抗微调获得泛化性更强的SAM,分割性能直接登顶 SOTA!

在计算机视觉不断发展的领域中&#xff0c;基础模型已成为一种关键工具&#xff0c;显示出对多种任务的出色适应性。其中&#xff0c;由 Meta AI 开发的 Segment Anything Model&#xff08;SAM&#xff09;在图像分割任务中表现杰出。然而&#xff0c;和其他类似模型一样&…...

浅谈 React Hooks

React Hooks 是 React 16.8 引入的一组 API&#xff0c;用于在函数组件中使用 state 和其他 React 特性&#xff08;例如生命周期方法、context 等&#xff09;。Hooks 通过简洁的函数接口&#xff0c;解决了状态与 UI 的高度解耦&#xff0c;通过函数式编程范式实现更灵活 Rea…...

C++_核心编程_多态案例二-制作饮品

#include <iostream> #include <string> using namespace std;/*制作饮品的大致流程为&#xff1a;煮水 - 冲泡 - 倒入杯中 - 加入辅料 利用多态技术实现本案例&#xff0c;提供抽象制作饮品基类&#xff0c;提供子类制作咖啡和茶叶*//*基类*/ class AbstractDr…...

基于Flask实现的医疗保险欺诈识别监测模型

基于Flask实现的医疗保险欺诈识别监测模型 项目截图 项目简介 社会医疗保险是国家通过立法形式强制实施&#xff0c;由雇主和个人按一定比例缴纳保险费&#xff0c;建立社会医疗保险基金&#xff0c;支付雇员医疗费用的一种医疗保险制度&#xff0c; 它是促进社会文明和进步的…...

反射获取方法和属性

Java反射获取方法 在Java中&#xff0c;反射&#xff08;Reflection&#xff09;是一种强大的机制&#xff0c;允许程序在运行时访问和操作类的内部属性和方法。通过反射&#xff0c;可以动态地创建对象、调用方法、改变属性值&#xff0c;这在很多Java框架中如Spring和Hiberna…...

Android第十三次面试总结(四大 组件基础)

Activity生命周期和四大启动模式详解 一、Activity 生命周期 Activity 的生命周期由一系列回调方法组成&#xff0c;用于管理其创建、可见性、焦点和销毁过程。以下是核心方法及其调用时机&#xff1a; ​onCreate()​​ ​调用时机​&#xff1a;Activity 首次创建时调用。​…...

基于IDIG-GAN的小样本电机轴承故障诊断

目录 🔍 核心问题 一、IDIG-GAN模型原理 1. 整体架构 2. 核心创新点 (1) ​梯度归一化(Gradient Normalization)​​ (2) ​判别器梯度间隙正则化(Discriminator Gradient Gap Regularization)​​ (3) ​自注意力机制(Self-Attention)​​ 3. 完整损失函数 二…...

es6+和css3新增的特性有哪些

一&#xff1a;ECMAScript 新特性&#xff08;ES6&#xff09; ES6 (2015) - 革命性更新 1&#xff0c;记住的方法&#xff0c;从一个方法里面用到了哪些技术 1&#xff0c;let /const块级作用域声明2&#xff0c;**默认参数**&#xff1a;函数参数可以设置默认值。3&#x…...

Vue 3 + WebSocket 实战:公司通知实时推送功能详解

&#x1f4e2; Vue 3 WebSocket 实战&#xff1a;公司通知实时推送功能详解 &#x1f4cc; 收藏 点赞 关注&#xff0c;项目中要用到推送功能时就不怕找不到了&#xff01; 实时通知是企业系统中常见的功能&#xff0c;比如&#xff1a;管理员发布通知后&#xff0c;所有用户…...

flow_controllers

关键点&#xff1a; 流控制器类型&#xff1a; 同步&#xff08;Sync&#xff09;&#xff1a;发布操作会阻塞&#xff0c;直到数据被确认发送。异步&#xff08;Async&#xff09;&#xff1a;发布操作非阻塞&#xff0c;数据发送由后台线程处理。纯同步&#xff08;PureSync…...

GeoServer发布PostgreSQL图层后WFS查询无主键字段

在使用 GeoServer&#xff08;版本 2.22.2&#xff09; 发布 PostgreSQL&#xff08;PostGIS&#xff09;中的表为地图服务时&#xff0c;常常会遇到一个小问题&#xff1a; WFS 查询中&#xff0c;主键字段&#xff08;如 id&#xff09;莫名其妙地消失了&#xff01; 即使你在…...