PVE下安装配置openwrt和ikuai

news2024/12/23 14:07:02

开端

        openwrt 和 ikuai 是比较出名的软路由系统。我最早接触软路由还是因为我的一个学长要改自己家里的网络,使用软路由去控制网络。我听说后便来了兴致,也在我家搞了一套软路由系统。现在我已经做完了,就想着写个文章记录一下。

软路由简介

        硬路由是平时我们常见的那些路由器和无线路由器,它们转发数据的模块通常都是集成在硬件之上的所以效率相比软路由来说比较高。但是硬路由不是很好管理,而且一般也就只有数据转发的功能。

        软路由是没有硬件支持的数据转发模块的系统。它可以刷在各种电脑上,软路由系统占用资源少,一般就1核1G就够用了。软路由部署了很多功能,硬件路由器的功能软路由基本上都实现了,除此之外还增加了许多新功能、新插件。能够加插件也就意味着软路由的功能有很强的可扩展性。

        常用的软路由系统就是 openwrt 和 ikuai 了。

openwrt

        OpenWRT是一个高度模块化、高度自动化的嵌入式Linux系统,拥有强大的网络组件和扩展性,常常被用于工控设备、电话、小型机器人、智能家居、路由器以及VOIP设备中。 同时,它还提供了100多个已编译好的软件,而且数量还在不断增加,而OpenWrt SDK 更简化了开发软件的工序。

        OpenWRT不同于其他许多用于路由器的发行版,它是一个从零开始编写的、功能齐全的、容易修改的路由器操作系统。实际上,这意味着您能够使用您想要的功能而不加进其他的累赘,而支持这些功能工作的linux kernel又远比绝大多数发行版来得新。

[OpenWrt 维基]欢迎来到 OpenWrt 项目

ikuai

        爱快作为一家致力于软路由领域的公司,公司名称叫:全讯汇聚网络科技(北京)有限公司。其致力于为用户提供高性能、稳定可靠的软路由产品,并在用户体验和创新功能方面不断突破。在软路由行业中,爱快以其卓越的性能、简洁易用的界面以及多样化的功能而广受好评,成为了众多用户的首选。这家公司还围绕路由展开软件、硬件、服务,基于此爱快延展了WLAN产品线、交换机产品线、爱快云产品线,边缘存储产品线、SD-WAN产品线。

爱快 iKuai-商业场景网络解决方案提供商 (ikuai8.com)

PVE介绍

        Proxmox 虚拟环境(简称PVE) 是一个基于 Debian Liunx 和 KVM 的虚拟化平台。类似于 VMware 的 EXSI 系统。PVE 和 ESXI 都和我们通常使用的 VMware Workstation 差不多,只是 PVE 和 ESXI 是系统层面的虚拟化,VMware Workstation 则是软件层面的虚拟化。

        PVE 和 ESXI 我都使用过,个人感觉 PVE 用起来更舒服一些,开机也更快,配置虚拟网络也更方便而且还支持容器技术,ESXI 是不支持容器技术的。而且 PVE 是可以免费使用的,ESXI 则需要付费密钥(但是网上有许多开源的密钥)。

实验部署环境描述

        部署软路由网络是需要硬件支持的(钱)。必要的硬件机器清单如下:宽带(带不带公网都行),光猫(Modem),无线路由器(Wife),软路由宿主机(个人PC、工控机等),一个U盘(用来刷系统)。

# 宽带用来提供互联网连接。

# 光猫单纯用来做模电转换,光猫也有路由和拨号(连接运营商服务器进行上网)的功能,但是一般不使 
  用光猫进行路由交换和拨号,因为一般的光猫性能都不是很行。相比于路由器,光猫的路由交换和拨 
  号效率还是比较低的,可能会导致间接断网或者网速慢等情况。

# 无线路由器用来提供 Wife 信号。

# 软路由宿主机用来刷软路由系统然后软路由负责进行拨号和路由交换。

宽带

        实验环境为我自己家,买的联通宽带赠送有动态公网IP。有一个公网IP是比较重要的,因为有了一个公网IP就意味着你能在任何地方通过连接互联网访问到你家里的网络。而且部署一些服务也会使用到公网IP,总之就是有一个公网IP后面不管是管理网络还是部署服务都非常的方便。

