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

将OpenWrt部署在x86服务器上

61ea53461e026bd66011702469212b57.gif

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

如果你问ChatGPT有哪些开源的SD-WAN方案,他会这样答复你:

1192b7184bd34b8747cd44f8930378b6.png

我们看到,OpenWrt也属于比较知名的开源SD-WAN解决方案。当然,在很久之前,我就发过几篇和OpenWrt相关的文章软路由是啥?OpenWrt又是啥?长啥样?在VMware装一个瞅瞅在ESXi上把OpenWrt变成真正的路由器。包括我们公司,目前也有一些基于OpenWrt开发的网络工具。

我们之前使用OpenWrt是因为暂时缺少ARM架构下的适配工具,所以临时选择了OpenWrt,直到最近有人员说OpenWrt只能在ARM架构下使用,让我颇为震惊。

8f46ed4fd72ddb4580bfaeeff57adf96.png

制作OpenWrt镜像

da361acf9607873295c2152439bac720.png

难道真是只有ARM架构才能用吗?我不禁想再去验证一下。

e4aa917b97ba894bdf6c8b52ab07f8f1.png

首先,我们可以看到,目前比较稳定的版本是22.03.2版本,比之前的21.02又提升了好几个版本。

9fe27b433d44cb3cd95910047e759e7d.png

在架构选择页面,可以看到有很多选项,多到竟然没几项是认识的,但是我们依旧可以从中很轻易的找到x86架构选项。

ac348ad7a9dcb9f43fc81f767acf8823.png

在x86下面又可以选择64位版本。

dbd9e046c8c141c4430a52cf35ff4283.png

下载的时候,理论上讲前两个文件应该都是可以用的,我用第二个试一下,该文件的下载链接如下:

https://archive.openwrt.org/releases/22.03.2/targets/x86/64/openwrt-22.03.2-x86-64-generic-ext4-combined.img.gz

下载完成后,解压得到openwrt-22.03.2-x86-64-generic-ext4-combined.img这个文件。

9080a8753f58535dddaa3d15e956176b.png

压缩包有所增加,但是解压出来的镜像之前小了。

然后用StarWindConverter这个工具来把IMG镜像文件转换成VMWare支持的vmdk文件。

6d52e969a558111c7aea3d8953822b13.png

选择合适的转换后的镜像格式,我选择的是VMWare growable image版本的VMDK,磁盘空间按需增长。

e612473a3c5a890d9559ee13a957bd6b.png

磁盘类型选择“IDE”,也可以选择“SCSI”。这个跟创建虚拟机时的选项要对应。

fe62eee3f3e7ced0a98af62a3c2e7390.png

选择输出文件位置,默认是和源文件在同一目录下。

17411c1edf8aaa7c7f87c910a36e6db7.png

转换过程很快,可以看到转换完成的vmdk文件。

7963af95ab26c06561a8b9b8b133c68b.png

a02abbebff8039152d3800cde8d0c1df.png

创建VMware虚拟机

9ae2ca2a737ee5e68a16a801ac201ce3.png

创建新的虚拟机,类型选择“自定义(高级)”

c2126380b38d8a9b74fce6926208780e.png

选择兼容性,因为我们要将其迁移到VMware ESXi 6.7,所以我的硬件兼容性选择了“ESXi 6.5”

a5f70737787a5e3da81b028e03e1df3b.png

稍后安装操作系统。

1a7c9a7ec4703d3e35f04a65d061bb4e.png

系统选择“Linux”→“其他Linux 4.x或更高版本内核64位”。(实际内核版本为5.10.146)

5510fa6a7887f55fc6f25e501c515944.png

命名虚拟机并选择存储位置。

ecfa32dd0bff59ab6705c3a66d6e77eb.png

处理器配置选择2核CPU。

5da444eb88c87eb2e2b0c048e3149332.png

推荐内存768 M,还是分2G给它吧。

