PVE下安装配置openwrt和ikuai

开端

        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.rhkb.cn/news/307983.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Flutter中间镂空的二维码扫描控件

1、UI效果图&#xff1a; 2、中间镂空UI&#xff1a; class CenterTransparentMask extends CustomClipper<Path> {final double? width;CenterTransparentMask({this.width});overridePath getClip(Size size) {final path Path()..addRect(Rect.fromLTWH(0, 0, size…

Navicat Premium 16 for Mac/Win:数据库管理的全能之选

在数字化时代&#xff0c;数据库管理已成为各行各业不可或缺的一环。而Navicat Premium 16作为一款功能强大的数据库管理软件&#xff0c;无疑为数据库管理员和开发者提供了高效、便捷的解决方案。 Navicat Premium 16支持多种主流数据库系统&#xff0c;无论是MySQL、Postgre…

MyBatis批量插入的五种方式

MyBatis批量插入的五种方式: 一、准备工作 1、导入pom.xml依赖 <dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><!-- MySQL驱动依赖 --…

R:普通分组柱状图

输入文件实例&#xff08;存为csv格式&#xff09; library(ggplot2) library(ggbreak)# 从CSV文件中读取数据 setwd("C:/Users/fordata/Desktop/研究生/第二个想法(16s肠型&#xff0b;宏基因组功能)/第二篇病毒组/result/otherDB") data <- read.csv("feta…

UI自动化测试案例

备注:本文为博主原创文章,未经博主允许禁止转载。如有问题,欢迎指正。 个人笔记(整理不易,有帮助,收藏+点赞+评论,爱你们!!!你的支持是我写作的动力) 笔记目录:笔记本~笔记目录_airtest和selenium那个好用-CSDN博客 个人随笔:工作总结随笔_8、以前工作中都接触过哪…

工厂方法模式:解锁灵活的对象创建策略

在软件设计中&#xff0c;工厂方法模式是一种非常实用的创建型设计模式&#xff0c;它不仅提升了系统的灵活性&#xff0c;还简化了对象的创建过程。本文将详细探讨工厂方法模式的核心概念、实现方式、应用场景以及与其他设计模式的对比&#xff0c;旨在提供一份全面且实用的指…

K8s 命令行工具

文章目录 K8s 命令行工具kubectl 工具在任意节点使用kubectl方式创建对象命令显示和查找资源更新资源修补资源编辑资源Scale 资源删除资源查看pod信息节点相关操作 K8s 命令行工具 在搭建集群的时候&#xff0c;我们通过yum 下载了kubeadm kubelet kubectl 三个命令行工具&…

通过本机调试远端路由器非直连路由

实验目的&#xff1a;如图拓扑&#xff0c;通过本机电脑发&#xff0c;telnet调试远程AR4设备。 重点1&#xff1a;通过ospf路由协议配置拓扑网络&#xff0c;知识点&#xff1a;ospf配置路由器协议语法格式&#xff0c;area区域的定义&#xff0c;区域内网络的配置&#xff0…

量子信息产业生态研究(一):关于《量子技术公司营销指南(2023)》的讨论

写在前面。量子行业媒体量子内参&#xff08;Quantum Insider&#xff09;编制的《量子技术公司营销指南》是一本实用的英文手册&#xff0c;它旨在帮助量子科技公司建立有效的营销策略&#xff0c;同时了解如何将自己定位成各自的行业专家。本文对这篇指南的主要内容进行了翻译…

4. Django 探究FBV视图

4. 探究FBV视图 视图(Views)是Django的MTV架构模式的V部分, 主要负责处理用户请求和生成相应的响应内容, 然后在页面或其他类型文档中显示. 也可以理解为视图是MVC架构里面的C部分(控制器), 主要处理功能和业务上的逻辑. 我们习惯使用视图函数处理HTTP请求, 即在视图里定义def…

react17+antd4 动态渲染导航菜单中的icon

在路由信息对照表中的icon可以有两种形式&#xff1a;一种是组件形式&#xff0c;一种是字符串形式的。 在antd4的Menu.Item和SubMenu中的icon属性的格式为&#xff1a; 1.组件形式 这种方法在渲染时很方便&#xff0c;与antd中的Menu.Item中的icon属性的形式是一致的&#…

微信小程序全屏开屏广告

效果图 代码 <template><view><!-- 自定义头部 --><u-navbar title" " :bgColor"bgColor"><view class"u-nav-slot" slot"left"><view class"leftCon"><view class"countDown…

MySQL-进阶篇-一条sql更新语句是如何执行的(redo log和binlog)

上一篇&#xff1a;一条sql查询语句是如何执行的 http://t.csdnimg.cn/nV3EY 摘自&#xff1a;林晓斌MySQL实战45讲——第二篇 更新语句的执行过程与上一篇查询流程相同&#xff0c;本篇简写。 但多了两个重要的日志模块&#xff1a;redo log&#xff08;重做日志&#xff0…

初学ELK - elk部署

一、简介 ELK是3个开源软件组合&#xff0c;分别是 Elasticsearch &#xff0c;Logstash&#xff0c;Kibana Elasticsearch &#xff1a;是个开源分布式搜索引擎&#xff0c;提供搜集、分析、存储数据三大功能。它的特点有&#xff1a;分布式&#xff0c;零配置&#xff0c;自…

《黑马点评》Redis高并发项目实战笔记(上)P1~P45

P1 Redis企业实战课程介绍 P2 短信登录 导入黑马点评项目 首先在数据库连接下新建一个数据库hmdp&#xff0c;然后右键hmdp下的表&#xff0c;选择运行SQL文件&#xff0c;然后指定运行文件hmdp.sql即可&#xff08;建议MySQL的版本在5.7及以上&#xff09;&#xff1a; 下面这…

MySQL——查询数据的处理

一、并列 连接两个数据列的值&#xff0c;并进行输出的格式化处理&#xff08;显示为一种统一的格式&#xff09; concat( 列 1 格式化字 符 ) mysql> select concat(vend_name, vend_country) from vendors; --------------------------------- | concat(vend_name, ve…

C++使用类

运算符重载 C允许将运算符重载扩展到用户定义的类型&#xff0c;C将会根据操作数的数目和类型来决定使用哪种操作&#xff0c;运算符重载的格式如下: operatorop(argumet-list) 即由关键字operator&#xff0c;运算符op&#xff0c;()里的参数列表三部分组成&#xff0c;op必…

C++---vector容器

是STL容器中的一种常用的容器&#xff0c;由于其大小(size)可变&#xff0c;常用于数组大小不可知的情况下来替代数组。vector容器与数组十分相似&#xff0c;被称为动态数组。时间复杂度为O&#xff08;1&#xff09;。 数组数据通常存储在栈中&#xff0c;vector数据通常存储…

napi系列学习进阶篇——NAPI生命周期

什么是NAPI的生命周期 我们都知道&#xff0c;程序的生命周期是指程序从启动&#xff0c;运行到最后的结束的整个过程。生命周期的管理自然是指控制程序的启动&#xff0c;调用以及结束的方法。 而NAPI中的生命周期又是怎样的呢&#xff1f;如下图所示&#xff1a; 从图上我们…

16、普通数组-除自身以外的数组乘积

思路 通过辅助数组的方式 第一个从左向右的辅助数组乘积第二次从右向左的辅助数组乘积对于0<i<N-1 他的数组乘积就是左边的数组乘积*右边数组乘积然后再分类讨论i0 就是右边1-N-1的数组乘积iN-1就是左边从N-2到0的数组乘积 代码如下&#xff1a; class Solution {pub…