光猫

        光猫使用的是联通运营商提供的免费光猫。只用来做模电转换,拨号和路由交换拜托给软路由来负责。

无线路由器

        无线路由器我是买的小米的一个 Wife6 无线路由器一百多块钱,果然还是便宜无好货。Wife 信号不算很好,只能说能用。我想如果换成 三百多的 Wife7 无线路由器应该会好很多。实测下来就是穿墙效果不行,如果要穿墙还是买好一点的无线路由器。

软路由宿主机

        软路由宿主机我是买的一个准系统工控机(N100/J6412),有4个网口,需要自己加硬盘和内存。硬盘用的256G樊想固态,内存用的16G联想内存。总价900块左右。

开始部署

网络系统规划

        这里说一下为什么需要 PVE。PVE 是一个虚拟系统,上面可以部署虚拟机和容器。我把 openwrt 和 ikuai 都部署在 PVE 上面。因为直接在工控机里刷软路由器系统的话资源浪费太大了且只能部署一个路由系统。在 PVE 上部署软路由系统后还可以在上面部署虚拟机,把剩下的硬件资源合理利用起来。

主架构

         整体网络架构采用 ikuai 做主路由拨号,openwrt 作为旁路由的设计,内网网段为 192.168.100.0/24。无线路由器负责 Wife 信号,光猫负责通互联网。

        openwrt 在目前的网络设置中其实并没有什么实际的作用,因为有 ikuai 这个主路由在,想上网的话直接把设备的网关设置为 ikuai 的IP就可以上网了。

        openwrt 在这里是作为一个中间人的作用,如果在 openwrt 上设置了 VPN 隧道直连。再把设备的网关设置为 openwrt 那么这个设备的网络就可以直接通过 VPN 隧道转发,其他没把网关设置为 openwrt 的设备则不受 VPN 的影响进行正常的 ikuai 路由转发。

机器连接设置

        整个网络如上图所示,工控机 PVE 一共有4张物理网卡,其中1口为保留的 PVE 管理接口,其他3个物理网口都直通到了 ikuai 虚拟机上。然后把光猫和无线路由器都接到 ikuai 系统上,由 ikuai 进行管理。

PVE虚拟网络

        在 PVE 中创建一个虚拟桥,并配置IP(192.168.100.1/24)这个IP以后就是 PVE 系统的管理接口并配置网关(192.168.100.254/24)这个是让 PVE 能上网的配置,如果不配置这个网关的话在不用VPN的情况下就不能远程 PVE 系统。

        在每个虚拟机上都要添加一个虚拟网卡,并绑定到之前创建的网桥上。这是为了实现 PVE 内网各个虚拟机之间的网络互通。

        openwrt 和 Server 虚拟机的网络设置和图上描述的一样。ikuai 拥有4张网卡,有3张是直通的物理网卡,还有一张是桥接的 PVE 虚拟桥用来连通 PVE 虚拟网络。

ikuai网络

        ikuai 是主路由所以网络配置这里讲细一点让大家少走坑,对虚拟网络有更清晰的认知。

        首先 ikuai 需要配置内网口和外网口。我们把连接光猫的口配置为外网口,其他口全部配置为内网口。在外网口上需要配置拨号连接,这个在 ikuai 的 Web 界面点点点很简单。然后需要在 ikuai 绑定 PVE 网桥的那张网卡上配置IP为(192.168.100.254/24)这是局域网内所有设备通往互联网的必经之路。其他内网网口可以不用配置IP,其他网口的对端设备IP只要是 192.168.100.0/24 网段的就可以连到 ikuai 上。

刷PVE系统

        拿到工控机的第一件事就是把配件上上把 PVE 系统刷上去,安装完配件(硬盘,内存)就开始刷系统。先去 PVE 官网下载一个镜像文件,然后下载一个系统盘制作工具。

ISO - Proxmox Virtual Environment

Rufus:http://wget.ktclouds.cn/ISO/rufus-3.20.exe

        镜像和工具都下好后,就把U盘插电脑上开始制作 PVE 的系统盘。制作好了后把U盘插工控机上对工控机直接进行一个系统的刷啊。PVE 的部署很简单,网上的资料也很多我这里就不再过多的进行细节描述了。

        安装完后就是这个样子,右上角的用户选项里面可以调整为中文界面。