b62b3d1774c0ccb462aa9c7e652e21a2.png

网络类型选择“使用桥接网络”

446c277b4fe8742c897471f503ebd65f.png

I/O控制器类型保持默认推荐的“LSI Logic”

7d292422c581313cd6a2557989a7230b.png

虚拟磁盘类型跟转换的镜像保持一致,选择“IDE”

71b2fd1bd6fce857fca44ca5739ce626.png

磁盘选择“使用现有虚拟磁盘”

3665ce2affe1ddf45cf9f3ce5841db5d.png

选择刚才转换好的vmdk文件,可以看心情决定是否转换为最新格式。

0f8710ac66f18117d7a9a419f246fead.png

我选择了“转换”

d8e8018b4b1e311cba8b8fb0a11a124b.png

确认虚拟机配置,没有问题的话,点击“完成”即可。

14eae1bab6b3f861a81312a23133dccb.png

启动OpenWrt虚拟机

8a7c95a0e32efc3b6dea3ac04d45b403.png

直接启动虚拟机,启动保持默认选项即可。

984b3880e9e4df35474f7535af439ac2.png

注意:系统在启动完成后不会自动进入系统,一般当我们看到启动页面加载出“br-lan:link becomes ready”基本上就是已经启动完成了,并且页面会停在这里。

59a4228401fe105180a840504eacf395.png

然后按一下回车键即可进入系统。

1332c73e867739ece6692ce64f1c221d.png

可以看到启动欢迎页面显示的“OpenWrt”字样,以及版本号22.03.2。并且提示说明当前的root账号没有密码,需要使用passwd命令来设置新密码。

aeb465a76cd8a39407650825c89f0690.png

注意,新系统中二层口br-lan的默认地址是192.168.1.1,需要确认是否存在地址冲突,比如和我现有的网段冲突了,就需要进行修改。

并且我这次打算做一个单臂的场景,所以,我在配置文件“/etc/config/network”中,将网卡eth0的地址修改成了192.168.1.224/24,网卡lan的地址移除掉了。

dfb9744c1130a505a7212477d147c87e.png

修改完成后,执行命令重启网络服务。

service network restart

75956fbb16760cb9f369986ff8581e90.png

迁移到ESXi

47aeb981700bf4bebad336069ae0f023.png

关闭虚拟机,然后选择“文件”中的“导出为OVF”

8b251143261a9180dd328ee89b70e24d.png

得到我们需要的OVF和vmdk文件。

f9ce83b86f684c64ab3b8347255d30b4.png

来到ESXi中,新建虚拟机,创建类型选择“从OVF或OVA文件部署虚拟机”

a692a1cd6b0e796c3f6e26175d349be8.png

选中导出的OVF文件和VMDK文件,再给虚拟机起个名。

9b5022743dd2234057a981f4562c874f.png

选择存储。

a4c50ca8404c56f2ea640e8321e7d9a8.png

在“部署选项”中,网络映射选择到管理网,磁盘置备选择为“精简”,关闭“自动打开电源”

3c588ae15716b80441de0287aee571d3.png

确认主机配置,点击“完成”

18d6475c92d0c5fee03d3c168296f260.png

导入成功后,启动虚拟机。

b31258b72d053918c32ca34bd674417c.png

从本地测试访问192.168.1.221,连通性正常。

814804888a02faac22b658be066e687b.png

虽然在启动时要求我们输入密码,但是我们没有设置,可以直接点“login”登录系统。

a00dead642c6e2da16378fc2ed5eb737.png

查看主机状态信息,一切正常。

37d3d4e93de89e65557ec29a52e0aeaf.png

OK,这不就在x86上面部署完成了吗?

8f42689a43e7e0a357dcc70d179c8de6.gif

长按二维码
关注我们吧

7b20b790517e19afd236e2b6c3031521.jpeg

00e510eb525837cd37acbcfdf9ac7c33.png

openVPN+SmartDNS=openDNS or smartVPN?

