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

正文共:1234 字 20 图,预估阅读时间:2 分钟
在上篇文章中(最小化安装的CentOS7部署KVM虚拟机),我们介绍了如何在最小化安装的CentOS 7系统中部署KVM组件和相关软件包。因为没有GUI图形界面,我们还特地介绍了如何通过命令行创建存储池和虚拟机。
接着前面的操作,我们今天首先将虚拟机开机。
virsh start vsr 
这里需要注意一下,当虚拟机在没有开机的情况下,前面的ID编号是空的,只有在启动之后才会分配ID。所以建议对虚拟机的操作尽量保持以虚拟机名称为操作对象,命令里面也是这么介绍的。

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

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

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

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

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

对于该配置文件,顶部有着重提示:这是一个自动生成的文件,对它的更改可能会被覆盖并丢失。应使用命令virsh net-edit default对此配置进行更改或使用libvirt API的其他应用程序。
在下面的配置中,我们可以看到主要是DHCP相关的配置,里面还指向了dnsmasq目录下的相关文件,不过这两个文件都是空的。
我们再看一下virbr0.status中的内容。

可以看到,主要是记录了DHCP分配的地址信息。
然后我们登录虚拟机看一下。

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

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

这就说明,KVM主机默认还配置了DNS代理,怪不得要用dnsmasq呢。dnsmasq是一个轻量级的DNS服务器和DHCP服务器,可以同时为KVM虚拟机提供DNS服务和DHCP服务。
然后我们看一下虚拟机访问公网是否正常。

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

可以看到,IPv4转发已经被开启了,NAT转发中也使能了192.168.122.0/24整个网段的源地址,跟dnsmasq中的配置是一致的。
然后我们看一下virsh中网络相关的配置命令。

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

接下来,我想将默认的NAT模式修改为桥接模式,首先关闭并删除默认网络“default”。
virsh net-destroy default
virsh net-undefine default 
然后新建一个XML文件/var/lib/libvirt/network/bridge.xml,配置将虚拟网卡virbr0桥接到网卡ens224上。
<network><name>bridge</name><forward mode="bridge"/><bridge name="ens224"/><virtualport type="openvswitch"/>
</network> 
然后就可以使用以下命令创建一个新的名为“bridge”的桥接网络:
virsh net-define /var/lib/libvirt/network/bridge.xml
virsh net-autostart bridge
virsh net-start bridge 
注意,桥接的网卡在使用时需要注意以下几点限制:
1、确保桥接的物理网卡处于开启状态,且未被其他进程或服务所占用;
2、桥接的物理网卡不应该配置IP地址,因为IP地址已经被分配给桥接设备;
3、网卡在桥接模式下工作时,其MAC地址会被虚拟机的MAC地址替代,因此不能使用MAC地址来作为唯一的识别标志;
4、当虚拟机从网络中接收到数据时,数据包首先被发送到桥接设备上,如果不属于桥接设备上的任何虚拟机,那么数据包将被丢弃,这可能会导致网络阻塞。

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


长按二维码
关注我们吧