PVE虚拟网络

创建一个虚拟桥并配置IP和网关。

创建虚拟机虚拟网卡。

创建ikuai虚拟机

        首先去 ikuai 官网下载 ikuai 镜像,下载完成后上传到 PVE 中。在 PVE 里创建虚拟机一般分配1核心2G内存就够用了,硬盘的话用不到很多1G就够了甚至可以更少。

固件下载-爱快 iKuai-商业场景网络解决方案提供商 (ikuai8.com)

 开启网卡直通

        为什么要开启网卡直通。网卡直通相当于把物理网卡直连到虚拟机上,物理网口进行数据转发时就不再通过 PVE 系统而是直接发送到绑定网卡的虚拟机上。这样可以加快软路由的路由交换速度。但是一旦配置了网关直通,就不能通过那个物理网口直接访问到 PVE 系统,需要谨慎配置,建议至少留一个网口不做网卡直通。防止进不去 PVE 系统。

网卡直通步骤如下,首先选择要添加直通网卡的虚拟机,然后点击硬件,添加PCI设备。

选择你要直通的物理网卡,确认后重启 PVE 就实现了网卡直通。

创建完 ikuai 虚拟机并设置开机自启动然后直接开机进行安装就好了,然后首先要设置的是 LAN 口地址(LAN口一定要先绑定 PVE 网桥那张网卡)。

设置完LAN口地址就可以通过浏览器访问 ikuai 的 Web 管理页面。默认账号和密码均为admin。

配置外网接口,输入运营商给你的宽带账号和密码进行连接。

配置DHCP,设备的网关自己根据需要配置为 192.168.100.253 或者 192.168.100.254。

DNS我这里是因为在内网另外搭了一个DNS服务器所以是 10.10.10.2。请大家根据实际情况配置,可以在网上去找离自己家近一点的DNS服务器,这样网速会快一点。

配置到这 ikuai 的必要配置就结束了。

创建openwrt虚拟机

        下载 openwrt 的镜像,我使用的是 eSir 的高大全版本 openwrt。

01 - Lean Code x86_64 Firmware | 固件 - Google 云端硬盘

        openwrt的安装比较麻烦,我这里多说一点。还是先上传镜像,但是注意不是上传 .img.gz 结尾的文件,需要把它解压为 .img 的镜像文件再进行上传。

磁盘直接默认就行,CPU模型使用 host。

 内存我使用的是2G

创建完成 

点击虚拟机,然后把 CD/DVD 和硬盘都删了。

然后进入 PVE shell 界面,进入存放 ios镜像的位置

在当前目录下输入这条指令,把 openwrt 的镜像导入到虚拟机中。这里指令的选项需要根据自己实际情况去输入。

qm importdisk 101 openwrt-gdq-v1_2024_-x86-64-generic-squashfs-uefi.img local

添加我们刚刚新增的磁盘。 

修改虚拟机的启动引导。

修改完后就可以启动虚拟机了。

启动后,要添加 root 用户的密码和更改默认 LAN 口IP。

passwd    //输入 passwd 更改root用户密码
vi /etc/config/network    //进入网卡配置

 

修改 interface 'lan' 的接口IP为自己所需要的IP。我这里配置的是 192.168.100.253/24 网关为 192.168.100.254。修改完成后 :wq 退出并保存,然后重启 openwrt 虚拟机。

最后进入浏览器,输入对应的IP,就可以访问 openwrt 了。

到这里 openwrt 就成功部署了,eSir 的 openwrt 功能很多我这里就不细说了,大家可以在使用的过程中慢慢去了解。

配置远程访问

        配置远程访问方法是很有必要的,这可以让你随时随地管理你家里的网络。因为 ikuai 是主路由,所以我们的远程管理在 ikuai 上面配置。

ikuai远程登录

DDNS

       因为我的宽带是动态公网IP所以需要绑定一个域名来实现公网的固定访问,DDNS(动态域名解析)就很好地完成了这项工作,在 ikuai 里面也可以直接配置。

   

        域名是需要自己去购买的,也不贵便宜的十几块或者几块钱钱一年。我使用的是腾讯云,根据不同的域名提供商需要大家自行去看服务商的文档或者教程配置 DDNS。 

        配置完 DDNS 就可以通过自己的域名去访问家里的网络了,当然了你现在直接通过域名去访问 ikuai 会发现访问不了。