带认证的openVPN连接/断开操作指南

配置openVPN使用用户名密码认证

解决openVPN的递归路问题还是要从服务器端下手

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

配置优化:将openVPN的配置文件合4为1

Kali Linux开启SSH远程登录

配置Kali通过MSTSC连接远程桌面

使用Python批量处理Excel的内容

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

Ubuntu编译安装VPP23.02

相关文章:

将OpenWrt部署在x86服务器上

正文共:1234 字 40 图,预估阅读时间:2 分钟 如果你问ChatGPT有哪些开源的SD-WAN方案,他会这样答复你: 我们看到,OpenWrt也属于比较知名的开源SD-WAN解决方案。当然,在很久之前,我就发…...

计算机视觉:卷积神经网络(CNN)基本概念(一)

第一章:计算机视觉中图像的基础认知 第二章:计算机视觉:卷积神经网络(CNN)基本概念(一) 第三章:计算机视觉:卷积神经网络(CNN)基本概念(二) 第四章:搭建一个经典的LeNet5神经网络 一、引言 卷积神经网络&…...

企业文件共享中的权限管理与安全风险防范

在企业的日常运营中,文件共享是必不可少的一项工作。然而,文件共享过程中如果权限管理不当,极易引发安全风险,导致企业敏感信息泄露。因此,加强文件共享中的权限管理与安全风险防范,对于保障企业信息安全至…...

使用DeepSeek建立一个智能聊天机器人0.12

为了确保这段代码能够在Windows和Linux系统上都能正常运行,我考虑以下几个方面: 路径分隔符:在Windows和Linux中,文件路径的分隔符不同。Windows使用反斜杠(\),而Linux使用正斜杠(/)。我们可以使用 os.path.join 来处理路径,以确保跨平台兼容性。 消息框:tkinter.…...

国家队出手!DeepSeek上线国家超算互联网平台!

目前,国家超算互联网平台已推出 DeepSeek – R1 模型的 1.5B、7B、8B、14B 版本,后续还会在近期更新 32B、70B 等版本。 DeepSeek太火爆了!在这个春节档,直接成了全民热议的话题。 DeepSeek也毫无悬念地干到了全球增速最快的AI应用。这几天,国内的云计算厂家都在支持Dee…...

Deep seek学习日记1

Deepseek最强大的就是它的深度思考,并且展现了它的思考过程。 五种可使用Deep seek的方式(应该不限于这五种,后续嵌入deepseek的应该更多,多了解一点因为官网容易崩~~): 1.deep seek官网 2.硅基流动silicon…...

乐理笔记(持续更新)

单音与音程 单音:由一个音组成。 音程:由两个音组成,表示两个音之间的音高距离。 如何数音程: 单音程:9 - X,性质相反。例如,9度音程减去某个数,性质会相反。 复音程&#xff1a…...

【动态路由】系统Web URL资源整合系列(后端技术实现)【nodejs实现】