最小化安装的CentOS7部署KVM虚拟机
网络之路1:初识网络
网络之路2:初识路由表
什么是OpenStack?
使用Python批量处理Excel的内容
如何使用Python提取Excel中固定单元格的内容
全面升级:网工Python的最佳实践
OpenWrt配置单臂路由模式
OpenWrt部署配置openVPN服务器
OpenWrt配置openVPN客户端
将OpenWrt部署在x86服务器上
通过Nginx做一个openVPN配置文件下载页面
相关文章:
通过命令行配置调整KVM的虚拟网络
正文共:1234 字 20 图,预估阅读时间:2 分钟 在上篇文章中(最小化安装的CentOS7部署KVM虚拟机),我们介绍了如何在最小化安装的CentOS 7系统中部署KVM组件和相关软件包。因为没有GUI图形界面,我们…...
Apache POI操作excel
第1部分:引言 1.1 Apache POI简介 Apache POI是一个开源的Java库,用于处理Microsoft Office文档。自2001年首次发布以来,它已经成为Java社区中处理Office文档事实上的标准。Apache POI支持HSSF(用于旧版本的Excel格式࿰…...
Python错误集锦:faker模块生成xml文件时提示:`xml` requires the `xmltodict` Python library
原文链接:http://www.juzicode.com/python-error-faker-exceptions-unsupportedfeature-xml-requires-the-xmltodict-python-library 错误提示: faker模块生成xml文件时提示: xml requires the xmltodict Python library Traceback (most r…...
Vue3-尚硅谷笔记
1. Vue3简介 2020年9月18日,Vue.js发布版3.0版本,代号:One Piece(n 经历了:4800次提交、40个RFC、600次PR、300贡献者 官方发版地址:Release v3.0.0 One Piece vuejs/core 截止2023年10月,最…...
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天:前端集成与Django后端 - 用户认证与状态管理 目标 整合Django后端与Vue.js前端,实现用户认证和应用状态管理。 任务概览 设置Django后端用户认证。创建Vue.js前端应用。使用Vuex进行状态管理。实现前端与后端的用户认证流程。 详细步骤 1. …...
在ROS2中蓝牙崩溃的原因分析
在ROS2中,如果蓝牙模块没有成功启动,可能的原因有几个方面: 1. **硬件问题**:首先需要确认蓝牙硬件本身是否正常工作,包括检查蓝牙模块是否正确连接到系统,以及模块是否存在物理损坏。 2. **驱动问题**&a…...
【PythonWeb开发】Flask中间件钩子函数实现封IP
在 Flask 框架中, 提供了几种类型的钩子(类似于Django的中间件),它们是在请求的不同阶段自动调用的函数。这些钩子让你能够对请求和响应的处理流程进行扩展,而无需修改核心代码。 Flask钩子的四种类型 before_first_r…...
可以一键生成热点营销视频的工具,建议收藏
在当今的商业环境中,热点营销已经成为了一种非常重要的营销策略。那么,什么是热点营销呢?又怎么做热点营销视频呢? 最近高考成绩慢慢公布了,领导让结合“高考成绩公布”这个热点,做一个关于企业或产品的营销…...
Unity Meta Quest 开发:关闭 MR 应用的安全边界
社区链接: SpatialXR社区:完整课程、项目下载、项目孵化宣发、答疑、投融资、专属圈子 📕教程说明 这期教程我将介绍如何在应用中关闭 Quest 系统的安全边界。 视频讲解: https://www.bilibili.com/video/BV1Gm42157Zi …...
4.sql注入攻击(OWASP实战训练)
4.sql注入攻击(OWASP实战训练) 引言1,实验环境owasp,kali Linux。2,sql注入危害3,sql基础回顾4,登录owasp5,查询实例(1)简单查询实例(2࿰…...
前端Web开发HTML5+CSS3+移动web视频教程 Day1
链接 HTML 介绍 写代码的位置:VSCode 看效果的位置:谷歌浏览器 安装插件 open in browser: 接下来要保证每次用 open in browser 打开的是谷歌浏览器。只需要将谷歌浏览器变为默认的浏览器就可以了。 首先进入控制面板,找到默…...
中医实训室:在传统针灸教学中的应用与创新
中医实训室是中医教育体系中的重要组成部分,尤其在传统针灸教学中,它扮演着无可替代的角色。这里是理论与实践的交汇点,是传统技艺与现代教育理念的碰撞之地。本文将探讨中医实训室在传统针灸教学中的应用与创新实践。 首先,实训室…...
React Hooks 小记(七)_useReducer
useReducer usereducer 相当于 复杂的 useState 当状态更新逻辑较复杂时可以考虑使用 useReducer。useReducer 可以同时更新多个状态,而且能把对状态的修改从组件中独立出来。 相比于 useState,useReducer 可以更好的描述“如何更新状态”。例如&#…...
甲子光年专访天润融通CEO吴强:客户经营如何穿越低速周期?
作者|陈杨、编辑|栗子 社会的发展从来都是从交流和联络开始的。 从结绳记事到飞马传信,从电话电报到互联网,人类的联络方式一直都在随着时代的发展不断进步。只是传统社会通信受限于技术导致效率低下,对经济社会产生影…...
还不到6个月,GPTs黄了
相比起来,人们还不如使用一个足够强大、灵活且通用的AI助手来满足各类复杂需求。更严重的是一些独立GPTs显露出的安全隐患。除此之外,最大的问题在于OpenAI模糊不清的货币化政策。 文章正文 上周,不少人发现微软官网忽然更新了一条“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机器人控制器更换环境配置 机器人介绍 公司:西木科技Westwood-R…...
【招聘贴】JAVA后端·唯品会·BASE新加坡
作者|老夏(题图:公司业务介绍页) “ 请注意,这两个岗是BASE新加坡的,欢迎推荐给身边需要的朋友(特别是在新加坡的)。” VIP海外业务-产品技术团队,这两个岗位属于后端工程组的岗&…...
CVPR2024|vivo提出使用对抗微调获得泛化性更强的SAM,分割性能直接登顶 SOTA!
在计算机视觉不断发展的领域中,基础模型已成为一种关键工具,显示出对多种任务的出色适应性。其中,由 Meta AI 开发的 Segment Anything Model(SAM)在图像分割任务中表现杰出。然而,和其他类似模型一样&…...
科技晚报|2026年5月15日:AI 代理开始补协作、编排和护栏
科技晚报|2026年5月15日:AI 代理开始补协作、编排和护栏 一句话导读:今晚更值得看的,不是哪家模型榜单又变了,而是几家平台同时在补 AI 代理真正进生产前最缺的三块能力:跨 IDE 共享状态、团队级可观测&…...
Fast-Planner核心思想拆解:从B样条优化到时间重分配,如何让无人机飞得更快更稳?
Fast-Planner核心思想解析:从B样条优化到时间重分配的无人机高速运动规划 无人机在复杂环境中的高速飞行一直是运动规划领域的重大挑战。传统方法往往在速度提升后出现轨迹抖动或避障失效的问题,而Fast-Planner通过创新的算法架构实现了"又快又稳&q…...
避开这些坑!STC8H8K64U IAP升级中FLASH分区与Keil定位的保姆级教程
STC8H8K64U IAP升级实战:FLASH分区设计与Keil定位全解析 第一次接触STC8H8K64U的IAP功能时,我花了整整三天时间才搞明白为什么程序总是莫名其妙地崩溃。直到发现是FLASH分区地址计算错误导致用户程序覆盖了ISP引导区,才恍然大悟。本文将分享从…...
B站成分检测器:3分钟快速安装指南,智能识别评论区用户真实身份
B站成分检测器:3分钟快速安装指南,智能识别评论区用户真实身份 【免费下载链接】bilibili-comment-checker B站评论区自动标注成分,支持动态和关注识别以及手动输入 UID 识别 项目地址: https://gitcode.com/gh_mirrors/bil/bilibili-comme…...
别再重装系统了!Ubuntu 20.04 下 libsnark 零知识证明环境一次搭建成功的保姆级避坑指南
零知识证明开发实战:Ubuntu 20.04下libsnark环境高效搭建指南 在区块链和密码学领域,零知识证明技术正成为隐私保护的核心解决方案。作为最具代表性的开源库之一,libsnark因其高效的证明系统实现而被众多隐私项目采用。然而,许多开…...
保姆级教程:手把手教你将VisDrone数据集转成MOT格式,适配MOTR等模型训练
保姆级教程:手把手教你将VisDrone数据集转成MOT格式,适配MOTR等模型训练 在计算机视觉领域,多目标跟踪(MOT)一直是研究热点之一。而VisDrone作为无人机视角下的经典数据集,其丰富的场景和挑战性的标注使其成为MOT研究的理想选择。…...
Ketcher:三步掌握开源化学绘图工具的完整使用指南
Ketcher:三步掌握开源化学绘图工具的完整使用指南 【免费下载链接】ketcher Web-based molecule sketcher 项目地址: https://gitcode.com/gh_mirrors/ke/ketcher 你是否曾因绘制复杂分子结构而烦恼?传统化学绘图软件要么操作复杂,要么…...
现代安全监控系统构建指南:从IPVS架构到智能分析实战
1. 项目概述:从“想要”到“拥有”,安全监控系统的核心价值“安华高科技给你想要的安全监控系统!”——这个标题听起来像是一句承诺,但背后其实是一个复杂的系统工程。作为一名在安防行业摸爬滚打了十几年的从业者,我见…...
Flyway实战:从零到一构建数据库版本管理流水线
1. 为什么你的项目需要Flyway 第一次接触数据库版本管理这个概念时,我正面临一个典型的开发困境:团队里有5个开发人员在同时修改数据库结构,每次发布新版本都像在玩俄罗斯轮盘赌——永远不知道谁会忘记执行哪个SQL脚本。直到生产环境出现数据…...
Spring Boot项目里application.properties突然不提示了?别慌,试试这3个排查步骤(附Idea 2023.3+版本截图)
Spring Boot项目里application.properties突然不提示了?别慌,试试这3个排查步骤 作为一名长期使用IntelliJ IDEA进行Spring Boot开发的程序员,配置文件提示功能突然消失的情况确实令人头疼。想象一下,当你正在快速编写配置时&…...