端口映射

        普通宽带运营商默认是封禁 80,443 端口的。这是为了防止使用家里的网络来进行盈利。我们不盈利只方便自己该怎么做呢?

        可以通过端口映射把内网的端口映射为外网的其他端口来进行访问,避免访问外网运营商封禁端口顺便提高安全性。

        ikuai 和 openwrt 的 443 远程访问端口是必须要映射出来的,还有 PVE 的 8006 远程访问端口。 其他的端口根据自己的需要进行配置。

        我这里还建议大家配置一个 openv*n 的隧道,方便我们直接使用内网网段进行网络管理和服务部署。具体方法在 ikuai 里面点点点就可以了。

总结

        配置这个网络系统还是花了我不少时间,大概一个星期左右吧。自己做成功后还是蛮有成就感的,后续要做网络磁盘什么的也方便了不少。做个虚拟机也比去网上买云服务器划算,就是可能技术不到位的话不是很稳定。

        如果你觉得这篇文章对你有用的话就点点关注和赞吧,谢谢。

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

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

相关文章

GFS部署实验

目录 1、部署环境 ​编辑 2、更改节点名称 3、准备环境 4、磁盘分区,并挂载 5. 做主机映射--/etc/hosts/ 6. 复制脚本文件 7. 执行脚本完成分区 8. 安装客户端软件 1. 安装解压源包 2. 创建gfs 3. 安装 gfs 4. 开启服务 9、 添加节点到存储信任池中 1…

应急响应-拒绝服务钓鱼指南DDOS压力测试邮件反制分析应用日志

知识点 1、CC攻击分析 2、钓鱼邮件分析 3、内网渗透分析 一、演示案例-内网应急-日志分析-爆破 MSSQL-1433 SMB-445 二、演示案例-红队APT-钓鱼邮件-内容&发信人&附件 如何分析邮件安全性: 1、看发信人地址 2、看发信内容信息 3、看发信内容附件 看后…

2011年认证杯SPSSPRO杯数学建模B题(第一阶段)生物多样性的评估全过程文档及程序

2011年认证杯SPSSPRO杯数学建模 B题 生物多样性的评估 原题再现: 2010 年是联合国大会确定的国际生物多样性年。保护地球上的生物多样性已经越来越被人类社会所关注,相关的大规模科研和考察计划也层出不穷。为了更好地建立国际交流与专家间的合作&…

UML2.0在系统设计中的实际使用情况

目前我在系统分析设计过程中主要使用UML2.0来表达,使用StarUML软件做实际设计,操作起来基本很顺手,下面整理一下自己的使用情况。 1. UML2.0之十三张图 UML2.0一共13张图,可以分为两大类:结构图-静态图,行…

学习Rust的第一天:基础知识

Introduction 介绍 I am Shafin Murani is a software development student and I am documenting every single day of my progress in learning rust. This is the first article of the series. Shafin Muranishi 是一名软件开发专业的学生,这是他在30天内记录学…

苹果电脑(Mac)怎么清理 itunes 备份?

苹果电脑用户广泛利用 iTunes 应用程序对 iPhone 或 iPad进行定期备份,以确保珍贵的数据安全无虞。然而,随着备份历史的增长,它们会在磁盘上积累大量空间,尤其当您频繁为多台设备备份时,存储资源可能会迅速消耗殆尽。为…

Docker部署Logstash同步Mysql数据到ES

1、准备配置文件文件夹 2、部署logstash & elasticsearch docker pull docker.elastic.co/logstash/logstash:7.15.0 ## 替换{你的ES地址}为ES地址 docker run -d --name logstash -p 5044:5044 -p 9600:9600 -v D:\logstash\data\:/usr/share/logstash/data -v D:\logst…

服务器数据恢复—V7000存储raid5数据恢复案例

服务器数据恢复环境: P740AIXSybaseV7000存储阵列柜,阵列柜上有12块SAS机械硬盘(包括1块热备盘)。 服务器故障: 管理员在日常巡检过程中发现阵列柜中有一块磁盘发生故障,于是更换磁盘并同步数据&#xff0…

Kafka基础/1