需求说明 软件功能需求:反向代理功能(描述:apollo、eureka控、apisix、sentinel、普米、kibana、timetask、grafana、hbase、skywalking-ui、pinpoint、cmak界面、kafka-map、nacos、gateway、elasticsearch、 oa-portal 业务应用等多个web资…...

PHP高效、轻量级表格数据处理库 OpenSpout ,很好用

OpenSpout 是一个高效、轻量级的 PHP 库,用于处理电子表格文件(如 Excel 和 CSV)。它支持读取和写入大型文件,且内存占用低。本文将详细介绍如何安装和使用 OpenSpout。 目录 安装 基本使用 高级功能 参考文档 安装 OpenSp…...

2010年上半年软件设计师考试上午真题的知识点整理(附真题及答案解析)

以下是2010年上半年软件设计师考试上午真题的知识点分类整理,涉及定义的详细解释,供背诵记忆。 1. 计算机组成原理 CPU与存储器的访问。 Cache的作用: 提高CPU访问主存数据的速度,减少访问延迟。存储器的层次结构: 包括寄存器、Cache、主存和…...

EventSource的使用

什么是EventSource EventSource 是一个用于服务器推送事件(Server-Sent Events, SSE)的接口,它允许服务器推送实时更新到浏览器。与 WebSocket 不同,SSE 是单向的(服务器到客户端),适用于更新频…...

【第12章:深度学习与伦理、隐私—12.3 深度学习模型的透明性与可解释性提升策略】

凌晨三点的ICU病房,AI辅助诊断系统将一位患者的肺炎误判为普通感冒——当主治医生要求查看诊断依据时,系统只能给出冷冰冰的概率数值。这场惊心动魄的误诊事件,掀开了深度学习可解释性危机的冰山一角。 一、模型透明的"第一性原理" 1.1 可解释性的三维度量 ![可…...

RocketMq中RouteInfoManger组件的源码分析

1.前言 RouteInfoManager 是 RocketMQ 中 NameServer 的核心组件之一,主要负责管理和维护整个 RocketMQ 集群的路由元数据信息。里面包含一些非常核心的功能:存储和管理 Broker 信息(broker的注册,broker心跳的维护)&…...

java八股文-mysql

1. 索引 1.1 什么是索引 索引(index)是帮助Mysql高效获取数据的数据结构(有序).提高数据的检索效率,降低数据库的IO成本(不需要全表扫描).通过索引列对数据进行排序,降低数据排序成本,降低了CPU的消耗. 1.2 mysql索引使用的B树? 1. 没有使用二叉树,最坏情况o&…...

Cherno C++ P55 宏

这篇文章我们讲一下C当中的宏。其实接触过大型项目的朋友可能都被诡异的宏折磨过。 宏是在预处理当中,通过文本替换的方式来实现一些操作,这样可以不用反复的输入代码,帮助我们实现自动化。至于预处理的过程,其实就是文本编辑&am…...

MybatisMybatisPllus公共字段填充与配置逻辑删除

Mybatis/MybatisPllus公共字段填充与配置逻辑删除 在开发过程中,很多时候需要处理一些公共字段,例如:创建时间、修改时间、状态字段等。这些字段通常会在插入或更新数据时进行填充,以便记录数据的变化和状态。同时,逻…...

VS Code User和System版区别【推荐使用System版本】and VSCode+Keil协同开发之Keil Assistant

VS Code User和System版区别 Chapter1 VS Code User和System版区别1. 对于安装而言2. 结束语 Chapter2 VS Code 安装、配置教程及插件推荐插件: Chapter3 VSCodeKeil协同开发之Keil Assistant1. 效果展示2. Keil Assistant简介3. Keil Assistant功能特性4. 部署步骤…...

MongoDB:listDatabases failed : not master and slaveOk=false

个人博客地址:MongoDB:listDatabases failed : not master and slaveOkfalse | 一张假钞的真实世界 异常描述 如果在MongoDB的SECONDARY上查询数据时会报如下错误信息: > show databases; 2018-09-20T17:40:55.3770800 E QUERY [thread…...

Python的那些事第二十二篇:基于 Python 的 Django 框架在 Web 开发中的应用研究

基于 Python 的 Django 框架在 Web 开发中的应用研究 摘要 Django 是一个基于 Python 的高级 Web 框架,以其开发效率高、安全性和可扩展性强等特点被广泛应用于现代 Web 开发。本文首先介绍了 Django 的基本架构和核心特性,然后通过一个实际的 Web 开发项目案例,展示了 Dj…...

【ISO 14229-1:2023 UDS诊断(会话控制0x10服务)测试用例CAPL代码全解析④】

ISO 14229-1:2023 UDS诊断【会话控制0x10服务】_TestCase04 作者:车端域控测试工程师 更新日期:2025年02月15日 关键词:UDS诊断、0x10服务、诊断会话控制、ECU测试、ISO 14229-1:2023 TC10-004测试用例 用例ID测试场景验证要点参考条款预期…...

AtCoder 第409​场初级竞赛 A~E题解

A Conflict 【题目链接】 原题链接:A - Conflict 【考点】 枚举 【题目大意】 找到是否有两人都想要的物品。 【解析】 遍历两端字符串,只有在同时为 o 时输出 Yes 并结束程序,否则输出 No。 【难度】 GESP三级 【代码参考】 #i…...

苍穹外卖--缓存菜品

1.问题说明 用户端小程序展示的菜品数据都是通过查询数据库获得,如果用户端访问量比较大,数据库访问压力随之增大 2.实现思路 通过Redis来缓存菜品数据,减少数据库查询操作。 缓存逻辑分析: ①每个分类下的菜品保持一份缓存数据…...

select、poll、epoll 与 Reactor 模式

在高并发网络编程领域,高效处理大量连接和 I/O 事件是系统性能的关键。select、poll、epoll 作为 I/O 多路复用技术的代表,以及基于它们实现的 Reactor 模式,为开发者提供了强大的工具。本文将深入探讨这些技术的底层原理、优缺点。​ 一、I…...

图表类系列各种样式PPT模版分享

图标图表系列PPT模版,柱状图PPT模版,线状图PPT模版,折线图PPT模版,饼状图PPT模版,雷达图PPT模版,树状图PPT模版 图表类系列各种样式PPT模版分享:图表系列PPT模板https://pan.quark.cn/s/20d40aa…...

学习STC51单片机32(芯片为STC89C52RCRC)OLED显示屏2

每日一言 今天的每一份坚持,都是在为未来积攒底气。 案例:OLED显示一个A 这边观察到一个点,怎么雪花了就是都是乱七八糟的占满了屏幕。。 解释 : 如果代码里信号切换太快(比如 SDA 刚变,SCL 立刻变&#…...

人工智能(大型语言模型 LLMs)对不同学科的影响以及由此产生的新学习方式

今天是关于AI如何在教学中增强学生的学习体验,我把重要信息标红了。人文学科的价值被低估了 ⬇️ 转型与必要性 人工智能正在深刻地改变教育,这并非炒作,而是已经发生的巨大变革。教育机构和教育者不能忽视它,试图简单地禁止学生使…...

Webpack性能优化:构建速度与体积优化策略

一、构建速度优化 1、​​升级Webpack和Node.js​​ ​​优化效果​​:Webpack 4比Webpack 3构建时间降低60%-98%。​​原因​​: V8引擎优化(for of替代forEach、Map/Set替代Object)。默认使用更快的md4哈希算法。AST直接从Loa…...

多模态图像修复系统:基于深度学习的图片修复实现

多模态图像修复系统:基于深度学习的图片修复实现 1. 系统概述 本系统使用多模态大模型(Stable Diffusion Inpainting)实现图像修复功能,结合文本描述和图片输入,对指定区域进行内容修复。系统包含完整的数据处理、模型训练、推理部署流程。 import torch import numpy …...

淘宝扭蛋机小程序系统开发:打造互动性强的购物平台

淘宝扭蛋机小程序系统的开发,旨在打造一个互动性强的购物平台,让用户在购物的同时,能够享受到更多的乐趣和惊喜。 淘宝扭蛋机小程序系统拥有丰富的互动功能。用户可以通过虚拟摇杆操作扭蛋机,实现旋转、抽拉等动作,增…...

Spring Boot + MyBatis 集成支付宝支付流程

Spring Boot MyBatis 集成支付宝支付流程 核心流程 商户系统生成订单调用支付宝创建预支付订单用户跳转支付宝完成支付支付宝异步通知支付结果商户处理支付结果更新订单状态支付宝同步跳转回商户页面 代码实现示例&#xff08;电脑网站支付&#xff09; 1. 添加依赖 <!…...