Kafka 概念 Kafka 是一个分布式的流媒体平台。 应用:消息系统、日志收集、用户行为追踪、流式处理 特点:高吞吐量、消息持久化、高可靠性、高扩展性 术语: broker:Kafka 的服务器,Kafka 当中每一台服务器&#xf…

Visual Studio Code 终端为管理员权限

第一部 1、 Visual Studio Code 快捷方式启动选项加上管理员启动 第二步 管理员方式运行 powershell Windows 10的任务栏自带了搜索。或者开始菜单选搜索只需在搜索框中输入powershell。 在出来的搜索结果中右击Windows PowerShell,然后选择以管理员方式运行。 执…

《前端面试题》- JS基础 - call()、apply()、bind() 的区别

call 、bind 、 apply 这三个函数的功能都是改变this的指向问题,但是也存在一定的区别。 call 的参数是直接放进去的,第二第三第 n 个参数全都用逗号分隔,apply 的所有参数都必须放在一个数组里面传进去bind 除了返回是函数以外,它 的参数和…

Training - 使用 WandB 配置 可视化 模型训练参数

欢迎关注我的CSDN:https://spike.blog.csdn.net/ 本文地址:https://blog.csdn.net/caroline_wendy/article/details/137529140 WandB (Weights&Biases) 是轻量级的在线模型训练可视化工具,类似于 TensorBoard,可以帮助用户跟踪…

js语法---简单理解promise

promise语法结构 创建一个promise对象 let p new Promise(function(resolve,reject){// 执行的操作...// 判断操作的结果并执行对应的回调函数if(){resolve()}else{reject()} } 以上实例化了一个promise对象,其中包含了一个参数function,这个函数会在…

【配电网故障定位】基于二进制粒子群算法的配电网故障定位 12节点配电系统故障定位【Matlab代码#76】

文章目录 【获取资源请见文章第5节:资源获取】1. 配电网故障定位2. 二进制粒子群算法3. 部分代码展示4. 仿真结果展示5. 资源获取 【获取资源请见文章第5节:资源获取】 1. 配电网故障定位 配电系统故障定位,即在配电网络发生故障的时候&…

了解Vue中的 computed 计算属性

目录 1. computed计算属性介绍和基础语法 1.1. 概念 1.2. 语法 2. “计算属性”和“方法”的对比 2.1. computed 计算属性 2.1.1. 作用 2.1.2. 语法 2.2. methods 方法 2.2.1. 作用 2.2.2. 语法 2.2.3. 缓存特性(提升性能) 3. computed 计算…

ssm“最多跑一次”微信小程序

采用技术 ssm“最多跑一次”微信小程序的设计与实现~ 开发语言:Java 数据库:MySQL 技术:SpringMVCMyBatis 工具:IDEA/Ecilpse、Navicat、Maven 系统实现的功能 本次设计任务是要设计一个“最多跑一次”微信小程序,…

AI大模型日报#0409:Llama 3下周发布、特斯联20亿融资、Karpathy新项目

导读: 欢迎阅读《AI大模型日报》,内容基于Python爬虫和LLM自动生成。目前采用“文心一言”生成了每条资讯的摘要。标题: 120亿Stable LM 2上线即开源!2万亿token训练,碾压Llama 2 70B 摘要: Stable LM 2 12B参数版本发布&#x…

OpenMesh 计算网格顶点Voronoi面积

文章目录 一、简介二、实现代码三、实现代码参考资料一、简介 在计算离散的微分算子时(如拉普拉斯算子、高斯曲率等),总是会需要计算某个网格顶点的局部面积,主要有以下几种: 该操作类似于点云中的邻域操作,只不过点云的邻域一般是基于一个圆或者一个圆柱,而这里则是某个…

VSCode+Cmake 调试时向目标传递参数

我有一个遍历文件层次结构的程序,程序根据传入的文件路径,对该路径下的所有文件进行遍历。这个程序生成一个名为 ftw 的可执行文件,如果我要遍历 /bin 目录,用法为: ftw /bin问题是,如果我想单步跟踪&…

vue将html生成pdf并分页

jspdf html2canvas 此方案有很多的css兼容问题,比如虚线边框、svg、页数多了内容显示不全、部分浏览器兼容问题,光是解决这些问题就耗费了我不少岁月和精力 后面了解到新的技术方案: jspdf html-to-image npm install --save html-to-i…